Pietro Gagliardi
|
79a7e18b8d
|
Implemented the text functions on Windows.
|
2015-04-09 11:12:01 -04:00 |
Pietro Gagliardi
|
1f18d88f56
|
Split toUTF16() into a new file; other Windows text functions will also be there.
|
2015-04-09 09:24:08 -04:00 |
Pietro Gagliardi
|
723f2af8c6
|
Implemented the text routines on the GTK+ backend. They work!
|
2015-04-09 02:56:51 -04:00 |
Pietro Gagliardi
|
a0073727c8
|
Re-enabled the text manipulation code in the test program.
|
2015-04-09 02:43:49 -04:00 |
Pietro Gagliardi
|
ccdbdf011a
|
Implemented uiEntry on Mac OS X. Now I can get to writing the text and title functions...
|
2015-04-09 02:35:52 -04:00 |
Pietro Gagliardi
|
d6decf0abe
|
Implemented uiEntry on Windows.
|
2015-04-08 23:43:01 -04:00 |
Pietro Gagliardi
|
da45c51a82
|
Implemented uiEntry on GTK+.
|
2015-04-08 23:28:47 -04:00 |
Pietro Gagliardi
|
c6d3a068a9
|
Decided to call it uiEntry for now.
|
2015-04-08 23:22:59 -04:00 |
Pietro Gagliardi
|
d3f602f64a
|
Wrote up a new test program that will feature uiEntry when I write it (next).
|
2015-04-08 21:25:30 -04:00 |
Pietro Gagliardi
|
c6d7e33121
|
Decided to not call InvalidateRect() in the Windows updateParent(); the Cocoa one doesn't either, and besides, if controls expose something then the parent areas would be invalidated anyway :/ More TODO removal.
|
2015-04-08 21:08:53 -04:00 |
Pietro Gagliardi
|
fef91d9820
|
"Fixed" initial Windows window shows for now (see previous commit). Not yet a clean fix; need to test some things on real Windows first.
|
2015-04-08 20:53:34 -04:00 |
Pietro Gagliardi
|
87bb732832
|
Fixed flicker and minimize issues on Windows. Simple mistake; should have used WM_WINDOWPOSCHANGED instead of WM_WINDOWPOSCHANGING. Startup looks wrong; will fix that next.
|
2015-04-08 20:37:32 -04:00 |
Pietro Gagliardi
|
47723aa8d9
|
More TODO resolution.
|
2015-04-08 20:14:10 -04:00 |
Pietro Gagliardi
|
7d349d6a28
|
More TODO resolution.
|
2015-04-08 20:01:33 -04:00 |
Pietro Gagliardi
|
317217de5a
|
Decided not to take the suggestions of some TODOs in ui.h.
|
2015-04-08 19:53:15 -04:00 |
Pietro Gagliardi
|
cbc0403e6a
|
Removed some stale TODOs.
|
2015-04-08 19:22:13 -04:00 |
Pietro Gagliardi
|
410378b451
|
And implemented proper control showing on Mac OS X.
|
2015-04-08 19:14:22 -04:00 |
Pietro Gagliardi
|
7c2a32fec6
|
Implemented the parent updating logic on GTK+.
|
2015-04-08 18:58:59 -04:00 |
Pietro Gagliardi
|
c1c78b5aeb
|
More TODOs.
|
2015-04-08 18:32:32 -04:00 |
Pietro Gagliardi
|
06c2bb7c25
|
Fixed initial (and future) window redraw issues on Windows.
|
2015-04-08 18:04:46 -04:00 |
Pietro Gagliardi
|
7b104667ab
|
More TODO resolution.
|
2015-04-08 17:19:44 -04:00 |
Pietro Gagliardi
|
ec070204a5
|
More TODO resolving. More TODOs.
|
2015-04-08 17:08:25 -04:00 |
Pietro Gagliardi
|
a97c9297c3
|
Removed a stale TODO.
|
2015-04-08 16:35:03 -04:00 |
Pietro Gagliardi
|
6d7140160b
|
Decided not to turn new control scrolling parameters into a bitfield.
|
2015-04-08 16:27:45 -04:00 |
Pietro Gagliardi
|
abf976ef44
|
Removed the need for specifying if a GTK+ widget needs to be in a GtkViewport for it to be scrollable; the new control code finds out itself now in the same way newer versions of GTK+ do.
|
2015-04-08 16:24:11 -04:00 |
Pietro Gagliardi
|
090977fa0a
|
Cleaned up window_darwin.m's data structure juggling.
|
2015-04-08 16:04:27 -04:00 |
Pietro Gagliardi
|
bb229f9dc1
|
Built up a better system for handling data cleanup on Mac OS X; thanks to http://stackoverflow.com/questions/29522715/is-there-a-reliable-way-to-destroy-private-data-structures-when-a-standard-nsvie.
|
2015-04-08 15:53:50 -04:00 |
Pietro Gagliardi
|
25b33c2afd
|
More TODOs.
|
2015-04-08 05:13:38 -04:00 |
Pietro Gagliardi
|
ab393ed6b2
|
Fixed compilation errors. Hm, nothing is still freed...
|
2015-04-08 04:48:03 -04:00 |
Pietro Gagliardi
|
a850ea3ac5
|
Cleaned up the uiWindow Darwin implementation. Let's try this again...
|
2015-04-08 04:38:34 -04:00 |
Pietro Gagliardi
|
941825e190
|
Cleaned out some of that gunk. I can't avoid subclassing the standard controls, but making it so that the uiControl returned by uiDarwinNewControl() can be freed by the caller will help.
|
2015-04-08 04:35:50 -04:00 |
Pietro Gagliardi
|
4ab6251449
|
Wrote up cleanup gunk on Mac OS X. Really gunk; I don't like what all this does but I don't think there's another way.
|
2015-04-08 03:38:08 -04:00 |
Pietro Gagliardi
|
5597606f18
|
Better monitoring of Objective-C objects (including main GUI objects).
|
2015-04-08 02:28:42 -04:00 |
Pietro Gagliardi
|
d37bc67158
|
Cleaned up memory leaks in the GTK+ backend.
|
2015-04-08 01:16:22 -04:00 |
Pietro Gagliardi
|
f5c8bdd4b3
|
Finished Windows cleanup management. Everything (almost, only parentWindow is still around, but that shouldn't be a uiWindow to begin with) now cleaned!
|
2015-04-08 00:51:50 -04:00 |
Pietro Gagliardi
|
54e947eed3
|
Started work on ensuring things get cleaned up. Added a destroy() method to uiControl and implemented most of the work for Windows.
|
2015-04-08 00:43:35 -04:00 |
Pietro Gagliardi
|
521829a0a6
|
Added allocation logging to Objective-C objects. Fixed some Mac OS X build issues.
|
2015-04-08 00:27:03 -04:00 |
Pietro Gagliardi
|
1d828c8deb
|
Added an awk script to check for leaks in the memory logging output we just added.
|
2015-04-07 23:53:10 -04:00 |
Pietro Gagliardi
|
66788e6edb
|
Implemented the memory logging.
|
2015-04-07 23:40:18 -04:00 |
Pietro Gagliardi
|
49ee58ca36
|
Decided to remove the logging for now. Will inject it right into the allocation system later.
|
2015-04-07 22:58:06 -04:00 |
Pietro Gagliardi
|
3fc36ec582
|
More allocation logging. I wonder if I can just log directly in the allocators themselves...
|
2015-04-07 22:54:21 -04:00 |
Pietro Gagliardi
|
33b1c29de8
|
More TODO cleanup.
|
2015-04-07 22:48:02 -04:00 |
Pietro Gagliardi
|
1e263930eb
|
Started working on code to monitor creation and deletion of UI objects correctly.
|
2015-04-07 22:46:15 -04:00 |
Pietro Gagliardi
|
c6daf8d308
|
Added WS_TABSTOP to uiButton on Windows.
|
2015-04-07 22:23:25 -04:00 |
Pietro Gagliardi
|
002d95c2c2
|
Resolved a bunch of TODOs. Added one.
|
2015-04-07 22:19:24 -04:00 |
Pietro Gagliardi
|
5719004a97
|
Added loading of the standard user32.dll class replacements to comctl32_windows.c.
|
2015-04-07 22:01:42 -04:00 |
Pietro Gagliardi
|
c4fa92e18f
|
Decided to remove containerShow() and containerHide() for now.
|
2015-04-07 21:05:47 -04:00 |
Pietro Gagliardi
|
1bb187d55b
|
Implemented new control preferredSize() on Mac OS X. Now that Stack works everywhere, I can resolve TODOs.
|
2015-04-07 20:28:28 -04:00 |
Pietro Gagliardi
|
89643f70f7
|
Changed the GTK+ new control system from using g_object_newv() to using g_object_new_valist() due to weird crashes.
|
2015-04-07 19:47:44 -04:00 |
Pietro Gagliardi
|
12021269b7
|
Fixed compiler warnings. Stack works!
|
2015-04-07 19:36:46 -04:00 |
Pietro Gagliardi
|
42204af086
|
Implemented uiButton.preferredSize() on Windows. This includes adding a function to get the width of text in a control.
|
2015-04-07 19:32:16 -04:00 |
Pietro Gagliardi
|
38eecd3fc3
|
Wrote in the Stack test. The only thing left is to implement uiButton.preferredSize()...
|
2015-04-07 19:11:21 -04:00 |
Pietro Gagliardi
|
ec332870c2
|
Fixed compilation errors.
|
2015-04-07 19:08:39 -04:00 |
Pietro Gagliardi
|
7b1dfbf1d6
|
Unified the allocators across all platforms so that everyone uses uiAlloc() and friends.
|
2015-04-07 19:04:09 -04:00 |
Pietro Gagliardi
|
03d94db0fd
|
Added uiStack. Not yet tested; need to do a few things first.
|
2015-04-07 18:53:09 -04:00 |
Pietro Gagliardi
|
d9de0c186c
|
More TODOs.
|
2015-04-07 16:59:23 -04:00 |
Pietro Gagliardi
|
77a60d63a6
|
Fixed compiler errors and bugs. uiButton on Mac OS X works!
|
2015-04-07 16:38:51 -04:00 |
Pietro Gagliardi
|
3969095a33
|
Implemented uiButton on Mac OS X. Now to fix build issues and test...
|
2015-04-07 16:12:28 -04:00 |
Pietro Gagliardi
|
96e25cf502
|
Added the Mac OS X uiContainer. Added it to uiWindow. Added the Mac OS X coordinate system mirroring to the new control logic. Renamed *_darwin.c to *_darwin.m.
|
2015-04-07 15:45:56 -04:00 |
Pietro Gagliardi
|
a013fe6384
|
Added the uiDarwinControl logic.
|
2015-04-07 14:42:52 -04:00 |
Pietro Gagliardi
|
4a52806d70
|
Fixed button showing on GTK+. GTK+ uiButton done!
|
2015-04-07 14:13:42 -04:00 |
Pietro Gagliardi
|
3c427ed799
|
Implemented uiButton on GTK+. All we need to do is get it to show up...
|
2015-04-07 13:58:50 -04:00 |
Pietro Gagliardi
|
205cc9c2cf
|
Fixed compilation issues. Now to implement uiButton on GTK+.
|
2015-04-07 13:37:03 -04:00 |
Pietro Gagliardi
|
5b929084f8
|
Tied everything together. Now to fix build issues.
|
2015-04-07 13:22:46 -04:00 |
Pietro Gagliardi
|
587da1f40f
|
Added uiContainer, the GtkFixed equivalent for use by the GTK+ backend. Fixed up formatting of the uipriv_*.h files.
|
2015-04-07 12:59:01 -04:00 |
Pietro Gagliardi
|
698a0e5c74
|
Added the new native control code to the GTK+ backend. Fixed some missing statics in the Windows one too.
|
2015-04-07 12:17:05 -04:00 |
Pietro Gagliardi
|
32c6555fc0
|
Moved Windows container functions from util_windows.c to container_windows.c.
|
2015-04-07 11:39:15 -04:00 |
Pietro Gagliardi
|
0ec9dc9320
|
_snprintf_s() is not supported on Windows XP...
|
2015-04-07 04:22:30 -04:00 |
Pietro Gagliardi
|
3b52095ab0
|
Added uiControlHandle() and fixed other uiButton issues.
|
2015-04-07 04:12:03 -04:00 |
Pietro Gagliardi
|
a7293951f7
|
Wrote up the initial uiButton implementation. It (mostly; just needs text and for that I need to add a uiControlHandle()) works!
|
2015-04-07 04:02:21 -04:00 |
Pietro Gagliardi
|
54dd1f4001
|
Hooked up resizing. Now to make a control that uses this.
|
2015-04-07 03:39:47 -04:00 |
Pietro Gagliardi
|
c404590960
|
Fixed build issues. Now I just need to hook resizing into uiWindow and implement a control and we'll be set...
|
2015-04-07 03:12:34 -04:00 |
Pietro Gagliardi
|
a3c26ff652
|
Hooked everything else together (initialParent, ui_windows.h in uipriv_windows.h). Now to fix build issues... (like a missing const in const char * fixed here too).
|
2015-04-07 03:02:07 -04:00 |
Pietro Gagliardi
|
d14735883d
|
Hooked up the WM_COMMAND and WM_NOTIFY bouncers.
|
2015-04-07 02:55:33 -04:00 |
Pietro Gagliardi
|
3160b1ae1f
|
Added subclassing, which finishes off newcontrol_windows.c.
|
2015-04-07 02:46:27 -04:00 |
Pietro Gagliardi
|
816461ecbf
|
Added Common Controls code again (because we're going to need the subclassing functions now).
|
2015-04-07 02:11:31 -04:00 |
Pietro Gagliardi
|
fc3456f5e1
|
More Windows control work.
|
2015-04-07 01:51:17 -04:00 |
Pietro Gagliardi
|
dd8de11cc2
|
More work on the Windows control hooking.
|
2015-04-07 01:33:26 -04:00 |
Pietro Gagliardi
|
ab936d304f
|
Added a public API for creating raw Windows controls. Removed include guards from uipriv_*.h.
|
2015-04-07 00:56:06 -04:00 |
Pietro Gagliardi
|
1d76d53593
|
Changed ui_*.h to uipriv_*.h pending a public non-portable API.
|
2015-04-07 00:26:27 -04:00 |
Pietro Gagliardi
|
06adf7488d
|
Decided to start with the parenting stuff now.
|
2015-04-07 00:23:01 -04:00 |
Pietro Gagliardi
|
35e1f8e14c
|
Started writing code for handling single-HWND controls on Windows. Similar code will exist for single-GtkWidget controls on GTK+ and single-NSView controls on Cocoa.
|
2015-04-06 22:26:53 -04:00 |
Pietro Gagliardi
|
93b99a690c
|
Started working on uiControl.
|
2015-04-06 21:53:31 -04:00 |
Pietro Gagliardi
|
685844c594
|
Fixed initial Mac OS X code.
|
2015-04-06 20:01:14 -04:00 |
Pietro Gagliardi
|
e4d6d11925
|
Started writing the same but for Mac OS X. This time it's not tested yet; will test now.
|
2015-04-06 19:04:13 -04:00 |
Pietro Gagliardi
|
9001ca34f7
|
Implemented what we have so far, but on Windows.
|
2015-04-06 17:41:33 -04:00 |
Pietro Gagliardi
|
d1be6e3ce1
|
Added wintable's debugging printers to the new UI code.
|
2015-04-06 12:41:02 -04:00 |
Pietro Gagliardi
|
95440a3be1
|
Renamed some files. More TODOs.
|
2015-04-06 12:26:17 -04:00 |
Pietro Gagliardi
|
2f2836fa65
|
More precise cleanup in GTK+ uiInitErrorFree().
|
2015-04-06 12:25:16 -04:00 |
Pietro Gagliardi
|
ee1653f542
|
Started doing the C rewrite. Defined the basic initialization and main loop and window API and implemented them on GTK+.
|
2015-04-06 12:20:51 -04:00 |
Pietro Gagliardi
|
2ca0ba2072
|
Started rewrite #3. The first file up for bat is an ID system for safer C/Go interop.
|
2015-02-23 23:10:38 -05:00 |