{"action":"opened","issue":{"url":"https://api.github.com/repos/stlab/adobe_platform_libraries/issues/6","labels_url":"https://api.github.com/repos/stlab/adobe_platform_libraries/issues/6/labels{/name}","comments_url":"https://api.github.com/repos/stlab/adobe_platform_libraries/issues/6/comments","events_url":"https://api.github.com/repos/stlab/adobe_platform_libraries/issues/6/events","html_url":"https://github.com/stlab/adobe_platform_libraries/issues/6","id":118604859,"number":6,"title":"Usage of Placeable concept in Eve layout code","user":{"login":"ilelann","id":580426,"avatar_url":"https://avatars.githubusercontent.com/u/580426?v=3","gravatar_id":"","url":"https://api.github.com/users/ilelann","html_url":"https://github.com/ilelann","followers_url":"https://api.github.com/users/ilelann/followers","following_url":"https://api.github.com/users/ilelann/following{/other_user}","gists_url":"https://api.github.com/users/ilelann/gists{/gist_id}","starred_url":"https://api.github.com/users/ilelann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ilelann/subscriptions","organizations_url":"https://api.github.com/users/ilelann/orgs","repos_url":"https://api.github.com/users/ilelann/repos","events_url":"https://api.github.com/users/ilelann/events{/privacy}","received_events_url":"https://api.github.com/users/ilelann/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-11-24T13:07:08Z","updated_at":"2015-11-24T13:07:08Z","closed_at":null,"body":"Some context : Linux Support  https://github.com/stlab/adobe_source_libraries/issues/33\r\n\r\nIn my work to implement a [GTK backend](https://github.com/ilelann/adobe_platform_libraries/tree/gtk)  I completely skipped for now the placeable concept. I provided [no-op measure/place method](https://github.com/ilelann/adobe_platform_libraries/blob/gtk/backend/template/adobe/future/widgets/templates/widget_base.hpp#L23).\r\nIt works, with bugs to solve, but layout is skipped and thus dialogs sometimes look ugly.\r\nI see two options to fix this :\r\n  - implement placeable \r\n  - skip eve layout code and instead forward layout information directly to GTK \r\n\r\nFrom what I saw in windows backend, it takes quite an effort, and many magic numbers, to implement measure for each widget. See [this](https://github.com/stlab/adobe_platform_libraries/blob/master/windows/adobe/future/widgets/sources/platform_label.cpp#L85)  or [this](https://github.com/stlab/adobe_platform_libraries/blob/master/windows/adobe/future/widgets/sources/platform_group.cpp#L102) for example.\r\n\r\nI will try to find out how to write similar code for GTK but I have to admit that, lazy as I am, forwarding to backend seems a far better idea at this point. I haven't really dug how to do that, but I guess that would be something like introducing a \"Layoutable\" concept, used in an alternate eve.cpp file. \r\n\r\nThoughts ? Am I missing something about placeable concept usage in Eve ?\r\n\r\nRegards,\r\nIvan\r\n"}}