Commit Graph

34 Commits

Author SHA1 Message Date
Pietro Gagliardi 69cc823368 Added Button and Checkbox. 2015-12-12 15:52:43 -05:00
Pietro Gagliardi 155899c65e Out with the old... 2014-08-30 23:01:08 -04:00
Pietro Gagliardi 8a81650b3d Moved it all back; the preemptive multitaksing during an event handler kills us on all platforms. Going to have to restrict ALL GUI accss to happening from one t hread, so going to need to drop uitask entirely and have just a start() callback for startup code and a post() function for posting requests to windows (like channel sends but into a perpetual buffer). 2014-07-02 22:53:03 -04:00
Pietro Gagliardi 5d339e656b Moved everything out of the way pending rewrite. 2014-07-02 17:13:40 -04:00
Pietro Gagliardi ffa1bbe0b9 Restored the previous new API. I'm going to change it so that events are callbacks rather than using a window handler, but other than that... yeah. 2014-06-30 22:48:12 -04:00
Pietro Gagliardi 33155f7496 Reverted everything back to the old API. 2014-06-30 09:57:44 -04:00
Pietro Gagliardi ea6200a432 Began the migration to the new API. Removed locks from the public control APIs; they won't be needed anymore. 2014-06-28 01:05:06 -04:00
Pietro Gagliardi 098beef996 Added Checkbox.SetChecked() and implemented it on GTK+. 2014-06-26 21:36:46 -04:00
Pietro Gagliardi 1eeadc000a Made the new sizing system work on Windows. 2014-06-25 23:21:57 -04:00
Pietro Gagliardi 057f0eaf53 Migrated existing controls to the new sizing system. 2014-06-25 22:17:26 -04:00
Pietro Gagliardi 39f0c352fb Added the necessary work to make new regular Labels work on the other platforms. 2014-06-25 11:58:13 -04:00
Pietro Gagliardi 1e66637cd2 More go fmt. 2014-06-10 14:59:39 -04:00
Pietro Gagliardi c32e16fd83 Moved TODOs about new event signals to the future plans document. 2014-04-28 20:59:42 -04:00
Pietro Gagliardi 2647d28f2b Removed the initText parameter from sysData.make() and changed all invocations to call sysData.setText() separately; this avoids the need to check if sysData.setText() is valid. Also implemented that on GTK+. 2014-04-01 16:43:56 -04:00
Pietro Gagliardi 24342eb05d Restored the locks everywhere except on resizing calculations. I'll run under the assumption that uitask cannot process any requests while a resize occurs, which means preferredSize() and Stack/Grid.setRect() are inherently safe... let's hope I'm right... 2014-03-18 11:50:56 -04:00
Pietro Gagliardi 64d5eb541e Changed the new resizing code so that it uses the same allocated slice per window instead of making a new one to store all the resize requests each time. 2014-03-17 21:09:03 -04:00
Pietro Gagliardi 19227080da Changed window resizes so that the actual Control.setRect() functions appended to an array of requests that the resize() function set all at once instead of having each done individually. This will be necessary for what I think will be a solution to the deadlocks. It doesn't work right now; I'm assuming it's allocating too much memory. I know how to fix this, but I'm committing what I have so far to be safe. 2014-03-17 20:42:36 -04:00
Pietro Gagliardi 0e8680c04f Dumped the mutex locks from the other controls and elaborated/asked for help in the README. 2014-03-17 14:09:09 -04:00
Pietro Gagliardi 34ce16d586 Separated file creation dates from the package comment. 2014-03-12 21:55:45 -04:00
Pietro Gagliardi d07d0f481a Removed a TODO in Checkbox and made its behavior more precise. 2014-03-11 11:47:38 -04:00
Pietro Gagliardi a68bdec2fd Removed error returns from [all controls].SetText() and Window.SetTitle(). 2014-03-10 10:45:15 -04:00
Pietro Gagliardi ce571bad52 Removed error returns from Control.preferredSize() since errors are not going to be returned anymore. 2014-03-09 19:44:41 -04:00
Pietro Gagliardi 962a84e056 Fixed Mac OS X control placement flipping. This is done by passing the height of the window around setRect() calls to avoid polling the content view frame each time. 2014-03-03 17:44:03 -05:00
Pietro Gagliardi 53db57745f Added Control.preferredSize() and preferredSize() for all the standard Controls. 2014-02-24 10:56:35 -05:00
Pietro Gagliardi fb82e651a4 Moved to a proper package; main() is now a test and go test -c is used to build. Once I iron out a bug with Windows event handling, I'll add a README. 2014-02-19 11:41:10 -05:00
Pietro Gagliardi b1b05c2b1f Removed all //package ui comments. 2014-02-17 18:01:32 -05:00
Pietro Gagliardi 558c618fbf Gave all relevant controls matching SetText()/Text() pairs. Also added a TODO for Checkbox related to checked state. 2014-02-15 15:51:06 -05:00
Pietro Gagliardi d1768f2787 Reduced the number of unnecessary error returns based on MSDN. The TODOs that used to be there have been moved to a new file; similar files for Mac and Linux will also be made. 2014-02-15 13:36:24 -05:00
Pietro Gagliardi 99feed7628 Removed setting the initial width and height in sysData.make() (this gets rid of the dummy 300x300 sizes from the controls) and added an explicit sysData.setWindowSize() to Window.Open() to ensure everything's sized properly. 2014-02-15 13:07:46 -05:00
Pietro Gagliardi 168b6eb112 Handled all controls's created field. 2014-02-14 20:41:36 -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 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