{"action":"created","issue":{"url":"https://api.github.com/repos/adventuregamestudio/ags/issues/404","repository_url":"https://api.github.com/repos/adventuregamestudio/ags","labels_url":"https://api.github.com/repos/adventuregamestudio/ags/issues/404/labels{/name}","comments_url":"https://api.github.com/repos/adventuregamestudio/ags/issues/404/comments","events_url":"https://api.github.com/repos/adventuregamestudio/ags/issues/404/events","html_url":"https://github.com/adventuregamestudio/ags/pull/404","id":224648435,"number":404,"title":"Refactor GUI Control classes","user":{"login":"ivan-mogilko","id":1833754,"avatar_url":"https://avatars3.githubusercontent.com/u/1833754?v=3","gravatar_id":"","url":"https://api.github.com/users/ivan-mogilko","html_url":"https://github.com/ivan-mogilko","followers_url":"https://api.github.com/users/ivan-mogilko/followers","following_url":"https://api.github.com/users/ivan-mogilko/following{/other_user}","gists_url":"https://api.github.com/users/ivan-mogilko/gists{/gist_id}","starred_url":"https://api.github.com/users/ivan-mogilko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivan-mogilko/subscriptions","organizations_url":"https://api.github.com/users/ivan-mogilko/orgs","repos_url":"https://api.github.com/users/ivan-mogilko/repos","events_url":"https://api.github.com/users/ivan-mogilko/events{/privacy}","received_events_url":"https://api.github.com/users/ivan-mogilko/received_events","type":"User","site_admin":false},"labels":[{"id":258216669,"url":"https://api.github.com/repos/adventuregamestudio/ags/labels/pull:%20under%20review","name":"pull: under review","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2017-04-27T02:05:19Z","updated_at":"2017-04-28T21:30:02Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/adventuregamestudio/ags/pulls/404","html_url":"https://github.com/adventuregamestudio/ags/pull/404","diff_url":"https://github.com/adventuregamestudio/ags/pull/404.diff","patch_url":"https://github.com/adventuregamestudio/ags/pull/404.patch"},"body":"I am awfully sorry for doing this (sort of), but it was too hard to \"let it go\" when you have an almost ready piece of work that took you many days to do. So, I decided to recreate the (almost 2 years old) branch which refactors GUI Control classes.\r\n\r\nLuckily, there were only several conflicts to resolve (the related code did not change much since the old branch was first made), and I found and fixed only couple of minor mistakes so far.\r\n\r\nAs this is refactoring, the new code is supposed to be functionally similar to an old one. Classes are tidied, and brought to general code style; some optimization is done along the way.\r\n\r\nNotable addition is an introduction of generic FrameAlignment flags which substitute varied alignment types in Buttons, Labels and ListBox.\r\n\r\nThe code in this branch was written with the idea to keep compatibility in all known ways; but I guess it won't be hard to remove if wanted. (Adjustments to how Editor saves GUI would be required too in such case)"},"comment":{"url":"https://api.github.com/repos/adventuregamestudio/ags/issues/comments/298111229","html_url":"https://github.com/adventuregamestudio/ags/pull/404#issuecomment-298111229","issue_url":"https://api.github.com/repos/adventuregamestudio/ags/issues/404","id":298111229,"user":{"login":"ivan-mogilko","id":1833754,"avatar_url":"https://avatars3.githubusercontent.com/u/1833754?v=3","gravatar_id":"","url":"https://api.github.com/users/ivan-mogilko","html_url":"https://github.com/ivan-mogilko","followers_url":"https://api.github.com/users/ivan-mogilko/followers","following_url":"https://api.github.com/users/ivan-mogilko/following{/other_user}","gists_url":"https://api.github.com/users/ivan-mogilko/gists{/gist_id}","starred_url":"https://api.github.com/users/ivan-mogilko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivan-mogilko/subscriptions","organizations_url":"https://api.github.com/users/ivan-mogilko/orgs","repos_url":"https://api.github.com/users/ivan-mogilko/repos","events_url":"https://api.github.com/users/ivan-mogilko/events{/privacy}","received_events_url":"https://api.github.com/users/ivan-mogilko/received_events","type":"User","site_admin":false},"created_at":"2017-04-28T21:30:02Z","updated_at":"2017-04-28T21:30:02Z","body":"Updated:\r\n* Fixed button serialization\r\n* Fixed list box serialization when savedgames are filled into it.\r\n* Fixed graphic buttons with unremoved \"New Button\" text still displaying it in some cases (AGS has a compatibility requirement that this text is not displayed for graphic buttons).\r\n* Corrected code style for non-public member variables.\r\n\r\nAlso, I realized that we cannot change alignment properties right away without also changing them in Editor, and hence modifying data format. So I made the conversion into generic type to be performed at the moment of drawing, and added TODO notes in engine and editor, suggesting moving to universal text alignment type for all GUI controls.\r\n"}}
{"actor":{"display_login":"ivan-mogilko"}}