Pietro Gagliardi
|
bccfde2c34
|
Started re-adding Area to the Windows backend: ported the existing code to C.
|
2014-08-05 12:05:43 -04:00 |
Pietro Gagliardi
|
c1055ae278
|
Resolved Mac app bundle startup issues.
|
2014-08-05 08:23:16 -04:00 |
Pietro Gagliardi
|
b46167f1e2
|
Fixed up the implementation of Area on GTK+ and the Area test. Seems to be fine, though for some reason holding down a mouse button doesn't generate a drag in GTK+ 3.10...
|
2014-08-05 00:34:24 -04:00 |
Pietro Gagliardi
|
3e25992f09
|
Some slight Area cleanup.
|
2014-08-04 23:32:59 -04:00 |
Pietro Gagliardi
|
28764445b9
|
Re-added Area on the GTK+ backend. Not yet working; need to reconnect signals.
|
2014-08-04 23:31:11 -04:00 |
Pietro Gagliardi
|
95151ce6ea
|
Re-added the events files for Area.
|
2014-08-04 23:05:31 -04:00 |
Pietro Gagliardi
|
f035792c1d
|
Re-added area.go. This is the start of re-adding Area.
|
2014-08-04 22:29:39 -04:00 |
Pietro Gagliardi
|
515a605dda
|
Same as three commits ago, but for the GTK+ backend.
|
2014-08-04 22:21:58 -04:00 |
Pietro Gagliardi
|
b84cdaf077
|
More TODOs.
|
2014-08-04 21:41:42 -04:00 |
Pietro Gagliardi
|
12f7c691d3
|
Same as previous commit, but for showing and hiding containers on Windows.
|
2014-08-04 21:33:58 -04:00 |
Pietro Gagliardi
|
95815841aa
|
Merged cases of C.moveWindow() on Windows containers to one place (container_windows.go) as a method on container.
|
2014-08-04 21:27:35 -04:00 |
Pietro Gagliardi
|
4606f5c2ee
|
Decided to keep tab textures on Windows.
|
2014-08-04 21:22:43 -04:00 |
Pietro Gagliardi
|
23baffe55e
|
Applied the container change to the GTK+ backend. Woo!
|
2014-08-04 21:08:18 -04:00 |
Pietro Gagliardi
|
91f1a34003
|
Re-added base units calculation to the resizing code now that container stores a HWND again.
|
2014-08-04 20:10:23 -04:00 |
Pietro Gagliardi
|
ef513c4337
|
Completed the migration of the Windows backend to the new container system.
|
2014-08-04 20:04:16 -04:00 |
Pietro Gagliardi
|
9ed4ec5259
|
Split layout and Window on Windows to use two separate window classes. This is the first half of the two-part migration of the Windows backend to use container.
|
2014-08-04 19:46:49 -04:00 |
Pietro Gagliardi
|
88c01bf695
|
Began the big sizer cleanup: renamed sizer to container, renamed sizer.go to container.go, did the Mac OS X migration, moved containerctrls.go out of the way by merging its declarations into basicctrls.go, and did a quick cleanup fix to container_darwin.m.
|
2014-08-04 17:47:39 -04:00 |
Pietro Gagliardi
|
74e2214f43
|
Fixed the broken Mac OS X build and removed some leftover debugging cruft.
|
2014-08-04 17:33:13 -04:00 |
Pietro Gagliardi
|
caa64a3dbe
|
Added a credit I missed two commits ago.
|
2014-08-04 17:31:43 -04:00 |
Pietro Gagliardi
|
c33786ab96
|
Fixed an error in the previous commit.
|
2014-08-04 17:30:18 -04:00 |
Pietro Gagliardi
|
6010665415
|
Converted Window on Mac OS X to use the new container system. Now I can merge container and sizing...
|
2014-08-04 17:28:53 -04:00 |
Pietro Gagliardi
|
84297ad7e1
|
Cleaned up Mac OS X Tab code from the previous commit.
|
2014-08-04 17:07:06 -04:00 |
Pietro Gagliardi
|
1ba1f475ba
|
Switched Tab on Mac OS X to use a dedicated container type system. This container type will eventually be the new home of all the sizer stuff. Now to remove the dedicated NSTabView stuff...
|
2014-08-04 17:03:07 -04:00 |
Pietro Gagliardi
|
39a2414cf9
|
Fixed a small error that caused clicking a Checkbox to crash on Mac OS X.
|
2014-08-04 13:44:48 -04:00 |
Pietro Gagliardi
|
0ac40be173
|
Removed Control.containerShow() and Control.containerHide() and the overall ability to show and hide Controls in general; too much effort to get right.
|
2014-08-04 13:39:33 -04:00 |
Pietro Gagliardi
|
0496cf77b5
|
Changed Tab on Windows to store each control in a *layout (see previous commit). Now I can throw out containerShow()/containerHide()/Show()/Hide(). This also will let me do the right thing with sizer and dialog base units again, and even get rid of sizer's confusion once and for all!
|
2014-08-04 13:13:59 -04:00 |
Pietro Gagliardi
|
950548563d
|
Split apart the Windows Window code so that the same window class can be used for both top-level windows and tab pages (next commit). This makes things slightly messy in the short term, but this will all be cleaned up soon, and has the advantage of taking care of the sizer mess~
|
2014-08-04 11:05:39 -04:00 |
Pietro Gagliardi
|
2c107d7057
|
Converted the new Windows Control code to use interfaces instead of controlbase, just like the GTK+ and Mac OS X backends do now.
|
2014-08-03 21:52:21 -04:00 |
Pietro Gagliardi
|
0fb45ba84d
|
Did the previous commit, but for the Windows backend.
|
2014-08-03 20:42:45 -04:00 |
Pietro Gagliardi
|
a4fac48192
|
Standardized basegetAuxResize() on the GTK+ backend to match the Mac OS X backend and controlbase.sh.
|
2014-08-03 20:33:19 -04:00 |
Pietro Gagliardi
|
8c4cd789ca
|
Migrated the Mac OS X backend to the new Control setup.
|
2014-08-03 20:08:25 -04:00 |
Pietro Gagliardi
|
b6d07237b4
|
Migrated the GTK+ backend to the new Control system. Added controlParent to deal with interface issues; need to apply this to the Windows backend too.
|
2014-08-03 16:28:21 -04:00 |
Pietro Gagliardi
|
fd48be68ee
|
I am a dolt; make Checkbox.Checked() return a bool directly on Windows.
|
2014-08-03 09:22:15 -04:00 |
Pietro Gagliardi
|
6785b48d28
|
More TODOs.
|
2014-08-03 09:20:00 -04:00 |
Pietro Gagliardi
|
1aea308645
|
Set up the Control restructure and migrated the Windows implementation over. Lots of repetition, but hopefully more correct and maintainable!
|
2014-08-03 09:18:35 -04:00 |
Pietro Gagliardi
|
585f5f5b62
|
Applied previous commit's change to the test program.
|
2014-08-03 09:13:25 -04:00 |
Pietro Gagliardi
|
ac5c577507
|
Chagned Checkbox.OnClicked() to Checkbox.OnToggled(). The code restructure will allow this.
|
2014-08-03 09:12:39 -04:00 |
Pietro Gagliardi
|
d018953d7e
|
Split all the Control implementations into their own files and renamed the containerctrls implementation files to say tab instead as they only hold Tab. This is the first part of what should hopefully be the final restructuring.
|
2014-08-02 22:35:58 -04:00 |
Pietro Gagliardi
|
1f6bcde3d9
|
Removed the generic preferredSize() from the Windows backend; all controls are now expected to provide their own on Windows (this is really the only way to go there). NOW I can rework the whole control nonsense...
|
2014-08-02 12:37:41 -04:00 |
Pietro Gagliardi
|
cafc9daa72
|
Implemented Tab.preferredSize() on Windows.
|
2014-08-02 12:35:36 -04:00 |
Pietro Gagliardi
|
668cf5e46e
|
Rewrote the tab height calculation function from the previous commit to consider all tabs, just to be safe.
|
2014-08-02 12:24:04 -04:00 |
Pietro Gagliardi
|
1f6ad99afb
|
Wrote code to get Windows Tabs's tab height; will integrate it later.
|
2014-08-02 11:05:18 -04:00 |
Pietro Gagliardi
|
c6e47ba21a
|
Migrated the Label alignment code back into the Mac OS X port.
|
2014-08-02 09:47:57 -04:00 |
Pietro Gagliardi
|
85fb097ab9
|
Wrote Control.preferredSize() (including Tab.preferredSize()) on Mac OS X.
|
2014-08-02 08:04:44 -04:00 |
Pietro Gagliardi
|
37cf0a20c0
|
Migrated the Mac OS X backend to sizer. Once I get this control sizing stuff working there and the height of a Tab tab on Windows, I'm going to chuck this whole embedding thing and sacrifice a non-cluttered directory structure for CODE SIMPLICITY.
|
2014-08-02 07:28:20 -04:00 |
Pietro Gagliardi
|
99b6b47a49
|
Migrated the GTK+ backend to the new sizer system.
|
2014-08-02 01:14:09 -04:00 |
Pietro Gagliardi
|
0356d0fd70
|
Migrated the Windows backend to use sizer.
|
2014-08-01 23:36:13 -04:00 |
Pietro Gagliardi
|
e9b2f9f478
|
Began cleaning up the sizing/container/control stuff by changing container to sizing.
|
2014-08-01 23:29:19 -04:00 |
Pietro Gagliardi
|
9117da1405
|
Began migrating all the Mac OS X sizing stuff over.
|
2014-08-01 23:16:43 -04:00 |
Pietro Gagliardi
|
cc74f44d58
|
More TODOs.
|
2014-08-01 21:49:44 -04:00 |
Pietro Gagliardi
|
5ec0082e6a
|
Cleaned up sizing_windows.go now that the important things have been reimplemented.
|
2014-08-01 21:41:45 -04:00 |
Pietro Gagliardi
|
61cf72e44a
|
Added debug chatter to Button.preferredSize() on Windows.
|
2014-08-01 21:35:56 -04:00 |
Pietro Gagliardi
|
3d002cf3a6
|
Implemented Button.preferredSize() on Windows.
|
2014-08-01 21:30:41 -04:00 |
Pietro Gagliardi
|
f7749f3678
|
Added Table.preferredSize() on Windows.
|
2014-08-01 21:21:42 -04:00 |
Pietro Gagliardi
|
09c1d78126
|
Added TextField preferredSize() on Windows.
|
2014-08-01 21:07:49 -04:00 |
Pietro Gagliardi
|
3fca111710
|
Removed previous commit's TODO and added Checkbox preferredSize() on Windows.
|
2014-08-01 20:56:11 -04:00 |
Pietro Gagliardi
|
83eeae1ec2
|
More TODOs.
|
2014-08-01 19:42:29 -04:00 |
Pietro Gagliardi
|
ed38a2cac7
|
Implemented preferredSize() for Label on Windows. Seems to work...
|
2014-08-01 19:32:19 -04:00 |
Pietro Gagliardi
|
e2b8fb81d6
|
Converted direct usages of C.setWindowText() in the Windows Control code into calls to the equivalent Control methods so the text length can be properly stored.
|
2014-08-01 19:27:12 -04:00 |
Pietro Gagliardi
|
6e78eb94ba
|
More Windows sizing framework code: merged together the MulDiv() instances into wrapper functions and added the basic text length storage into controlbase.
|
2014-08-01 19:24:57 -04:00 |
Pietro Gagliardi
|
785d6ac4fd
|
Added a function to the Windows backend to keep track of text length. This will be important for sizing purposes.
|
2014-08-01 19:15:03 -04:00 |
Pietro Gagliardi
|
b31ce95b33
|
Fixed up more LPCWSTR->LPWSTR conversion, including some code simplification.
|
2014-08-01 18:30:07 -04:00 |
Pietro Gagliardi
|
80828b8a7d
|
Changed LPCWSTR to LPWSTR in the Windows code as the C means const and there are a few cases of const->non-const conversions as a result.
|
2014-08-01 18:25:59 -04:00 |
Pietro Gagliardi
|
7f027bae3c
|
Applied non-standalone Label offsets to the Windows backend. Also more TODOs.
|
2014-08-01 15:11:09 -04:00 |
Pietro Gagliardi
|
9c0aa7be5c
|
Resolved a TODO about label alignment.
|
2014-08-01 13:14:10 -04:00 |
Pietro Gagliardi
|
b1902686ca
|
Disambiguated what happens when a regular Label is used in a Standalone context.
|
2014-07-30 22:45:03 -04:00 |
Pietro Gagliardi
|
bdc8aac4d6
|
Added preferred size tests to zz_test.go; these will help for what we're about to do (implement Control.preferredSize() on all other platforms).
|
2014-07-30 22:42:32 -04:00 |
Pietro Gagliardi
|
c5917de29c
|
Split out the default definitions of Control.allocate() into a single place.
|
2014-07-30 20:38:01 -04:00 |
Pietro Gagliardi
|
713be62f16
|
Applied Labels being vertically aligned to the top when next to a Table in the GTK+ backend.
|
2014-07-30 17:32:10 -04:00 |
Pietro Gagliardi
|
3d922c87fa
|
Fixed up attributes of Table on Mac OS X.
|
2014-07-30 13:10:19 -04:00 |
Pietro Gagliardi
|
d21bd30583
|
Moved the Mac OS X function newScrollView() to control_darwin.m and verified its styles against Interface Builder.
|
2014-07-30 12:50:45 -04:00 |
Pietro Gagliardi
|
a8b7283a87
|
Moved the definition of Control itself to control.go and updated some comments.
|
2014-07-30 12:36:00 -04:00 |
Pietro Gagliardi
|
c0473db73c
|
Ported the new Control setup to Mac OS X.
|
2014-07-30 12:34:54 -04:00 |
Pietro Gagliardi
|
4740f72efb
|
Applied the new Control system to the GTK+ backend.
|
2014-07-30 10:21:23 -04:00 |
Pietro Gagliardi
|
210102fe95
|
Set up a new, cleaner model for deriving Control's methods and applied it to the Windows backend.
|
2014-07-30 02:06:01 -04:00 |
Pietro Gagliardi
|
5a51263adc
|
Renamed the controls* and containers* files to basicctrls* and containerctrls*, respectively, in preparation for the widget hierarchy redo.
|
2014-07-30 00:54:50 -04:00 |
Pietro Gagliardi
|
8b1756e952
|
Re-added Stack. Of course it only works right on GTK+ right now... the other platforms's Control.preferredSize()s aren't implemented yet!
|
2014-07-29 23:23:45 -04:00 |
Pietro Gagliardi
|
9daab20fce
|
Changed Control.setParent() to take the same argument type on all platforms; this is needed for re-adding Stack and Grid. This argument type is defined by each platform.
|
2014-07-29 23:01:28 -04:00 |
Pietro Gagliardi
|
f4bb7360d4
|
Added Label and implemented it on all platforms.
|
2014-07-29 13:48:31 -04:00 |
Pietro Gagliardi
|
8d7f0c9a62
|
Wrote up the data model for Mac OS X Tables; now Tables work everywhere!
|
2014-07-29 10:54:52 -04:00 |
Pietro Gagliardi
|
4e0436da18
|
Added the beginning of the Mac OS X Table code.
|
2014-07-29 10:32:49 -04:00 |
Pietro Gagliardi
|
b37f32c142
|
Made column headers resizeable on GTK+ Tables.
|
2014-07-29 04:30:58 -04:00 |
Pietro Gagliardi
|
abb77b7a5c
|
Hooked all the GTK+ Table stuff together and got it working. Woo!
|
2014-07-29 03:43:01 -04:00 |
Pietro Gagliardi
|
f099d935ea
|
Added build guards to the GTK+ Table code.
|
2014-07-29 03:11:21 -04:00 |
Pietro Gagliardi
|
24f5a91ff4
|
Wrote the GTK+ Table model code. Mostly working; now it just needs an update mechanism...
|
2014-07-29 03:07:11 -04:00 |
Pietro Gagliardi
|
92539e10e9
|
Added the beginning of the GTK+ Table model implementation.
|
2014-07-29 01:53:34 -04:00 |
Pietro Gagliardi
|
ab8acd99b9
|
Fixed a small error in the zz_test.go rewrite from a few commits ago.
|
2014-07-29 01:40:17 -04:00 |
Pietro Gagliardi
|
a501c5678d
|
Began the implementation of Table on GTK+.
|
2014-07-29 01:06:56 -04:00 |
Pietro Gagliardi
|
74756e3086
|
Added #include "_cgo_export.h" to table_windows.c.
|
2014-07-29 00:47:09 -04:00 |
Pietro Gagliardi
|
389269bc66
|
Fixed the test program crashing after a while (prevent the Window and Controls from being garbage-collected from under us).
|
2014-07-28 23:55:52 -04:00 |
Pietro Gagliardi
|
84e04cdae1
|
Set up some extended styles on Windows Tables for consistency and future features.
|
2014-07-28 23:47:45 -04:00 |
Pietro Gagliardi
|
8fcadffeaf
|
Implemented Table item text grabbing on Windows.
|
2014-07-28 23:29:06 -04:00 |
Pietro Gagliardi
|
3c34f22373
|
Fixed up borders for currently implemented controls on Windows.
|
2014-07-28 22:16:45 -04:00 |
Pietro Gagliardi
|
5a70accb2f
|
Fixed the Tab wrong control drawing issues on Windows.
|
2014-07-28 21:10:13 -04:00 |
Pietro Gagliardi
|
7cb6ca1243
|
Began the implementation of Table on Windows.
|
2014-07-28 20:52:32 -04:00 |
Pietro Gagliardi
|
e2ef204b70
|
Quick note about Table.Unlock() and updates.
|
2014-07-28 18:03:59 -04:00 |
Pietro Gagliardi
|
0b82f37bcb
|
Added the basic Table interface. Now to implement it...
|
2014-07-28 17:59:50 -04:00 |
Pietro Gagliardi
|
286704bedd
|
Fixed the proper recursive application of spaced on Windows tabs by having container.resize() also take the origin coordinates as arguments.
|
2014-07-28 15:02:27 -04:00 |
Pietro Gagliardi
|
13bcf728ba
|
Made the previous commit's changes on Windows. If the Stack Overflow question tells me I'm wrong, we can deal with it then. But yay simple sizing code again :D
|
2014-07-28 14:43:34 -04:00 |
Pietro Gagliardi
|
bea4df1abf
|
Began final simplification of size code. spaced is now a global variable; either all controls are given spacing now, or none will. beginResize() is a method on container again. Done on GTK+ and Mac OS X for now. I'm going to go ahead and implement this on Windows in a bit, regardless of whether that Stack Overflow question get answered or not, because ugggggggggh I just want to continue working on this project for fuck's sake!
|
2014-07-28 14:00:01 -04:00 |
Pietro Gagliardi
|
3f124a016e
|
Made Tab in the GTK+ backend scrollable (in case there are too many tabs).
|
2014-07-28 13:18:03 -04:00 |
Pietro Gagliardi
|
d8785297ff
|
Added a note about GTK+ color selection dialog deprecations for later.
|
2014-07-27 14:50:49 -04:00 |
Pietro Gagliardi
|
be8afd43c0
|
Copied stack.go and grid.go to a temporary restaging area; removed the margin code from both as we no longer need it there.
|
2014-07-27 10:48:30 -04:00 |
Pietro Gagliardi
|
e679f8c9e4
|
Actually implemented margins in the right place — in container.resize() itself, not just in the actual containers (as the old Stack and Grid code do). I'll need to remove them from Stack and Grid when I merge them back in...
|
2014-07-27 10:42:59 -04:00 |
Pietro Gagliardi
|
d34ffa326c
|
Made the sizing recursive chain idempotent and added a -spaced option to the test program to test spacing.
|
2014-07-26 14:11:03 -04:00 |
Pietro Gagliardi
|
22989c13da
|
Removed sizing.endResize(); it's not really used at this point.
|
2014-07-26 11:21:21 -04:00 |
Pietro Gagliardi
|
b5d8b4f3de
|
Adjusted autocompletion settings for TextField on Mac OS X.
|
2014-07-26 11:18:34 -04:00 |
Pietro Gagliardi
|
2c810e7165
|
Verified Mac OS X control appearance and fonts with Interface Builder.
|
2014-07-26 10:05:18 -04:00 |
Pietro Gagliardi
|
e8df54cb82
|
Implemented TextField on Mac OS X.
|
2014-07-26 09:20:33 -04:00 |
Pietro Gagliardi
|
348b3f7032
|
Implemented TextField on GTK+.
|
2014-07-26 08:52:33 -04:00 |
Pietro Gagliardi
|
4c4235465e
|
Made TextFields properly horizontally scrollable on Windows.
|
2014-07-26 07:02:19 -04:00 |
Pietro Gagliardi
|
4515849e22
|
Implemented TextField on Windows.
|
2014-07-26 06:57:11 -04:00 |
Pietro Gagliardi
|
52e75e6cce
|
Renamed LineEdit to TextField.
|
2014-07-26 06:43:59 -04:00 |
Pietro Gagliardi
|
3db16ffcf6
|
More TODOs.
|
2014-07-26 05:55:01 -04:00 |
Pietro Gagliardi
|
ee5c6ff846
|
Implemented Tab on Mac OS X. Woo! I'll need to add justification for what I'm doing with the whole recursive call thing; when I get confirmation from the GTK+ camp I will.
|
2014-07-25 23:11:41 -04:00 |
Pietro Gagliardi
|
41f3ef292f
|
Cleaned up sizing a bit. Being able to know how big something will be ahead of time would be better.
|
2014-07-25 22:13:09 -04:00 |
Pietro Gagliardi
|
c676a2d9b7
|
Implemented Tab on GTK+. I really don't like the way sizing works now...
|
2014-07-25 20:47:08 -04:00 |
Pietro Gagliardi
|
3d5e8feba4
|
Implemented the various parenting and sizing changes on the Mac OS X backend; also moved a line in window_windows.go around for consistency.
|
2014-07-25 20:10:09 -04:00 |
Pietro Gagliardi
|
d1702d33e0
|
Updated the GTK+ backend to have the new parenting and sizing changes. Now to implement Tab! ...though I should probably implement the changes on Mac OS X first.
|
2014-07-25 19:44:32 -04:00 |
Pietro Gagliardi
|
010c97d686
|
Adjusted sizing data to act as the base container type; this is needed for proper resizing on both GTK+ and Mac OS X.
|
2014-07-25 19:28:34 -04:00 |
Pietro Gagliardi
|
4680e35300
|
Simplified the control nesting model by removing Control.unparent() and requiring all Windows to have a Control at construct time; implemented such on Windows.
|
2014-07-25 17:34:45 -04:00 |
Pietro Gagliardi
|
d03b8f4b7c
|
Removed extern from C function definitions in containers_windows.c.
|
2014-07-25 16:06:53 -04:00 |
Pietro Gagliardi
|
506ab20582
|
More TODOs.
|
2014-07-25 15:59:09 -04:00 |
Pietro Gagliardi
|
9ea22218ff
|
Implemented Tab on Windows.
|
2014-07-25 15:58:24 -04:00 |
Pietro Gagliardi
|
d515bd74c6
|
Added the framework for tabs, added necessary assistant routines for tabs, and implemented those assistant routines on the Windows backend.
|
2014-07-25 12:45:56 -04:00 |
Pietro Gagliardi
|
5e9b60a795
|
Re-added LineEdit interface. Honestly I'm not too thrilled with how the unparent/reparent system is turning out; removing it failed, however...
|
2014-07-24 17:24:25 -04:00 |
Pietro Gagliardi
|
a2eb69cbf6
|
Fixed compilation errors on Mac OS X. Reparenting works; redrawing, however...
|
2014-07-23 17:09:08 -04:00 |
Pietro Gagliardi
|
300835a1b4
|
Implemented Checkbox on Mac OS X. Also untested; will test next.
|
2014-07-22 23:32:32 -04:00 |
Pietro Gagliardi
|
f21fdfd7dc
|
Oops, forgot to fill in a name in a comment in the previous commit. Fixed.
|
2014-07-22 18:33:44 -04:00 |
Pietro Gagliardi
|
3b5c9738fd
|
Implemented the Control parent/unparent redraw provisions on the GTK+ backend.
|
2014-07-22 18:12:21 -04:00 |
Pietro Gagliardi
|
e9c6d96d2d
|
Added provisions for proper window redraw on Window.SetParent() and implemented them on Mac OS X; still untested.
|
2014-07-22 17:45:29 -04:00 |
Pietro Gagliardi
|
e989c953fa
|
Moved Window.SetControl() into window.go pending addition of fake resize events.
|
2014-07-22 00:07:41 -04:00 |
Pietro Gagliardi
|
de92b822a7
|
More TODOs.
|
2014-07-21 22:03:18 -04:00 |
Pietro Gagliardi
|
58db287ca2
|
Fixed the RemoveWindowSubclass() crash in Windows Checkboxes.
|
2014-07-21 21:37:06 -04:00 |
Pietro Gagliardi
|
451536f6a5
|
Mostly added Checkbox to the Windows backend; it doesn't show up right away and it crashes in WM_NCDESTROY...
|
2014-07-21 21:34:52 -04:00 |
Pietro Gagliardi
|
d57d2aa2de
|
Added Checkbox on the GTK+ backend, added a checkbox to the test program, and fixed a small error in the GTK+ widgetbase.parent() that kept the new widget hidden.
|
2014-07-21 21:07:14 -04:00 |
Pietro Gagliardi
|
54c999bc42
|
Switched from gtk_init() to the version that lets us catch and report any errors it encounters.
|
2014-07-21 16:08:22 -04:00 |
Pietro Gagliardi
|
d60d176472
|
Actually, switch back to GtkLayout, as GtkFixed has the side effect of not allowing truly arbitrary resizes.
|
2014-07-21 10:48:56 -04:00 |
Pietro Gagliardi
|
d319d9f4ac
|
Switched the GTK+ layout control from GtkLayout back to GtkFixed; the size-allocate thing overrides the size-request issue I had earlier that prompted the switch away.
|
2014-07-21 10:45:37 -04:00 |
Pietro Gagliardi
|
7d3504e25b
|
Implemented initial window size on the GTK+ backend.
|
2014-07-21 10:37:15 -04:00 |
Pietro Gagliardi
|
26065e45cf
|
Disabled Checkbox for now; more stuff to do first.
|
2014-07-21 10:32:32 -04:00 |
Pietro Gagliardi
|
ea5936855f
|
Re-added Checkbox's interface specification (with th Request changes applied) and removed Combobox; I'm going to implement things in a different order now.
|
2014-07-21 09:51:05 -04:00 |
Pietro Gagliardi
|
55db438d63
|
Resolved ambiguous WINAPI issues on Windows.
|
2014-07-21 09:43:37 -04:00 |
Pietro Gagliardi
|
cb96b8c6fd
|
Added common_darwin.go; moved toBOOL() there.
|
2014-07-20 21:26:26 -04:00 |
Pietro Gagliardi
|
88a51068db
|
Re-added Mac OS X versioning macros and compiler/linker options.
|
2014-07-20 21:22:10 -04:00 |
Pietro Gagliardi
|
ecdb7bc09d
|
Removed leftover TODO in window_darwin.go.
|
2014-07-20 17:30:22 -04:00 |
Pietro Gagliardi
|
11daae4a63
|
Resolved the NSWindowDelegate issue and added an explicit NSApplicationDelegate specifier just to be safe; thanks to Zorg__ in irc.freenode.net/#macdev for explaining (it's an issue with NSApp specifically).
|
2014-07-20 17:27:56 -04:00 |
Pietro Gagliardi
|
6da105da56
|
Resolved NSMakeRect() argument casting TODO in sizing_darwin.m.
|
2014-07-20 14:56:25 -04:00 |
Pietro Gagliardi
|
672efd5246
|
Implemented Window.Close() on Mac OS X, settling both that TODO and the one about making sure Window.Close() works as documented on all platforms.
|
2014-07-20 13:01:46 -04:00 |
Pietro Gagliardi
|
5fa0950112
|
Verified that Window.Close() works as documented on GTK+.
|
2014-07-19 23:36:11 -04:00 |
Pietro Gagliardi
|
fa5b2012d0
|
Oops, NewButton() should return Button, not the backend type. Fixed.
|
2014-07-19 16:47:19 -04:00 |
Pietro Gagliardi
|
214dc6cd5c
|
Ah, fixed the stalling: logic error in the test program itself.
|
2014-07-19 10:16:00 -04:00 |
Pietro Gagliardi
|
627abfd593
|
Fixed issuing in the new system. Now to figure out why it stalls...
|
2014-07-19 10:10:52 -04:00 |
Pietro Gagliardi
|
e73e7ab733
|
Fixed more conversion kinks. Now for a major change...
|
2014-07-19 10:07:42 -04:00 |
Pietro Gagliardi
|
32061353a1
|
Updated the test program to be Request-less. Now to test...
|
2014-07-19 09:58:57 -04:00 |
Pietro Gagliardi
|
104337188f
|
Removed Request completely, also updating the uitask files. Also renamed xperform to doissue for consistency.
|
2014-07-19 09:57:01 -04:00 |
Pietro Gagliardi
|
48c5055eb9
|
Started dropping the whole request/response system because it fell apart... time to make a ui.Do(func(){ ... })
|
2014-07-19 09:44:32 -04:00 |
Pietro Gagliardi
|
47c0f573a9
|
Fixed a slight channel leak in event.fire().
|
2014-07-18 22:56:30 -04:00 |
Pietro Gagliardi
|
08f5c42639
|
Added a test case for Window.Close().
|
2014-07-18 22:30:07 -04:00 |
Pietro Gagliardi
|
abb5b0c1d7
|
Decided not to use removeFromSuperviewWithoutNeedingRedraw at mikeash in irc.freenode.net/#macdev's suggestion (he basically said the documentation's description of the difference is "gibberish" and that I shouldn't need it). Let's just hope that stays the case...
|
2014-07-18 21:20:21 -04:00 |
Pietro Gagliardi
|
2c3c200df8
|
Settled TODO about cairo version macros.
|
2014-07-18 20:46:51 -04:00 |
Pietro Gagliardi
|
847690bb10
|
Fixed window resizing in GTK+ acting wonky AND several related TODOs to boot!
|
2014-07-18 19:36:29 -04:00 |
Pietro Gagliardi
|
58673a614c
|
Made the previous commit more robust.
|
2014-07-18 15:19:55 -04:00 |
Pietro Gagliardi
|
b56f60c04c
|
Fixed control positioning on initial window show on Mac OS X.
|
2014-07-18 15:16:41 -04:00 |
Pietro Gagliardi
|
6bc4425915
|
Scrapped Window.SetSize() and Window.Center() (for now?).
|
2014-07-18 14:07:12 -04:00 |
Pietro Gagliardi
|
351c7cd9b2
|
Added the standard control fonts to the Mac OS X backend. The GTK+ backend is fine as it stands.
|
2014-07-18 11:47:48 -04:00 |
Pietro Gagliardi
|
f64f2781ce
|
Added (and applied) standard Windows fonts.
|
2014-07-18 11:20:18 -04:00 |
Pietro Gagliardi
|
489ce0a053
|
Added #include "_cgo_export.h" to files that needed it and fixed a cast error in controls_windows.c that that revealed. Anyway buttons work now on all platforms, woo :D
|
2014-07-18 00:29:15 -04:00 |
Pietro Gagliardi
|
d2f09a0222
|
Fixed all the remaining compiler errors. C conversion works!
|
2014-07-18 00:22:21 -04:00 |
Pietro Gagliardi
|
7c6fa3b2fd
|
Fixed assorted typos in some of the new C files.
|
2014-07-17 23:56:16 -04:00 |
Pietro Gagliardi
|
b174ed985c
|
Added include guards to winapi_windows.h because of cgo including the file multiple times.
|
2014-07-17 23:52:07 -04:00 |
Pietro Gagliardi
|
e2be30c6e4
|
Changed the GTK+ files so they would not compile on Windows; this is needed now that the Windows build uses cgo too.
|
2014-07-17 23:50:14 -04:00 |
Pietro Gagliardi
|
501b6a3a34
|
Fixed Go compiler errors in the new Windows code; round 1.
|
2014-07-17 23:48:44 -04:00 |
Pietro Gagliardi
|
70e45bef57
|
Removed Windows constant generation code as we will no longer need it.
|
2014-07-17 23:45:52 -04:00 |
Pietro Gagliardi
|
6a5a28d917
|
Migrated common_windows.go to C. Now to nuke unneeded files and fix compiler errors...
|
2014-07-17 23:45:12 -04:00 |
Pietro Gagliardi
|
d8f302f157
|
Some Unicode-related fixups and additions in the new Windows code.
|
2014-07-17 23:14:22 -04:00 |
Pietro Gagliardi
|
0dc1538002
|
Migrated window_windows.go to C.
|
2014-07-17 23:11:16 -04:00 |
Pietro Gagliardi
|
29b80f7542
|
Migrated sizing_windows.go to C.
|
2014-07-17 22:47:04 -04:00 |
Pietro Gagliardi
|
2c025a97ef
|
Migrated init_windows.go to C.
|
2014-07-17 22:33:03 -04:00 |
Pietro Gagliardi
|
7e40e9fe28
|
Migrated controls_windows.go to C.
|
2014-07-17 22:16:32 -04:00 |
Pietro Gagliardi
|
8fee588a1d
|
Migrated comctl32_windows.go to C.
|
2014-07-17 20:05:47 -04:00 |
Pietro Gagliardi
|
0adac4d3ca
|
Began the drudgery of converting all the Windows code to use cgo, because I'm not going to wait to debug this smashed stack.
|
2014-07-17 19:36:24 -04:00 |
Pietro Gagliardi
|
257fd8f07c
|
Added the code for the subclassing. And it smashes the stack. Wonderful...
|
2014-07-17 18:36:44 -04:00 |
Pietro Gagliardi
|
51a3c0e379
|
Migrated the comctl32.dll code and added all the window subclassing stuff. Starting to consider just doing what I'm doing with the Mac OS X backend and just using cgo...
|
2014-07-17 18:04:51 -04:00 |
Pietro Gagliardi
|
19f7b2946a
|
Laid down the framework for control events on Windows. The only problem left is that we need to use functions from comctl32.dll, so it's time to bring that blob of code back.
|
2014-07-17 15:10:26 -04:00 |
Pietro Gagliardi
|
1a712d4064
|
Implemented button clicking on GTK+.
|
2014-07-17 12:14:38 -04:00 |
Pietro Gagliardi
|
e4b379f84a
|
Added button click events to the Mac OS X backend.
|
2014-07-17 12:02:39 -04:00 |
Pietro Gagliardi
|
659bc03f17
|
Migrated control sizing code for Mac OS X.
|
2014-07-17 11:24:58 -04:00 |
Pietro Gagliardi
|
819caea422
|
Re-added the Windows sizing code.
|
2014-07-16 22:31:48 -04:00 |
Pietro Gagliardi
|
a253f39d68
|
Ported over the sizing framework from the old package and implemented it on the GTK+ backend.
|
2014-07-16 21:30:19 -04:00 |
Pietro Gagliardi
|
1953f2d748
|
Added Button and control adding to the Mac OS X backend.
|
2014-07-16 13:25:09 -04:00 |
Pietro Gagliardi
|
d154a2d74d
|
Added basic control showing to the Windows backend.
|
2014-07-15 22:44:27 -04:00 |
Pietro Gagliardi
|
d6a8a72662
|
Fixed a flaw in the SetControl() for GTK+ Window: it forgot to unparent old children.
|
2014-07-15 22:34:12 -04:00 |
Pietro Gagliardi
|
0ddc060410
|
Refined zregen.sh to accept argumetns and not run the 64-bit generator if the 32-bit one failed.
|
2014-07-15 22:30:42 -04:00 |
Pietro Gagliardi
|
09ed472138
|
Added the beginninig of the Windows Control code.
|
2014-07-15 22:29:45 -04:00 |
Pietro Gagliardi
|
5ebd89984a
|
Added parenting/unparenting of controls to the GTK+ backend and the test program.
|
2014-07-15 20:48:16 -04:00 |
Pietro Gagliardi
|
474436e9f6
|
Implemented window resize handling on Mac OS X. Now for actually setting child controls and resizing them.
|
2014-07-15 14:04:20 -04:00 |
Pietro Gagliardi
|
c61666b6b4
|
Implemented resize event detection on Windows.
|
2014-07-15 12:09:46 -04:00 |
Pietro Gagliardi
|
b3cba4bfb1
|
Added window resize handling to the GTK+ backend.
|
2014-07-14 22:54:57 -04:00 |
Pietro Gagliardi
|
daafb7aef8
|
Added the widget container to the GTK+ code.
|
2014-07-14 16:32:45 -04:00 |
Pietro Gagliardi
|
0e7589af47
|
Implemented Stop() on Mac OS X.
|
2014-07-13 21:31:13 -04:00 |
Pietro Gagliardi
|
0eded3f774
|
Implemented Stop() on GTK+.
|
2014-07-13 20:31:08 -04:00 |
Pietro Gagliardi
|
acc604a820
|
Some comment cleanup.
|
2014-07-13 20:28:15 -04:00 |
Pietro Gagliardi
|
244061d878
|
Changed the semantics of uitask() to allow it to handle recursive main loops properly; important for Stop() to work correctly on non-Windows systems.
|
2014-07-13 20:26:16 -04:00 |
Pietro Gagliardi
|
f36451d26e
|
Added Stop() and implemented it on Windows.
|
2014-07-13 01:14:55 -04:00 |
Pietro Gagliardi
|
5bc9a75f0a
|
Pinned down event behavior of Windows.Close().
|
2014-07-12 16:17:06 -04:00 |
Pietro Gagliardi
|
903f8e9b22
|
Added zconstants regeneration script.
|
2014-07-12 16:15:28 -04:00 |
Pietro Gagliardi
|
530810deda
|
Implemented Window.Close() on Windows.
|
2014-07-12 16:15:10 -04:00 |
Pietro Gagliardi
|
1cdc6bad27
|
More TODOs.
|
2014-07-12 12:59:47 -04:00 |
Pietro Gagliardi
|
cfb9bcc625
|
Fixed the Windows code. Now to implement closing properly.
|
2014-07-12 12:59:12 -04:00 |
Pietro Gagliardi
|
b944b6d4d8
|
Finished writing initial Windows implementation. Now to find out why it doesn't work...
|
2014-07-12 11:29:54 -04:00 |
Pietro Gagliardi
|
c55386f929
|
Added function generation to zwinconstgen.go. cgo uses DWARF to get function parameters, so we'll just specify them manually ourselves; see funcnames_windows.go.
|
2014-07-11 23:34:39 -04:00 |
Pietro Gagliardi
|
06c2f1b051
|
More zwinconstgen.go work.
|
2014-07-11 12:33:28 -04:00 |
Pietro Gagliardi
|
732a6db368
|
More zwinconstgen.go output refinement.
|
2014-07-11 12:16:49 -04:00 |
Pietro Gagliardi
|
294cb8d166
|
More refinement of struct output in zwinconstgen.go.
|
2014-07-11 12:10:37 -04:00 |
Pietro Gagliardi
|
0260b7c867
|
Added a handler for embedded structure values in zwinconstgen.go.
|
2014-07-11 11:57:04 -04:00 |
Pietro Gagliardi
|
36e8393b46
|
Added an attempt at overriding HWND, etc. in the zwinconstgen.go type generation; will test now.
|
2014-07-11 11:50:45 -04:00 |
Pietro Gagliardi
|
14913e042e
|
Fixed up output of zwinconstgen.go to some extent.
|
2014-07-11 10:58:00 -04:00 |
Pietro Gagliardi
|
c71e80f192
|
Improved the structure type output of zwinconstgen.go.
|
2014-07-11 10:52:27 -04:00 |
Pietro Gagliardi
|
3596ae7b96
|
Converted zwinconstgen.go to use a template to generate its output.
|
2014-07-11 10:47:56 -04:00 |
Pietro Gagliardi
|
1f883c5b40
|
Added basic struct parsing to zwinconstgen.go.
|
2014-07-11 10:29:52 -04:00 |
Pietro Gagliardi
|
114c4050eb
|
Fixed compiler errors in zwinconstgen.go output.
|
2014-07-11 10:02:55 -04:00 |
Pietro Gagliardi
|
a54e3e67de
|
Added beginning of Windows init code.
|
2014-07-11 09:55:13 -04:00 |
Pietro Gagliardi
|
4eb9e26525
|
Actually never mind I'm dumb there's no Windows files yet
|
2014-07-10 21:43:19 -04:00 |
Pietro Gagliardi
|
cf64176fe0
|
Moved winconstgen.go into a tools/ folder because blah more than one package found.
|
2014-07-10 21:42:16 -04:00 |
Pietro Gagliardi
|
ff1a5d73a1
|
Fixed compilation errors in zwinconstgen.go.
|
2014-07-10 21:10:40 -04:00 |
Pietro Gagliardi
|
a72500c6f8
|
Added the beginning of a modified winconstgen.go that'll be more thorough than the old one (includes structures and functions) and treats all names like hacknames. THe defaultCCs CL will need to be resolved somehow...
|
2014-07-09 10:37:11 -04:00 |
Pietro Gagliardi
|
44811e5351
|
Implemented window closing on Mac OS X. This drops the "single delegate object for everything" setup but keeping that map and holding its lock is already meh so.
|
2014-07-08 17:44:08 -04:00 |
Pietro Gagliardi
|
edd81e2e48
|
Switched to using Grand Central Dispatch and Objective-C blocks in the Mac OS X backend. THIS IS PRECEDENT-SETTING.
|
2014-07-08 16:50:52 -04:00 |
Pietro Gagliardi
|
b4357db4be
|
Added the beginning of the Mac OS X code.
|
2014-07-08 16:47:28 -04:00 |
Pietro Gagliardi
|
60d0953fe9
|
Implemented the Window OnClosing() event on GTK+. It works!
|
2014-07-08 12:04:51 -04:00 |
Pietro Gagliardi
|
be56707c51
|
Defined events.
|
2014-07-08 11:23:31 -04:00 |
Pietro Gagliardi
|
382bf27523
|
Fixed runtime crashes for now. Whee, we have a window again!
|
2014-07-08 11:01:29 -04:00 |
Pietro Gagliardi
|
8f768d2b91
|
Fixed other compilation errors and added a test file. Now to figure out why things are failing at runtime...
|
2014-07-08 10:00:16 -04:00 |
Pietro Gagliardi
|
c40d950654
|
Made event handlers more robust.
|
2014-07-08 00:29:43 -04:00 |
Pietro Gagliardi
|
d874148760
|
Fixed most compilation errors and added GTK+ string helper functions to common_unix.go.
|
2014-07-07 22:46:23 -04:00 |
Pietro Gagliardi
|
dccf548ffa
|
Added gtk_unix.h from the old ui; removed the line about gdk-pixbuf. Let's hope this builds...
|
2014-07-07 22:35:27 -04:00 |
Pietro Gagliardi
|
cddf0417dc
|
Added Go() and the GTK+ uitask functions.
|
2014-07-07 21:04:44 -04:00 |
Pietro Gagliardi
|
0c57837676
|
Made event handler setters return a Request, implemented stubs on GTK+ so I can build a test, and made documentation consistent.
|
2014-07-07 16:51:17 -04:00 |
Pietro Gagliardi
|
c0c38ac8f5
|
Added the GTK+ implementation of Window, added the Window constructors, and rewrote the GTK+ Button constructor to use Requests.
|
2014-07-07 15:30:55 -04:00 |
Pietro Gagliardi
|
7966d70230
|
Added Window to the redo.
|
2014-07-07 15:03:39 -04:00 |
Pietro Gagliardi
|
0c5f5a3ac0
|
Added GetNewButton as a helper function and split the other controls to xcontrols pending their addition.
|
2014-07-07 13:40:51 -04:00 |
Pietro Gagliardi
|
409ecf8ca7
|
Added beginning of Unix Control reimplementation.
|
2014-07-07 10:44:46 -04:00 |
Pietro Gagliardi
|
bf8d2d7efd
|
Started the redo Control system.
|
2014-07-07 09:43:01 -04:00 |
Pietro Gagliardi
|
fd183e8bf7
|
Added the new common uitask code to the redo.
|
2014-07-06 21:42:11 -04:00 |
Pietro Gagliardi
|
65a3c67ebd
|
Added the Request model of the new, concurrent API.
|
2014-07-06 21:03:58 -04:00 |