Commit Graph

1141 Commits

Author SHA1 Message Date
Pietro Gagliardi ffe90eb659 Added scrollbars to Listbox. 2014-02-14 22:10:35 -05:00
Pietro Gagliardi 6f819f60d8 More TODOs. 2014-02-14 20:42:26 -05:00
Pietro Gagliardi 168b6eb112 Handled all controls's created field. 2014-02-14 20:41:36 -05:00
Pietro Gagliardi 7d80fdd0f1 More TODOs. 2014-02-14 17:32:44 -05:00
Pietro Gagliardi 32256074b5 More TODOs and example program tweaks. 2014-02-14 17:31:21 -05:00
Pietro Gagliardi 88646445b0 Added Listboxes. You can't use the results just yet... 2014-02-14 16:25:39 -05:00
Pietro Gagliardi 61d7f285ac Renamed sysData.editable to sysData.alternate in preparation for ListBox. 2014-02-14 15:54:56 -05:00
Pietro Gagliardi 9070eae214 Added labels. 2014-02-14 15:12:03 -05:00
Pietro Gagliardi 681afdf0ad Added LineEdit. 2014-02-14 15:00:59 -05:00
Pietro Gagliardi fbba8a581c More TODOs. 2014-02-14 12:18:21 -05:00
Pietro Gagliardi 09f6ec4a66 Now that we have sysData.text() we no longer need the getText() that needed to be migrated. 2014-02-14 12:17:21 -05:00
Pietro Gagliardi 39442cefeb Added Combobox. 2014-02-14 12:16:27 -05:00
Pietro Gagliardi 9403224eb0 Windows no longer need to be Controls after I reworked the parent-child system so that children do not need ot know what their parents are. 2014-02-14 11:13:10 -05:00
Pietro Gagliardi 80f43a613a Renamed Control.apply() to Control.make(). 2014-02-14 11:12:08 -05:00
Pietro Gagliardi 8407bfb0cb Changed manual sysData construction to use a helper function instead. 2014-02-14 11:02:59 -05:00
Pietro Gagliardi 9a4e7bf5eb Changed Stack so that controls are added only at creation time. 2014-02-14 10:58:16 -05:00
Pietro Gagliardi 5436f8f5fa Added Stacks of controls. 2014-02-13 17:04:57 -05:00
Pietro Gagliardi 44842fea4b Added Checkbox.Checked(). 2014-02-13 15:14:10 -05:00
Pietro Gagliardi f3c77bda6e Added checkboxes. You can't really do anything with them yet, though... 2014-02-13 12:26:43 -05:00
Pietro Gagliardi c36c863fe1 Adjusted bookkeeping notes for the now-implemented sizing code. 2014-02-13 11:46:41 -05:00
Pietro Gagliardi 91113a32bf Removed Control.setParent() as the parent/child hierarchy is now unidirectional. 2014-02-13 11:45:10 -05:00
Pietro Gagliardi a400ec6666 Fixed the resizing deadlock. 2014-02-13 11:42:21 -05:00
Pietro Gagliardi 5626b9e35c Added sizing of windows and the main window control. It presently deadlocks; I'll need to redo my mutexes... 2014-02-13 05:28:26 -05:00
Pietro Gagliardi ae9afced2a Added a reminder/TODO related to why I needed to do all that (add resizing). 2014-02-12 21:37:24 -05:00
Pietro Gagliardi 3d2df2334e Fixed compiler errors. New code structure success! 2014-02-12 21:33:24 -05:00
Pietro Gagliardi 8e2f3b136e Adjusted sysData.make() to make the new window class and fixed main(). Now to fix compiler errors... 2014-02-12 21:28:58 -05:00
Pietro Gagliardi 40dc20be0d Whoops, forgot to turn Button.sysData.clicked into Button.sysData.event. 2014-02-12 21:26:18 -05:00
Pietro Gagliardi 5bc4c49afa Modified Button for the new changes. Now I just need to actually create the window class and edit main()... 2014-02-12 21:25:25 -05:00
Pietro Gagliardi 942490e1aa Adjusted Control and Window for the new system. 2014-02-12 21:23:53 -05:00
Pietro Gagliardi 403ca88316 Whoops, class registration now has to go through the UI task. 2014-02-12 21:11:21 -05:00
Pietro Gagliardi bccbc45bcf The past few commits mean we no longer need to do reverse sysData lookup, so get rid of that. 2014-02-12 21:09:28 -05:00
Pietro Gagliardi 3dcbb3920d Windows sysData has been adjusted to deal with child controls. Rather than storing the parent window, it is passed as an argument to sysData.make(), which does the child ID allocation. Child IDs are now window-local, getting rid of that restriction. 2014-02-12 21:08:10 -05:00
Pietro Gagliardi e296398eff Formatting change for cSysData itself. 2014-02-12 20:57:30 -05:00
Pietro Gagliardi 98d56767a3 Each control may only need one event, so combine them all into a single channel whose use depends on the sysData itself. Also we won't need to save the parentWindow anymore, as the change to the make() function will take care of that for us. 2014-02-12 20:55:05 -05:00
Pietro Gagliardi 4b16716e61 Restructuring the codebase to make things neater. First off: each window now has its own class; the sysData knows about children. This updates the window class to become a generator and rewrites the WndProc as well. 2014-02-12 20:51:07 -05:00
Pietro Gagliardi a9ff388944 Added Window.SetTitle(). Also oops, forgot to mark the window as created. 2014-02-12 18:14:37 -05:00
Pietro Gagliardi 0a9f408129 More TODOs... this time about crashes... oh boy... 2014-02-12 14:15:09 -05:00
Pietro Gagliardi a272436ee6 Whoops, forgot to add button.go itself :| 2014-02-12 13:52:34 -05:00
Pietro Gagliardi da92dd55bd Even more TODOs. 2014-02-12 11:34:36 -05:00
Pietro Gagliardi d3dace0c06 More TODOs. 2014-02-12 11:34:10 -05:00
Pietro Gagliardi 5f587fbf47 Added button events. 2014-02-12 11:32:17 -05:00
Pietro Gagliardi ddfb5c7603 Added buttons. 2014-02-12 11:29:20 -05:00
Pietro Gagliardi 87a99bd675 More TODOs. 2014-02-12 10:58:05 -05:00
Pietro Gagliardi 33a32c4cda Added a TODO list. 2014-02-12 10:54:58 -05:00
Pietro Gagliardi 49d0375975 Added initial window size and the Window.SetTitle() function. 2014-02-12 10:51:27 -05:00
Pietro Gagliardi 3f8fe0e710 Separated initial text from sysData and fixed errors in the previous commits. 2014-02-12 10:43:57 -05:00
Pietro Gagliardi f93bebfeec Added control ID generation. 2014-02-12 10:35:15 -05:00
Pietro Gagliardi e9e2c0f269 Set up restrictions tracking. Added a restriction that a window and its controls are fixed to the window once it has been open. Started accounting for parent windows in controls. 2014-02-12 10:29:56 -05:00
Pietro Gagliardi 0f373195de Changed the sysData cache so that if we didn't fill it in yet, getSysData() returns nil instead of panicking, and the standard window procedure jumps directly to the default handler. Not what I originally wanted to do, but whatever, it finally works! 2014-02-11 22:41:55 -05:00
Pietro Gagliardi 6da43e8bb7 Fixed the PeekMessage() call as per http://blogs.msdn.com/b/oldnewthing/archive/2006/02/10/529525.aspx 2014-02-11 22:38:46 -05:00