{"action":"created","issue":{"url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/1333","repository_url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods","labels_url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/1333/labels{/name}","comments_url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/1333/comments","events_url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/1333/events","html_url":"https://github.com/RigsOfRods/rigs-of-rods/pull/1333","id":233738252,"number":1333,"title":"New GUI library: Dear IMGUI","user":{"login":"only-a-ptr","id":491088,"avatar_url":"https://avatars3.githubusercontent.com/u/491088?v=3","gravatar_id":"","url":"https://api.github.com/users/only-a-ptr","html_url":"https://github.com/only-a-ptr","followers_url":"https://api.github.com/users/only-a-ptr/followers","following_url":"https://api.github.com/users/only-a-ptr/following{/other_user}","gists_url":"https://api.github.com/users/only-a-ptr/gists{/gist_id}","starred_url":"https://api.github.com/users/only-a-ptr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/only-a-ptr/subscriptions","organizations_url":"https://api.github.com/users/only-a-ptr/orgs","repos_url":"https://api.github.com/users/only-a-ptr/repos","events_url":"https://api.github.com/users/only-a-ptr/events{/privacy}","received_events_url":"https://api.github.com/users/only-a-ptr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2017-06-05T23:23:50Z","updated_at":"2017-06-17T21:27:52Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/pulls/1333","html_url":"https://github.com/RigsOfRods/rigs-of-rods/pull/1333","diff_url":"https://github.com/RigsOfRods/rigs-of-rods/pull/1333.diff","patch_url":"https://github.com/RigsOfRods/rigs-of-rods/pull/1333.patch"},"body":"![imgui-preview](https://cloud.githubusercontent.com/assets/491088/26807439/b813f62c-4a56-11e7-8d2f-30b0adbeee6b.png)\r\n\r\nI want to drop our current library (MyGUI) and remake everything in [Dear IMGUI](https://github.com/ocornut/imgui) because:\r\n- Much less code! MyGUI requires terrible amount of boilerplate code to set up bindings with XML definitions. There's code generator, but you still have to deal with the code afterwards. And even if you create GUI in code, you need a lot of boilerplate for simple things like [X] close button on windows.\r\n- Automated layout! MyGUI does have a visual editor, but no layout tools - you need to position every single widget by hand. It gets very tiresome. With IMGUI, you just say \"show 3 buttons, separator, label and 2 more buttons\" and it's nicely laid out for you.\r\n- Professional looks! The GUI looks like Blender or some other professional-level software - by default! MyGUI's skin system is awful and undocumented - for years, RoR had been stuck with it's default skin, re-painted to (awful!) orange. The current skin by Max98 is orders of magnitude better, but it's still not very clean.\r\n- The GUI is actually capable! Just look at it's GitHub page's screenshots. All complex editor/diagnostic UIs! Graphs! Plots! MyGUI isn't really capable GUI system - even a multi-column selectable table (multiplayer lobby) was tricky. With RigEditor (unfinished, circa 2014), I ultimately gave up - MyGUI was slowing me down to a complete halt.\r\n- The GUI is fast and __fun__ to create!\r\n\r\nFor a demonstration, I remade the top menubar. The old one behaved weird and was bloated. UPDATE: Now it's complete, the vehicles menu was restored."},"comment":{"url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/comments/309241262","html_url":"https://github.com/RigsOfRods/rigs-of-rods/pull/1333#issuecomment-309241262","issue_url":"https://api.github.com/repos/RigsOfRods/rigs-of-rods/issues/1333","id":309241262,"user":{"login":"codacy-bot","id":19940114,"avatar_url":"https://avatars2.githubusercontent.com/u/19940114?v=3","gravatar_id":"","url":"https://api.github.com/users/codacy-bot","html_url":"https://github.com/codacy-bot","followers_url":"https://api.github.com/users/codacy-bot/followers","following_url":"https://api.github.com/users/codacy-bot/following{/other_user}","gists_url":"https://api.github.com/users/codacy-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/codacy-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codacy-bot/subscriptions","organizations_url":"https://api.github.com/users/codacy-bot/orgs","repos_url":"https://api.github.com/users/codacy-bot/repos","events_url":"https://api.github.com/users/codacy-bot/events{/privacy}","received_events_url":"https://api.github.com/users/codacy-bot/received_events","type":"User","site_admin":false},"created_at":"2017-06-17T21:27:52Z","updated_at":"2017-06-17T21:27:52Z","body":"\n![Codacy](https://www.codacy.com/assets/images/favicon.png) Here is an overview of what got changed by this pull request:\n\n\n```diff\n\nIssues\n======\n+ Solved 42\n- Added 21\n           \n```\n\n\nSee the complete overview on [Codacy](https://www.codacy.com/app/Rigs-of-Rods/rigs-of-rods/pullRequest?prid=692188&bid=4695831)\n        "}}
{"actor":{"display_login":"codacy-bot"}}