Pietro Gagliardi
|
e869e1b34e
|
Fixed notification-sending issue on Windows.
|
2015-04-13 09:31:57 -04:00 |
Pietro Gagliardi
|
b2de01f46c
|
Found the wine bug; will fix it next
|
2015-04-13 02:21:20 -04:00 |
Pietro Gagliardi
|
8b6508a6fb
|
Fixed some build warnings.
|
2015-04-13 00:45:34 -04:00 |
Pietro Gagliardi
|
5995af00e6
|
Fixed initial content area size on uiWindows.
|
2015-04-13 00:44:27 -04:00 |
Pietro Gagliardi
|
876971ad41
|
More TODOs. The problems I noticed earlier only happen on wine, so...
|
2015-04-13 00:36:30 -04:00 |
Pietro Gagliardi
|
07944e8c1d
|
Fixed a small undefined-behavior bug in the parent code. Still not working...
|
2015-04-13 00:04:43 -04:00 |
Pietro Gagliardi
|
2b412296f1
|
Got rid of struct tabPage (it's just an array of uiParent *s now) and added a uiParentUpdate(). Thought that would fix it, but nope...
|
2015-04-12 23:20:09 -04:00 |
Pietro Gagliardi
|
f726b74d32
|
Fix helper: get rid of direct casts to HWND to make errors more obvious.
|
2015-04-12 23:14:56 -04:00 |
Pietro Gagliardi
|
a0bfb65122
|
Fixed some runtime issues. Not all there...
|
2015-04-12 23:02:23 -04:00 |
Pietro Gagliardi
|
95309affc0
|
Fixed build issues. Now to fix runtime issues...
|
2015-04-12 22:57:05 -04:00 |
Pietro Gagliardi
|
365e61dad2
|
Finished the Windows uiParent conversion, I think. Now to test.
|
2015-04-12 22:39:36 -04:00 |
Pietro Gagliardi
|
dcf581eb14
|
Some more uiParent migration.
|
2015-04-12 20:08:32 -04:00 |
Pietro Gagliardi
|
bdb0ffd67a
|
Finished writing parent_windows.c.
|
2015-04-12 19:25:16 -04:00 |
Pietro Gagliardi
|
54ba083fe9
|
Set up the foundation for the new Windows uiParent.
|
2015-04-12 19:19:06 -04:00 |
Pietro Gagliardi
|
74e4238fe7
|
Set up a unified system for containers, now called parents.
|
2015-04-12 18:34:54 -04:00 |
Pietro Gagliardi
|
425ede5288
|
Fixed Mac OS X tab page clearing. I'm really going to oneed to restructure the whole container system...
|
2015-04-12 16:00:09 -04:00 |
Pietro Gagliardi
|
142b2db9f5
|
Implemented uiTab on Mac OS X. It still doesn't quite work yet; switching from one tab and back doesn't show that tab's controls...
|
2015-04-12 15:46:58 -04:00 |
Pietro Gagliardi
|
f6a38383a7
|
Some comment and TODO adjustments.
|
2015-04-12 14:50:58 -04:00 |
Pietro Gagliardi
|
bac8bfdbf4
|
More TODOs.
|
2015-04-12 12:59:39 -04:00 |
Pietro Gagliardi
|
c8316ad45c
|
More TODOs.
|
2015-04-12 12:53:16 -04:00 |
Pietro Gagliardi
|
d0a1ae5bc9
|
Made controls transparent to tab backgrounds on Windows. It doesn't quite work right...
|
2015-04-12 12:38:25 -04:00 |
Pietro Gagliardi
|
0ee55d2d2d
|
Implemented uiTab on Windows.
|
2015-04-12 03:16:11 -04:00 |
Pietro Gagliardi
|
a001448e63
|
Added uiTab to the GTK+ backend.
|
2015-04-12 01:06:42 -04:00 |
Pietro Gagliardi
|
499611a3fe
|
Quick update/fix to the test program.
|
2015-04-12 01:01:56 -04:00 |
Pietro Gagliardi
|
8f6acdc8da
|
Fixed a major flaw in the GTK+ implementation I only realized now: by calling gtk_widget_show_all() in uiWindowShow(), we override the user's explicit hide settings! Fix it by calling gtk_widget_show() there (to only show the window), and gtk_widget_show_all() in both the new control constructor (to show the new control initially) and in the container constructor (to show that initially too).
|
2015-04-12 00:59:32 -04:00 |
Pietro Gagliardi
|
5f3eb6fbfa
|
Laid the foundation for tabs.
|
2015-04-12 00:30:44 -04:00 |
Pietro Gagliardi
|
bf74614ffc
|
More TODOs.
|
2015-04-12 00:15:20 -04:00 |
Pietro Gagliardi
|
995db0bc28
|
Implemented uiLabel on Mac OS X.
|
2015-04-11 23:49:34 -04:00 |
Pietro Gagliardi
|
bc4818786a
|
Implemented uiLabel on GTK+. More TODOs.
|
2015-04-11 22:49:41 -04:00 |
Pietro Gagliardi
|
03e2f8d6c1
|
Made the necessary adjustments to the test program to test labels (and futureproof other layout changes); getting and setting text on Windows works.
|
2015-04-11 22:33:23 -04:00 |
Pietro Gagliardi
|
f483be3630
|
Implemented uiLabel on Windows. We need to make a somewhat big change to the test program before we can test getting and setting the label's text, though...
|
2015-04-11 22:22:19 -04:00 |
Pietro Gagliardi
|
bdfa1828bb
|
Set up the foundation for uiLabel.
|
2015-04-11 21:53:49 -04:00 |
Pietro Gagliardi
|
7d6f31351d
|
Fixed the stupid 32-bit bug I did that fucking malloc pointer to struct instead of array of struct thing I always do again jesus fucking christ shit
|
2015-04-11 19:34:38 -04:00 |
Pietro Gagliardi
|
c80335a5f4
|
More TODOs.
|
2015-04-11 18:24:53 -04:00 |
Pietro Gagliardi
|
52d28a6196
|
Implemented show/hide/enable/disable on Mac OS X new controls.
|
2015-04-11 18:17:46 -04:00 |
Pietro Gagliardi
|
1ed1eb8dec
|
Removed a leftover line from the Go version of uiStack that is actually wrong in the C version; I thought it would fix the previous commit but it doesn't...
|
2015-04-11 17:26:48 -04:00 |
Pietro Gagliardi
|
a0033784b7
|
Okay I have no fucking idea what's going on
|
2015-04-11 17:23:36 -04:00 |
Pietro Gagliardi
|
a1b4b96bb9
|
Added the enable/disable/show/hide code to the Windows new control. Something is clobbering stacks; need to debug this...
|
2015-04-11 15:34:16 -04:00 |
Pietro Gagliardi
|
9ea35db265
|
Implemented show/hide/enable/disable on uiStack and fixed other bugs. It works!
|
2015-04-11 14:44:40 -04:00 |
Pietro Gagliardi
|
0430ca9102
|
Implemented making invisible children of uiStacks not count when drawing or calculating preferred size. Need to implement the new methods on uiStack itself before we can test.
|
2015-04-11 14:30:07 -04:00 |
Pietro Gagliardi
|
b57c885505
|
Implemented showing, hiding, enabling, and disabling for GTK+ controls.
|
2015-04-11 14:21:58 -04:00 |
Pietro Gagliardi
|
da0acba992
|
Laid the foundation for control showing, hiding, enabling, and disabling.
|
2015-04-11 14:12:12 -04:00 |
Pietro Gagliardi
|
d14716c4d3
|
Renamed some variables in stack.c and added some exposition to make the code make slightly more sense.
|
2015-04-11 13:51:37 -04:00 |
Pietro Gagliardi
|
22e11ca8f3
|
Cleaned up uiStack's data structures to use the stackControl structure instead of four memory blocks for the control-specific parameters.
|
2015-04-11 13:45:59 -04:00 |
Pietro Gagliardi
|
2602330223
|
Resolved snwprintf() issues once and for all. Thanks to cousteau, dorp, and kate in irc.freenode.net/##c.
|
2015-04-11 13:32:25 -04:00 |
Pietro Gagliardi
|
a34fe03eef
|
Decided to disable the initial parent window on Windows. If this causes problems, I can re-enable it later. More TODOs.
|
2015-04-11 12:40:09 -04:00 |
Pietro Gagliardi
|
812b70f6f0
|
More exposition.
|
2015-04-11 10:34:26 -04:00 |
Pietro Gagliardi
|
2b6e6c20a3
|
Decided to keep the current Windows API padding rules. We can change it later if needed.
|
2015-04-11 10:32:01 -04:00 |
Pietro Gagliardi
|
42b8e40816
|
More TODO resolution.
|
2015-04-11 09:39:04 -04:00 |
Pietro Gagliardi
|
1ab2a81903
|
Finished the Mac OS X destruction work.
|
2015-04-11 02:56:16 -04:00 |
Pietro Gagliardi
|
4afca8f2c2
|
More of the previous commit. More TODOs.
|
2015-04-10 23:24:21 -04:00 |
Pietro Gagliardi
|
c610c60ea6
|
Started to implement proper destruction logic for Mac OS X controls.
|
2015-04-10 23:22:46 -04:00 |
Pietro Gagliardi
|
47c89f6aef
|
More TODO resolution and some GTK+ uiWindow inconsistency (and future repeated-event bug waiting to happen) cleanup.
|
2015-04-10 21:48:50 -04:00 |
Pietro Gagliardi
|
da3009bfbb
|
More commentary and TODOs.
|
2015-04-10 21:37:08 -04:00 |
Pietro Gagliardi
|
a25ffeb334
|
More TODO resolution.
|
2015-04-10 21:29:05 -04:00 |
Pietro Gagliardi
|
94b621855c
|
Added REAL code for the initial parent of a control on Windows.
|
2015-04-10 19:56:23 -04:00 |
Pietro Gagliardi
|
bd05948219
|
Moved the control IDs TODO to TODO.md as that's a long-term TODO; it depends on how container controls play out.
|
2015-04-10 18:32:04 -04:00 |
Pietro Gagliardi
|
d5da551c8c
|
More TODO resolution.
|
2015-04-10 18:06:01 -04:00 |
Pietro Gagliardi
|
a788c1b212
|
Changed the Windows new control system to automatically assign the standard control font if a flag is set in the creation parameters structure.
|
2015-04-10 17:53:59 -04:00 |
Pietro Gagliardi
|
f650237614
|
Cleaned up Windows initialization error handling and migrated it to return the error message directly instead of through uiInitError.
|
2015-04-10 17:41:09 -04:00 |
Pietro Gagliardi
|
3069f38a9c
|
Removed autocorrect from Mac OS X uiEntries. Also moved uiFreeText() to text_darwin.m.
|
2015-04-10 17:06:59 -04:00 |
Pietro Gagliardi
|
d326407f05
|
Decided to kill uiInitError and return the message as a const char * instead. Will need to implement on Windows.
|
2015-04-10 16:54:06 -04:00 |
Pietro Gagliardi
|
e49f6f7da8
|
More TODOs.
|
2015-04-10 14:31:16 -04:00 |
Pietro Gagliardi
|
f37b94e73f
|
More TODOs.
|
2015-04-10 14:29:45 -04:00 |
Pietro Gagliardi
|
47fb015afb
|
More TODO resolution and cross-OS behavioral parity fixes.
|
2015-04-10 14:24:23 -04:00 |
Pietro Gagliardi
|
a272619581
|
More TODO resolution and debugging stuff.
|
2015-04-10 13:39:45 -04:00 |
Pietro Gagliardi
|
a38024c781
|
Eliminated direct use of strdup(); introduced uiDarwinNSStringToText() to do that work for us (and abort on failure).
|
2015-04-10 13:25:09 -04:00 |
Pietro Gagliardi
|
5bbaaeefe8
|
Chose not to use NSCAssert() in alloc_darwin.m.
|
2015-04-10 13:06:29 -04:00 |
Pietro Gagliardi
|
1d29a65a19
|
Fixed previous commit.
|
2015-04-10 12:47:02 -04:00 |
Pietro Gagliardi
|
5461b50081
|
Resolved TODOs in debug_windows.c.
|
2015-04-10 12:44:42 -04:00 |
Pietro Gagliardi
|
5f534068f1
|
More TODO resolutions. Thanks to David Hefferman for help.
|
2015-04-10 05:11:52 -04:00 |
Pietro Gagliardi
|
b95335e87e
|
Some TODO resolution; more TODOs.
|
2015-04-10 03:44:41 -04:00 |
Pietro Gagliardi
|
948416d04d
|
Resolved some TODOs (including one resolved a while ago on IRC but not removed until now; thanks various people in irc.freenode.net/#macdev).
|
2015-04-10 03:11:44 -04:00 |
Pietro Gagliardi
|
64b746c9a1
|
Decided that uiCheckboxSetChecked() should NOT trigger an event. This required changing the GTK+ backend to make it so; the Windows and Mac OS X backends are fine (setting their checkbox state programmatically will not send a signal; thanks to ThunderSnow in irc.freenode.net/#macdev for confirming this for Mac OS X).
|
2015-04-09 23:48:04 -04:00 |
Pietro Gagliardi
|
a9115b352c
|
More TODO resolution.
|
2015-04-09 23:24:18 -04:00 |
Pietro Gagliardi
|
50a227058a
|
Changed the allocation logging from a compile-time setting to the first initialization option.
|
2015-04-09 22:38:11 -04:00 |
Pietro Gagliardi
|
d9315e6d8f
|
Added uiWindowMargined() and implemented it on all platforms.
|
2015-04-09 21:11:56 -04:00 |
Pietro Gagliardi
|
a7281f9034
|
Added uiStackPadded().
|
2015-04-09 20:04:18 -04:00 |
Pietro Gagliardi
|
10ea719dc8
|
Removed direct vtable calls from uiControl.
|
2015-04-09 19:17:23 -04:00 |
Pietro Gagliardi
|
e78b625172
|
Changed onWM_NOTIFY() to only pass the NMHDR * in. The LPARAM is more useful as a NMHDR *, and the WPARAM contains duplicate data (http://blogs.msdn.com/b/oldnewthing/archive/2013/12/04/10473637.aspx). Ideally we wouldn't even have the NMHDR.idFrom (see previous commit message), but oh well :/
|
2015-04-09 19:07:41 -04:00 |
Pietro Gagliardi
|
7400cda3da
|
Changed onWM_COMMAND() to give our controls only the notification code. We don't want to give the control the ID part of wParam because that's (or that'll be) dynamically assigned based on control parenting and prior controls; we don't want to give the control the LPARAM since that contains the window handle and uiControl already has that.
|
2015-04-09 18:54:14 -04:00 |
Pietro Gagliardi
|
18a58e56fa
|
DlgUnit -> DlgUnits
|
2015-04-09 18:45:58 -04:00 |
Pietro Gagliardi
|
e752356037
|
Migrated the Mac OS X code to the new uiControl/uiSizing system.
|
2015-04-09 18:39:21 -04:00 |
Pietro Gagliardi
|
22db738dd1
|
Migrated the GTK+ backend to the new uiControl/uiSizing system.
|
2015-04-09 18:17:04 -04:00 |
Pietro Gagliardi
|
1a525dea31
|
Finished Windows conversion. Works perfectly!
|
2015-04-09 17:57:08 -04:00 |
Pietro Gagliardi
|
cba301abbc
|
More Windows conversion. Not done yet.
|
2015-04-09 17:46:26 -04:00 |
Pietro Gagliardi
|
5c06fc512b
|
Migrated the new control logic on Windows to the new uiControl/uiSizing system.
|
2015-04-09 17:24:26 -04:00 |
Pietro Gagliardi
|
46afda5dce
|
Migrated stack.c to the new uiControl.
|
2015-04-09 16:57:55 -04:00 |
Pietro Gagliardi
|
471b3a57e7
|
Big change time: decided to stop playing around with hiding and made both uiControl and uiSizing public. Also restructured uiSizing to make system-dependent data in another structure.
|
2015-04-09 16:37:04 -04:00 |
Pietro Gagliardi
|
92b43720b6
|
Decided to split control removal from parent into its own method removeParent() rather than automatically doing it in setParent().
|
2015-04-09 16:21:09 -04:00 |
Pietro Gagliardi
|
3f05be544c
|
Implemented padding in uiStack.
|
2015-04-09 15:59:40 -04:00 |
Pietro Gagliardi
|
8d64f695e0
|
Implemented the foundation for padding.
|
2015-04-09 15:30:24 -04:00 |
Pietro Gagliardi
|
8e0cd27605
|
Laid the foundation for padding.
|
2015-04-09 15:25:18 -04:00 |
Pietro Gagliardi
|
d146167321
|
Implemented uiWindowSetMargined() on GTK+.
|
2015-04-09 15:18:18 -04:00 |
Pietro Gagliardi
|
7c6beec879
|
Implemented uiWindowSetMargined() on Mac OS X.
|
2015-04-09 15:10:12 -04:00 |
Pietro Gagliardi
|
73f6841272
|
Implemented uiWindowSetMargined() on Windows.
|
2015-04-09 13:51:01 -04:00 |
Pietro Gagliardi
|
9c2fe78f78
|
Added uiWindowSetMargined().
|
2015-04-09 13:42:42 -04:00 |
Pietro Gagliardi
|
feefa627dc
|
Implemented all of uiCheckbox on GTK+.
|
2015-04-09 13:34:27 -04:00 |
Pietro Gagliardi
|
8b80b8c05d
|
Implemented uiCheckbox(Set)Checked() on Windows.
|
2015-04-09 13:10:32 -04:00 |
Pietro Gagliardi
|
6d93fce5b5
|
Implemented uiCheckbox(Set)Checked() on Mac OS X.
|
2015-04-09 13:01:23 -04:00 |