Commit Graph

471 Commits

Author SHA1 Message Date
Pietro Gagliardi bd51e3e9a7 Got rid of my Windows input lag problems on Windows (triggered by the switch to the concurrent garbage collector sweep routine in the Go runtime) by treating <-uitask as a Windows message itself posted to the message loop thread and not making the message loop a CPU waster. 2014-02-19 22:59:48 -05:00
Pietro Gagliardi 43dd5121b2 More README updates. 2014-02-19 12:47:44 -05:00
Pietro Gagliardi 3284f6c4f4 Updated README to package-ize. 2014-02-19 11:58:52 -05:00
Pietro Gagliardi 4fe6ccce97 Super ultra important TODO related to previous two commits. 2014-02-19 11:57:18 -05:00
Pietro Gagliardi fb5c789fc4 ...and now it magically works again?! after too long, anyway... 2014-02-19 11:56:46 -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 c02948847e Missed a ui. in the README example code. 2014-02-18 16:12:38 -05:00
Pietro Gagliardi 24f73c666b More README adjustments. 2014-02-18 16:05:06 -05:00
Pietro Gagliardi 8d7cd85111 Expanded the README. 2014-02-18 16:02:43 -05:00
Pietro Gagliardi 647b69a3bb Fixed the faults: upon further examination, the garbage collector was eating the callback closures! 2014-02-18 14:22:31 -05:00
Pietro Gagliardi 23f6a07c7f Buffered the event channels, as per skelterjohn's suggestion; I thought this would fix the faults I now get, but it doesn't... 2014-02-18 10:53:15 -05:00
Pietro Gagliardi 1f08c874e0 Made event dispatch asynchronous to avoid deadlocks; right now events that cannot be dispatched get dropped. 2014-02-18 09:57:19 -05:00
Pietro Gagliardi 16ab1763ba Added license and README. 2014-02-17 18:38:50 -05:00
Pietro Gagliardi b1b05c2b1f Removed all //package ui comments. 2014-02-17 18:01:32 -05:00
Pietro Gagliardi 96de0c712e Moved the old Windows main() to unmigrated/; may wind up deleting it instead. 2014-02-17 17:39:51 -05:00
Pietro Gagliardi 4363d74c96 Wrote an implementation guide. 2014-02-17 17:38:52 -05:00
Pietro Gagliardi 66045ee876 Simplified the GTK+ Listbox code and added a documentation blob to it. 2014-02-17 16:19:00 -05:00
Pietro Gagliardi e7d280e5e1 Split the GTK+ ListBox implementation into its own file. 2014-02-17 15:49:02 -05:00
Pietro Gagliardi c92a370f08 Isolated all the non-listbox-related GTK+ type conversions into their own file with functions to reduce the amount of code noise in gtkcalls_unix.go. 2014-02-17 15:45:26 -05:00
Pietro Gagliardi e395ea105b Whoops, the GList returned by gtk_tree_selection_get_selected_rows contains GtkTreePaths, not GtkTreeRowReferences. Fixed the index getting. 2014-02-17 07:32:04 -05:00
Pietro Gagliardi 24049d8324 Separated GTK+ listbox index retreival and dereferencing, just to be safe/to allow easier debugging. 2014-02-17 03:10:07 -05:00
Pietro Gagliardi 00abb00e8b More TODOs. 2014-02-17 02:55:59 -05:00
Pietro Gagliardi fd86aa55c8 Added GTK+ message boxes. 2014-02-17 02:54:58 -05:00
Pietro Gagliardi 316e5e9db4 Split out the dialog functions into portable and non-portable code to keep the package documentation in the portable code only. 2014-02-17 02:34:58 -05:00
Pietro Gagliardi 56923d0bda Added scrollbars to the Listbox GtkTreeViews. 2014-02-17 02:29:49 -05:00
Pietro Gagliardi 7617fe6d42 Okay, fixed item showing; the GtkTableView column just needed the text attribute. Now I need scrollbars... 2014-02-17 02:18:42 -05:00
Pietro Gagliardi a018dabde9 Fixed GTK+ listboxes to create item cells and not show headers; still not displaying item text... 2014-02-17 02:16:33 -05:00
Pietro Gagliardi 0595135d9a Fixed the GTK+ crashes (I think) by making resizes synchronous. Since all control resizes happen on the UI thread anyway, we don't need to dispatch back; just call the resizing functions directly. Windows gets this fix too for consistency (and also because it gets rid of the only asynchronous oddity in the system). 2014-02-17 01:40:53 -05:00
Pietro Gagliardi 0856e953be Added GTK+ listboxes... sort of. This whole thing is so broken it's funny. 2014-02-16 23:50:54 -05:00
Pietro Gagliardi 919e89ca7e Added GTK+ Labels. 2014-02-16 22:03:14 -05:00
Pietro Gagliardi d7f9d3807d Fixed layout failure... for now. 2014-02-16 21:50:55 -05:00
Pietro Gagliardi 6bf0b00aa3 Added GTK+ LineEdit. It appears there's something weird happening now... 2014-02-16 21:40:59 -05:00
Pietro Gagliardi bce4c19fdd Added alternate control style building... mostly... 2014-02-16 20:27:16 -05:00
Pietro Gagliardi a302590ee0 Added crash guard for making alternates (to get editable comboboxes). 2014-02-16 20:09:51 -05:00
Pietro Gagliardi 5ac0af8d79 ...derp, it was my crash guard failing. 2014-02-16 20:07:10 -05:00
Pietro Gagliardi ee23690f79 Added GTK+ comboboxes. ...and THESE aren't being positioned properly, sigh... 2014-02-16 19:50:52 -05:00
Pietro Gagliardi 13d4e1d258 Added the GTK+ equivalent of Window.Title() and Button.Text() in preparation for adding the GTK+ implementation of Combobox. 2014-02-16 18:57:50 -05:00
Pietro Gagliardi 161e874d8a More GTK+ weird behavior TODOs. 2014-02-16 18:42:18 -05:00
Pietro Gagliardi 4fc3cb1d00 Added Checkbox to GTK+. Also added a TODO about crashes. 2014-02-16 18:41:29 -05:00
Pietro Gagliardi b8f7f4aa6e Removed some debugging prints. 2014-02-16 18:06:45 -05:00
Pietro Gagliardi 622d7b1569 Added window (and thus control) resizing. Other bugs have been fixed along the way. 2014-02-16 18:04:57 -05:00
Pietro Gagliardi 7c365b3920 [GTK+] Added buttons. Things aren't quite being positioned properly yet though... 2014-02-16 17:30:58 -05:00
Pietro Gagliardi 1bcbce4142 Cleaned up the idle callback code. 2014-02-16 17:09:58 -05:00
Pietro Gagliardi f5652737eb More TODOs. 2014-02-16 16:56:25 -05:00
Pietro Gagliardi efbd52848b Added version compatibility notes to plan.md. 2014-02-16 16:55:48 -05:00
Pietro Gagliardi 7a99d42d65 Added cgo-safe callback code for GTK+ signals. GTK+ signals work! 2014-02-16 16:43:48 -05:00
Pietro Gagliardi c40b7b5599 Added basic signal connection. I'm going to need to build a different callback system, though... 2014-02-16 16:23:49 -05:00
Pietro Gagliardi 21c1ec6f83 Added the beginning of the Unix (GTK+) implementation. 2014-02-16 15:55:51 -05:00
Pietro Gagliardi 3a99ee6569 Removed stray TODO left over from copy/paste. 2014-02-15 18:43:49 -05:00
Pietro Gagliardi 992d43ac7b Added Listbox.Selection() and Listbox.SelectedIndices(). Also fixed a bug involving sysData.selectedIndices() with nothing selected. 2014-02-15 18:36:42 -05:00