Pietro Gagliardi
bf411e787e
Implemented uiColorButton on OS X.
2016-05-15 20:51:33 -04:00
Pietro Gagliardi
2226c54430
Made the font dialog respect our new modality rules on OS X.
2016-05-15 19:56:01 -04:00
Pietro Gagliardi
6a81921c1a
More TODOs.
2016-05-15 19:26:58 -04:00
Pietro Gagliardi
f855453aab
More TODOs.
2016-05-15 19:06:20 -04:00
Pietro Gagliardi
0552e7c4a1
Revert "Made other windows get events when a dialog is running on OS X. Of course I only now realize this creates a recursiion problem..."
...
This isn't going to work. The only real solution is to disable every window like we're already doing here, make sure it happens on GTK+, and re-add the dialog helper stuff on Windows.
This reverts commit 20994639c0
.
2016-05-15 19:04:35 -04:00
Pietro Gagliardi
20994639c0
Made other windows get events when a dialog is running on OS X. Of course I only now realize this creates a recursiion problem...
2016-05-15 16:26:43 -04:00
Pietro Gagliardi
2f2db46109
Reverted the uiTab changes to allow NULL. Still debating whether to allow NULL or not.
2016-05-15 13:56:53 -04:00
Pietro Gagliardi
717486b7a2
Fixed some OS X 10.7 build errors.
2016-05-14 23:44:07 -04:00
Pietro Gagliardi
2c692eda36
More TODOs.
2016-05-14 22:10:43 -04:00
Pietro Gagliardi
fd9f6cea6a
Allowed uiGroups and uiTabs to have no and NULL controls with defined behavior on OS X. Actually added the test code this time.
2016-05-14 22:09:02 -04:00
Pietro Gagliardi
0e785d886b
Started tests for truly empty uiGroups and uiTabs; started banning NULL in uiBox.
2016-05-14 21:53:24 -04:00
Pietro Gagliardi
79a522efb3
More TODO resolution. Thanks to someone (mikeash?) in irc.freenode.org/#macdev.
2016-05-14 21:29:44 -04:00
Pietro Gagliardi
232839020f
More TODOs.
2016-05-14 11:39:51 -04:00
Pietro Gagliardi
0205f2e5ca
Got rid of complain() on GTK+.
2016-05-13 21:00:12 -04:00
Pietro Gagliardi
59eebb1e48
Cleaned up the debugging functions slightly. Now to convert the other backends.
2016-05-13 20:20:15 -04:00
Pietro Gagliardi
d52c92d2f8
Cleaned out complain()s in the OS X backend. Affects everything *except* drawtext.m, which will need its own migration.
2016-05-13 20:14:46 -04:00
Pietro Gagliardi
329fff82f6
Some more fixups and cleanups, especially in the matrix code.
2016-05-13 18:10:43 -04:00
Pietro Gagliardi
94587b660f
Some TODO resolution and stale TODO removal.
2016-05-13 17:54:10 -04:00
Pietro Gagliardi
8d5442b83f
Fixed the last remaining edge cases. We're done! Auto Layout works~ ♫
2016-05-13 13:28:20 -04:00
Pietro Gagliardi
8f55b7e331
Applied the previous edge case fix to the single-child layout stuff. Just one more edge case left!
2016-05-13 13:08:00 -04:00
Pietro Gagliardi
26f9d86800
Fixed Page 3's weird issues. We're so close to having this *just working*!
2016-05-13 12:54:05 -04:00
Pietro Gagliardi
73c92dfbb5
Some uiMultilineEntry fixes.
2016-05-12 21:28:30 -04:00
Pietro Gagliardi
533a9b150e
More fixes, this time to uiMultilineEntry. Almost there!
2016-05-12 21:24:12 -04:00
Pietro Gagliardi
b1680aa8e2
More notes.
2016-05-12 20:20:39 -04:00
Pietro Gagliardi
e3f822a003
Jiggled uiTab and uiGroup back to functioning properly when initially laid out.
2016-05-12 20:18:22 -04:00
Pietro Gagliardi
19006c46c6
Even more refinements.
2016-05-12 17:23:35 -04:00
Pietro Gagliardi
257c182f2b
More work. I can't figure out where these phantom constraints come from.
2016-05-12 17:09:24 -04:00
Pietro Gagliardi
f5549a19bf
Even more work to bring us closer to the correct answer. uiGroups look right again. We've still got some problems...
2016-05-12 12:34:35 -04:00
Pietro Gagliardi
28c9efa972
Some more work, edging us ever-closer to the correct solution...
2016-05-12 12:26:43 -04:00
Pietro Gagliardi
60c988100a
Some more uiBox work. We've ALMOST got it; just a few more tweaks to get groupboxes and tabs right and to fix page 3...
2016-05-12 11:57:32 -04:00
Pietro Gagliardi
b564d578ba
More fixes. Still not all there...
2016-05-12 02:03:23 -04:00
Pietro Gagliardi
21f9b9666b
Fixed more problems.
2016-05-12 01:49:00 -04:00
Pietro Gagliardi
63dac7c13a
Fixed build errors and some runtime errors. Things don't look right yet...
2016-05-12 01:31:47 -04:00
Pietro Gagliardi
f66b5a8873
Migrated uiBox. Now to test.
2016-05-12 01:23:55 -04:00
Pietro Gagliardi
89425f0fa7
Finished the new uiTab. That just leaves the new uiBox.
2016-05-12 00:43:52 -04:00
Pietro Gagliardi
1f96ee9b54
Started establishing a tabPage for uiTab on OS X. The constraints code was added now, I guess.
2016-05-11 19:11:26 -04:00
Pietro Gagliardi
7d874ee911
Migrated uiGroup. Before we do uiTab, I want to refactor it a bit like we have with uiBox...
2016-05-11 18:28:42 -04:00
Pietro Gagliardi
178c0301c2
Started implementing the new logic; darwin/window.m implemented. darwin/group.m and darwin/tab.m will be similar, so they use common code here (but this is NOT child.m all over again; this is ONLY for layout!).
2016-05-11 18:06:29 -04:00
Pietro Gagliardi
73eed9289c
Instituted a new system: the parent control is responsible for extra space at the edges of controls, not the controls themselves. Let's hope this works better.
2016-05-11 17:00:01 -04:00
Pietro Gagliardi
8fb8b0eeba
Nuked ALL the existing Auto Layout stuff. Let's do this again, and this time, do it *right*.
2016-05-11 16:46:42 -04:00
Pietro Gagliardi
d110a836ba
Fixed a labelling error.
2016-05-08 14:03:59 -04:00
Pietro Gagliardi
32ef7c3fd3
Revert "Started implementing the previous commit's changes in a more permanent way: set REAL hugging priorities and implemented them on uiBox."
...
This reverts commit 07930279c0
.
2016-05-08 11:29:09 -04:00
Pietro Gagliardi
f413456b60
Revert "Did the rest of it as stubs. Now to fix issues..."
...
This reverts commit 854e87b90a
.
2016-05-08 11:28:51 -04:00
Pietro Gagliardi
b20b790254
Revert "Removed the default box hugging priorities. We'll set them in group, tab, and window."
...
This reverts commit a485319c8b
.
2016-05-08 11:28:28 -04:00
Pietro Gagliardi
a485319c8b
Removed the default box hugging priorities. We'll set them in group, tab, and window.
2016-05-08 11:00:01 -04:00
Pietro Gagliardi
854e87b90a
Did the rest of it as stubs. Now to fix issues...
2016-05-08 10:53:52 -04:00
Pietro Gagliardi
07930279c0
Started implementing the previous commit's changes in a more permanent way: set REAL hugging priorities and implemented them on uiBox.
2016-05-08 10:42:20 -04:00
Pietro Gagliardi
8867742ec0
Found a possible solution! Needs fine-tuning.
2016-05-08 02:54:08 -04:00
Pietro Gagliardi
2aef3031e3
More TODOs.
2016-05-07 10:47:59 -04:00
Pietro Gagliardi
f8b113dd18
Fixed the controlgallery somehow.
2016-05-07 10:43:12 -04:00
Pietro Gagliardi
11ef2c9076
Got rid of the messy -layout logic and just did that stuff in -updateConstraints instead; much simpler that way. Thanks to rudy in irc.freenode.net/#macdev.
2016-05-07 10:31:56 -04:00
Pietro Gagliardi
e6592f6f04
More TODOs.
2016-05-07 10:07:37 -04:00
Pietro Gagliardi
b03aa35da8
Adjusted uiGroup, uiTab, and uiWindow likewise. More TODOs.
2016-05-07 01:34:33 -04:00
Pietro Gagliardi
305b4b98cb
Fixed up darwin/box.m and let it work properly. Now to just define the appropriate methods for the other controls...
2016-05-07 01:25:32 -04:00
Pietro Gagliardi
abe502a046
Rewrote uiBox with everything in it. Let's test it so far.
2016-05-07 01:11:58 -04:00
Pietro Gagliardi
ecd1ef2231
Started work on rewriting uiBox.
2016-05-06 23:27:46 -04:00
Pietro Gagliardi
c04abae6e4
First part: get rid of noStretchyView. We won't need it anymore.
2016-05-06 23:03:31 -04:00
Pietro Gagliardi
a3629e752d
Added default implementations of the new methods where necessary. Before we go around implementing them, it's time for a massive rewrite of uiBox.
2016-05-06 21:50:14 -04:00
Pietro Gagliardi
f9e3b7a2d5
Okay we've got a handle on how this is supposed to work now I think; I just need to figure out how to abstract out this should-expand behavior...
2016-05-06 20:55:33 -04:00
Pietro Gagliardi
e462c7a660
Okay I think we're on to something now...
2016-05-06 20:34:02 -04:00
Pietro Gagliardi
117b8c92d2
Tried to change uiBox to use updateConstraints instead of a relayout() function. Maybe this will end my woes...
2016-05-06 19:21:41 -04:00
Pietro Gagliardi
ac84b66724
Separated the presence of a no-stretchy view from the presence of a stretchy control. This will make experimenting easier.
2016-05-02 15:47:48 -04:00
Pietro Gagliardi
09a7fb7123
Decided not to do the drag/drop for our font button; I don't know what even provides a NSFont source, but the font panel does not.
2016-05-02 13:30:24 -04:00
Pietro Gagliardi
b6a396dd4a
Deactivated the current font button on window close and implemented cleanup, both on OS X.
2016-05-02 10:32:39 -04:00
Pietro Gagliardi
c5f6a09200
More auto layout commentary.
2016-05-01 16:26:04 -04:00
Pietro Gagliardi
896a779e1e
More auto layout fixes and hacks and TODOs.
2016-05-01 16:25:05 -04:00
Pietro Gagliardi
8efa8c19db
Minor warning changes.
2016-05-01 16:15:54 -04:00
Pietro Gagliardi
de4540dfca
Some comment explanation.
2016-05-01 12:02:36 -04:00
Pietro Gagliardi
896c2590c5
FIxed the various uiGroup glitches. Woo!
2016-05-01 12:00:10 -04:00
Pietro Gagliardi
022f0a2591
More TODOs.
2016-05-01 11:43:34 -04:00
Pietro Gagliardi
aecbf078d3
Fixed some of the uiBox glitches.
2016-05-01 11:25:35 -04:00
Pietro Gagliardi
b653a8ac2c
Fixed runtime errors. It MOSTLY works!
2016-04-30 18:40:09 -04:00
Pietro Gagliardi
1038b8d892
Compile fixes. Oh boy...
2016-04-30 18:07:36 -04:00
Pietro Gagliardi
c87a932a6d
Rewrote darwin/box.m's layout code to create constraints directly. Let's try this out.
2016-04-30 17:45:44 -04:00
Pietro Gagliardi
835c711a24
Started reworking the auto layout system. uiBox is next.
2016-04-30 17:14:14 -04:00
Pietro Gagliardi
d7d7d4fd76
Fixed the SyncEnableState() machinery not quite working properly.
2016-04-25 18:07:29 -04:00
Pietro Gagliardi
7b0780be2a
Made SyncEnableState() a uiDarwinControl method instead of a uiControl method since it's not needed on GTK+.
2016-04-25 17:52:16 -04:00
Pietro Gagliardi
98e7afc5de
Freed most of the mapTables.
2016-04-25 13:47:24 -04:00
Pietro Gagliardi
d0d0efce1a
Fixed build errors. Now to test!
2016-04-25 13:38:17 -04:00
Pietro Gagliardi
3ca4a28bb3
Settled the SetParent stuff. NOW we can test.
2016-04-25 12:59:45 -04:00
Pietro Gagliardi
23c2998040
Migrated darwin/control.m. Forgot the SetParent/SetSuperview rule! One more commit before we can build...
2016-04-25 12:55:51 -04:00
Pietro Gagliardi
189d661b7f
Migrated darwin/tab.m and fixed up the other files. Now for darwin/control.m, then we can test...
2016-04-25 12:52:54 -04:00
Pietro Gagliardi
b50eda0303
Migrated darwin/group.m. That just leaves darwin/tab.m and a few fixups to a number of other controls.
2016-04-25 12:42:43 -04:00
Pietro Gagliardi
f0ca2dcee5
Migrated darwin/box.m.
2016-04-25 12:35:01 -04:00
Pietro Gagliardi
6e584f26d3
Migrated darwin/window.m.
2016-04-25 12:28:36 -04:00
Pietro Gagliardi
c36d5079db
Migrated the controls that don't have children to the new object method model on OS X.
2016-04-25 11:54:09 -04:00
Pietro Gagliardi
639a010a56
Tested everything by migrating darwin/combobox.m; fixed errors along the way. Also more TODOs.
2016-04-25 10:23:16 -04:00
Pietro Gagliardi
dda30cdb3c
Started the new uiControl infrastructure.
2016-04-24 19:22:21 -04:00
Pietro Gagliardi
cf51ec823f
Got rid of toplevelOwning(); I didn't like that one.
2016-04-24 18:23:00 -04:00
Pietro Gagliardi
bc0a1d43c9
Applied the new type system to the Windows backend and fixed some more C++ stupidity related to it.
2016-04-24 17:38:48 -04:00
Pietro Gagliardi
b6c54aac43
Fixed build errors. Let's test!
2016-04-24 16:14:19 -04:00
Pietro Gagliardi
ded1ee6997
Removed typed stuff from darwin/menu.m. Now let's try building it.
2016-04-24 16:07:45 -04:00
Pietro Gagliardi
5efad5e850
Migrated the uiNewControl() definitions on OS X. This just leaves uiMenu.
2016-04-24 16:03:13 -04:00
Pietro Gagliardi
b2c9577cb9
Set up all the control signatures and the framework for signature-based control types on OS X.
2016-04-24 15:46:29 -04:00
Pietro Gagliardi
f60178798f
Removed common type code.
2016-04-24 15:08:48 -04:00
Pietro Gagliardi
7b0f930185
Removed all the type function declarations from all the controls. More TODOs.
2016-04-24 15:04:36 -04:00
Pietro Gagliardi
cfa1b6bf0a
Added uiFontButtonFont() and uiFontButtonOnChanged(); implemented on OS X.
2016-04-20 13:40:54 -04:00
Pietro Gagliardi
721269b3eb
Implemented colored text on OS X and Windows.
2016-04-19 18:45:16 -04:00
Pietro Gagliardi
e786d664cb
Implemented text layout SetColor on OS X.
2016-04-19 16:06:50 -04:00
Pietro Gagliardi
5b74b2752e
Decided to use character offsets instead of byte offsets for text layout attributes. This removes the shaky code from the OS X and Windows backends to compute a list of character offsets for byte offsets. The equivalent code for GTK+ to convert chars to bytes will be much more solid; it will be written next.
2016-04-19 14:39:33 -04:00