Commit Graph

81 Commits

Author SHA1 Message Date
Pietro Gagliardi fef91d9820 "Fixed" initial Windows window shows for now (see previous commit). Not yet a clean fix; need to test some things on real Windows first. 2015-04-08 20:53:34 -04:00
Pietro Gagliardi 87bb732832 Fixed flicker and minimize issues on Windows. Simple mistake; should have used WM_WINDOWPOSCHANGED instead of WM_WINDOWPOSCHANGING. Startup looks wrong; will fix that next. 2015-04-08 20:37:32 -04:00
Pietro Gagliardi 47723aa8d9 More TODO resolution. 2015-04-08 20:14:10 -04:00
Pietro Gagliardi 7d349d6a28 More TODO resolution. 2015-04-08 20:01:33 -04:00
Pietro Gagliardi 317217de5a Decided not to take the suggestions of some TODOs in ui.h. 2015-04-08 19:53:15 -04:00
Pietro Gagliardi cbc0403e6a Removed some stale TODOs. 2015-04-08 19:22:13 -04:00
Pietro Gagliardi 410378b451 And implemented proper control showing on Mac OS X. 2015-04-08 19:14:22 -04:00
Pietro Gagliardi 7c2a32fec6 Implemented the parent updating logic on GTK+. 2015-04-08 18:58:59 -04:00
Pietro Gagliardi c1c78b5aeb More TODOs. 2015-04-08 18:32:32 -04:00
Pietro Gagliardi 06c2bb7c25 Fixed initial (and future) window redraw issues on Windows. 2015-04-08 18:04:46 -04:00
Pietro Gagliardi 7b104667ab More TODO resolution. 2015-04-08 17:19:44 -04:00
Pietro Gagliardi ec070204a5 More TODO resolving. More TODOs. 2015-04-08 17:08:25 -04:00
Pietro Gagliardi a97c9297c3 Removed a stale TODO. 2015-04-08 16:35:03 -04:00
Pietro Gagliardi 6d7140160b Decided not to turn new control scrolling parameters into a bitfield. 2015-04-08 16:27:45 -04:00
Pietro Gagliardi abf976ef44 Removed the need for specifying if a GTK+ widget needs to be in a GtkViewport for it to be scrollable; the new control code finds out itself now in the same way newer versions of GTK+ do. 2015-04-08 16:24:11 -04:00
Pietro Gagliardi 090977fa0a Cleaned up window_darwin.m's data structure juggling. 2015-04-08 16:04:27 -04:00
Pietro Gagliardi bb229f9dc1 Built up a better system for handling data cleanup on Mac OS X; thanks to http://stackoverflow.com/questions/29522715/is-there-a-reliable-way-to-destroy-private-data-structures-when-a-standard-nsvie. 2015-04-08 15:53:50 -04:00
Pietro Gagliardi 25b33c2afd More TODOs. 2015-04-08 05:13:38 -04:00
Pietro Gagliardi ab393ed6b2 Fixed compilation errors. Hm, nothing is still freed... 2015-04-08 04:48:03 -04:00
Pietro Gagliardi a850ea3ac5 Cleaned up the uiWindow Darwin implementation. Let's try this again... 2015-04-08 04:38:34 -04:00
Pietro Gagliardi 941825e190 Cleaned out some of that gunk. I can't avoid subclassing the standard controls, but making it so that the uiControl returned by uiDarwinNewControl() can be freed by the caller will help. 2015-04-08 04:35:50 -04:00
Pietro Gagliardi 4ab6251449 Wrote up cleanup gunk on Mac OS X. Really gunk; I don't like what all this does but I don't think there's another way. 2015-04-08 03:38:08 -04:00
Pietro Gagliardi 5597606f18 Better monitoring of Objective-C objects (including main GUI objects). 2015-04-08 02:28:42 -04:00
Pietro Gagliardi d37bc67158 Cleaned up memory leaks in the GTK+ backend. 2015-04-08 01:16:22 -04:00
Pietro Gagliardi f5c8bdd4b3 Finished Windows cleanup management. Everything (almost, only parentWindow is still around, but that shouldn't be a uiWindow to begin with) now cleaned! 2015-04-08 00:51:50 -04:00
Pietro Gagliardi 54e947eed3 Started work on ensuring things get cleaned up. Added a destroy() method to uiControl and implemented most of the work for Windows. 2015-04-08 00:43:35 -04:00
Pietro Gagliardi 521829a0a6 Added allocation logging to Objective-C objects. Fixed some Mac OS X build issues. 2015-04-08 00:27:03 -04:00
Pietro Gagliardi 1d828c8deb Added an awk script to check for leaks in the memory logging output we just added. 2015-04-07 23:53:10 -04:00
Pietro Gagliardi 66788e6edb Implemented the memory logging. 2015-04-07 23:40:18 -04:00
Pietro Gagliardi 49ee58ca36 Decided to remove the logging for now. Will inject it right into the allocation system later. 2015-04-07 22:58:06 -04:00
Pietro Gagliardi 3fc36ec582 More allocation logging. I wonder if I can just log directly in the allocators themselves... 2015-04-07 22:54:21 -04:00
Pietro Gagliardi 33b1c29de8 More TODO cleanup. 2015-04-07 22:48:02 -04:00
Pietro Gagliardi 1e263930eb Started working on code to monitor creation and deletion of UI objects correctly. 2015-04-07 22:46:15 -04:00
Pietro Gagliardi c6daf8d308 Added WS_TABSTOP to uiButton on Windows. 2015-04-07 22:23:25 -04:00
Pietro Gagliardi 002d95c2c2 Resolved a bunch of TODOs. Added one. 2015-04-07 22:19:24 -04:00
Pietro Gagliardi 5719004a97 Added loading of the standard user32.dll class replacements to comctl32_windows.c. 2015-04-07 22:01:42 -04:00
Pietro Gagliardi c4fa92e18f Decided to remove containerShow() and containerHide() for now. 2015-04-07 21:05:47 -04:00
Pietro Gagliardi 1bb187d55b Implemented new control preferredSize() on Mac OS X. Now that Stack works everywhere, I can resolve TODOs. 2015-04-07 20:28:28 -04:00
Pietro Gagliardi 89643f70f7 Changed the GTK+ new control system from using g_object_newv() to using g_object_new_valist() due to weird crashes. 2015-04-07 19:47:44 -04:00
Pietro Gagliardi 12021269b7 Fixed compiler warnings. Stack works! 2015-04-07 19:36:46 -04:00
Pietro Gagliardi 42204af086 Implemented uiButton.preferredSize() on Windows. This includes adding a function to get the width of text in a control. 2015-04-07 19:32:16 -04:00
Pietro Gagliardi 38eecd3fc3 Wrote in the Stack test. The only thing left is to implement uiButton.preferredSize()... 2015-04-07 19:11:21 -04:00
Pietro Gagliardi ec332870c2 Fixed compilation errors. 2015-04-07 19:08:39 -04:00
Pietro Gagliardi 7b1dfbf1d6 Unified the allocators across all platforms so that everyone uses uiAlloc() and friends. 2015-04-07 19:04:09 -04:00
Pietro Gagliardi 03d94db0fd Added uiStack. Not yet tested; need to do a few things first. 2015-04-07 18:53:09 -04:00
Pietro Gagliardi d9de0c186c More TODOs. 2015-04-07 16:59:23 -04:00
Pietro Gagliardi 77a60d63a6 Fixed compiler errors and bugs. uiButton on Mac OS X works! 2015-04-07 16:38:51 -04:00
Pietro Gagliardi 3969095a33 Implemented uiButton on Mac OS X. Now to fix build issues and test... 2015-04-07 16:12:28 -04:00
Pietro Gagliardi 96e25cf502 Added the Mac OS X uiContainer. Added it to uiWindow. Added the Mac OS X coordinate system mirroring to the new control logic. Renamed *_darwin.c to *_darwin.m. 2015-04-07 15:45:56 -04:00
Pietro Gagliardi a013fe6384 Added the uiDarwinControl logic. 2015-04-07 14:42:52 -04:00