Pietro Gagliardi
|
3200a0ca97
|
More TODO/future plan separation.
|
2014-08-08 20:14:25 -04:00 |
Pietro Gagliardi
|
79ada1bdaa
|
Starting splitting out future plans from the TODOs again; this time: Group.
|
2014-08-08 20:05:36 -04:00 |
Pietro Gagliardi
|
e1486f3cd1
|
Decided to revert the transparency changes; I'll try flicker-free first.
|
2014-08-08 13:07:38 -04:00 |
Pietro Gagliardi
|
6707839e9b
|
Added what should have been the flicker-free code to Windows containers; it doesn't actually work 100%, though (not flicker-free; window backgrounds are now black), so it's #ifdef'd out for now.
|
2014-08-07 11:27:00 -04:00 |
Pietro Gagliardi
|
ddbb719918
|
Made containers transparent on Windows. This is the first of a four-part set (though IDK if it will be four commits) to make both containers and areas both transparent and flicker-free. Also added a Space() tab to the test program to test the transparency.
|
2014-08-06 21:34:31 -04:00 |
Pietro Gagliardi
|
2ea9987c98
|
Made the tabs of Tab controls on Windows children of the main tab control itself; this will let us be transparent... hopefully.
|
2014-08-06 20:53:11 -04:00 |
Pietro Gagliardi
|
d9f9d40294
|
Disabled Table column autoresizing on Windows for now as it causes weird bugs on Windows XP...
|
2014-08-06 19:56:14 -04:00 |
Pietro Gagliardi
|
c4e95a0bbf
|
Decided to set the frame before calling baselineOffsetFromBottom in xsizing_darwin.m, just to be safe.
|
2014-08-06 11:03:42 -04:00 |
Pietro Gagliardi
|
e1c3a9fe26
|
Removed areaPrefSize() from the Mac OS X backend; we now store the Area's size separately and return that for the preferred size instead.
|
2014-08-06 11:01:37 -04:00 |
Pietro Gagliardi
|
d307848c8c
|
Removed leftover TODOs: container does handle margins now.
|
2014-08-06 10:50:07 -04:00 |
Pietro Gagliardi
|
b3b91c68d0
|
Implemented reasonable table column autosizing on Windows.
|
2014-08-06 10:42:26 -04:00 |
Pietro Gagliardi
|
3dcdd05562
|
Removed the NSMakeRect(0, 0, 100, 100) dummy init rect from the Mac OS X backend; NSZeroRect works fine for this after all. Thanks to jer in irc.freenode.net/#macdev.
|
2014-08-05 22:02:57 -04:00 |
Pietro Gagliardi
|
46bb97cb75
|
Fixed area_windows.c data types.
|
2014-08-05 21:34:58 -04:00 |
Pietro Gagliardi
|
b8bf4f28b6
|
More TODOs.
|
2014-08-05 20:48:42 -04:00 |
Pietro Gagliardi
|
1744b08dd8
|
Made standalone labels aligned to the top-left on GTK+.
|
2014-08-05 20:47:56 -04:00 |
Pietro Gagliardi
|
03f2873f68
|
Set vertical alignment of Labels next to Areas on GTK+.
|
2014-08-05 20:43:56 -04:00 |
Pietro Gagliardi
|
045f8859f7
|
Removed leftover TODO.
|
2014-08-05 19:01:56 -04:00 |
Pietro Gagliardi
|
1badd53681
|
Renamed textField to textfield; this is just for the private implementation.
|
2014-08-05 17:46:42 -04:00 |
Pietro Gagliardi
|
c460c11b65
|
Added the hollow brush to the list of static data initialized by uiinit() in the Windows backend; this lets other parts of the package use the hollow brush without the need for additional error checking.
|
2014-08-05 16:30:12 -04:00 |
Pietro Gagliardi
|
c6674d1e9e
|
Re-added the NSApplication support code for Area on Mac OS X.
|
2014-08-05 14:40:08 -04:00 |
Pietro Gagliardi
|
6b7660a671
|
Added the Mac OS X implementation of Area... somewhat messily, but eh.
|
2014-08-05 14:33:25 -04:00 |
Pietro Gagliardi
|
6de4565e0c
|
Removed sizer_windows.go now that it is no longer needed.
|
2014-08-05 13:15:39 -04:00 |
Pietro Gagliardi
|
96c81996ba
|
Fixed errors with Area on Windows. Woo!
|
2014-08-05 12:49:08 -04:00 |
Pietro Gagliardi
|
57df87f11d
|
Fixed lots of syntax errors, including one where I forgot a parameter to a Windows API call, oops... the problem is present in the main package being replaced too. :x It will be fixed when I move this redo up. Also added Area initializer to uiinit(). NOW does it work???
|
2014-08-05 12:29:37 -04:00 |
Pietro Gagliardi
|
fada6849c4
|
Mostly completed writing Area on Windows. Now to fix compiler errors.
|
2014-08-05 12:17:44 -04:00 |
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 |