Pietro Gagliardi
|
41030b0a03
|
Made it so uiContainer on Windows only updates when we ask it to resize, not on every WM_WINDOWPOSCHANGED. More TODOs.
|
2015-05-10 12:57:13 -04:00 |
Pietro Gagliardi
|
bcafe6806a
|
Made uiTab on Windows only resize when explicitly asked to rsize, not on every WM_WINDOWPOSCHANGED. This is important for making resizes smooth.
|
2015-05-10 12:54:11 -04:00 |
Pietro Gagliardi
|
24d63adb51
|
Migrated the Windows backend to the new bin.
|
2015-05-10 12:48:11 -04:00 |
Pietro Gagliardi
|
a2cf4908a3
|
Started cleaning up bin handling. uiBin is now a real type and all of the things you need to do to a bin are its methods.
|
2015-05-10 12:36:14 -04:00 |
Pietro Gagliardi
|
4954d608f4
|
Got rid of a stray debugging line in windows/button.c.
|
2015-05-09 21:19:06 -04:00 |
Pietro Gagliardi
|
7bdc50c25a
|
Inhibited uiEntryOnChanged() with uiEntrySetText() on Windows.
|
2015-05-09 21:18:27 -04:00 |
Pietro Gagliardi
|
349d54b2f1
|
More commentary and TODOs about the previous commit(s).
|
2015-05-09 16:04:54 -04:00 |
Pietro Gagliardi
|
bd4716c949
|
Started code for handling WM_QUERYENDSESSION and its console equivalent.
|
2015-05-09 14:22:51 -04:00 |
Pietro Gagliardi
|
5e258c0c48
|
Implemented the Quit menu item shouldQuit() logic on Windows.
|
2015-05-09 10:53:38 -04:00 |
Pietro Gagliardi
|
a6c86cc863
|
More Windows uninit stuff.
|
2015-05-08 17:17:03 -04:00 |
Pietro Gagliardi
|
3f3191ea7a
|
More Windows uiUninit() implementation.
|
2015-05-08 15:01:23 -04:00 |
Pietro Gagliardi
|
04923399fe
|
Implemented uninitMenus() on Windows.
|
2015-05-08 14:23:22 -04:00 |
Pietro Gagliardi
|
85ca2a0901
|
Wrote uninitAlloc() on Windows.
|
2015-05-08 14:05:16 -04:00 |
Pietro Gagliardi
|
b60f17ee5a
|
Added type names to the memory allocator on Windows. More TODOs.
|
2015-05-08 10:34:59 -04:00 |
Pietro Gagliardi
|
27d6994bdc
|
Implemented stub uiUninit()s.
|
2015-05-07 22:32:17 -04:00 |
Pietro Gagliardi
|
6c9a122a7d
|
Changed the default uiWindowOnClosing() behavior. Decided to keep the int return.
|
2015-05-07 20:01:17 -04:00 |
Pietro Gagliardi
|
34f55321e0
|
Added a [libui] and a newline to the message printed by complain().
|
2015-05-07 19:34:45 -04:00 |
Pietro Gagliardi
|
ab5975eeb5
|
More TODOs.
|
2015-05-07 18:14:21 -04:00 |
Pietro Gagliardi
|
727b6871bc
|
Made uiFree(NULL) illegal to spot bugs.
|
2015-05-07 17:45:55 -04:00 |
Pietro Gagliardi
|
efbdf14d5f
|
Made all instances of SetWindowPos() and MoveWindow() use the same wrapper functions so they can all use the same flags. Only the SetWindoPos() that sets the initial size of a uiWindow is unaffected (since that is a special case).
|
2015-05-07 17:40:13 -04:00 |
Pietro Gagliardi
|
49595bb18d
|
Set up proper -m flag manipulation for cross-compiling builds.
|
2015-05-07 16:02:34 -04:00 |
Pietro Gagliardi
|
598a499072
|
Changed ARCH on Windows to be amd64 for a 64-bit build instead of just 64 for consistency with the OS X one.
|
2015-05-07 15:47:29 -04:00 |
Pietro Gagliardi
|
2107595ce7
|
"Exported" uiSizing fields.
|
2015-05-07 14:33:46 -04:00 |
Pietro Gagliardi
|
f74394fbac
|
"Exported" uiSizingSys fields.
|
2015-05-07 14:22:31 -04:00 |
Pietro Gagliardi
|
6e4845f11f
|
Fixed tab order on Windows.
|
2015-05-07 14:20:31 -04:00 |
Pietro Gagliardi
|
38a5341603
|
Fixed public/private namespace clobbering in the Windows backend and a wrong name in ui_darwin.h.
|
2015-05-07 12:58:33 -04:00 |
Pietro Gagliardi
|
91f7096257
|
Resolved a TODO; we were already doing the right hting.
|
2015-05-07 12:25:44 -04:00 |
Pietro Gagliardi
|
bb617883d1
|
"Fixed" box padded application bug on Windows; more related TODOs.
|
2015-05-07 12:24:02 -04:00 |
Pietro Gagliardi
|
94da27c9ba
|
Decided not to rewrite the resizing logic in windows/tab.c for now. Adjusted a few comments as well.
|
2015-05-07 10:14:49 -04:00 |
Pietro Gagliardi
|
316657e09e
|
I'm wrong; read-only edit controls on Windows DO get their backgrounds from their parents. Thanks gamax92 for help confirming.
|
2015-05-07 00:23:35 -04:00 |
Pietro Gagliardi
|
6a1661fd91
|
Implemented read-only uiEntries on Windows.
|
2015-05-06 22:21:11 -04:00 |
Pietro Gagliardi
|
5128fed0af
|
Implemented uiEntryOnChanged() on Windows.
|
2015-05-06 20:06:16 -04:00 |
Pietro Gagliardi
|
5b65c58715
|
Removed a stale TODO.
|
2015-05-06 18:56:12 -04:00 |
Pietro Gagliardi
|
329b4f29dd
|
Implemented tab navigation across tabs on Windows.
|
2015-05-06 18:37:21 -04:00 |
Pietro Gagliardi
|
c5e5fbd909
|
Laid the foundation for proper tab navigation in uiTabs.
|
2015-05-06 18:05:07 -04:00 |
Pietro Gagliardi
|
d247e76866
|
Implemented uiTabInsertPageBefore() on Windows.
|
2015-05-06 14:09:20 -04:00 |
Pietro Gagliardi
|
956b78718f
|
Migrated windows/tab.c to ptrarray and fixed the build.
|
2015-05-06 13:37:23 -04:00 |
Pietro Gagliardi
|
8c3ca7fcce
|
Fixed WM_PRINTCLIENT on uiContainers in windows/container.c. It works.
|
2015-05-06 12:39:06 -04:00 |
Pietro Gagliardi
|
047913d1a6
|
Made paintContainerBackground() in windows/container.c respect the clip rect.
|
2015-05-06 11:30:09 -04:00 |
Pietro Gagliardi
|
74fc1aea45
|
Split out the parent drawing in windows/container.c into its own function. This is necessary to allow for clipping.
|
2015-05-06 11:10:28 -04:00 |
Pietro Gagliardi
|
7e0d79713b
|
Changed the uiContainer code on Windows to use WM_PRINTCLIENT directly instead of creating the brush each time. Thanks to Barmak Shemirani (http://stackoverflow.com/questions/30066108/brush-origin-patblt-and-mapwindowrect-confusion) for inspiring me with this solution that I should have thought of myself =P
|
2015-05-06 02:20:08 -04:00 |
Pietro Gagliardi
|
526e9b81ea
|
Fixed bin destruction handling on the Windows backend.
|
2015-05-06 00:52:24 -04:00 |
Pietro Gagliardi
|
bc2e6d134b
|
Started working on a pointer array implementation. This also means we'll need the C standard library for memcpy()/memmove(), so drop the DisableThreadLibraryCalls() TODO.
|
2015-05-05 22:55:02 -04:00 |
Pietro Gagliardi
|
657cbe2013
|
Updated a TODO.
|
2015-05-05 20:57:30 -04:00 |
Pietro Gagliardi
|
58540b2b2b
|
Changed from GetWindowRect() in windows/contianer.c to get the parent's client size to GetClientRect(); we're only interested in the size, and WM_PRINTCLIENT is strictly for the client :/ It's still correct as far as I know (the old code used it).
|
2015-05-05 20:56:07 -04:00 |
Pietro Gagliardi
|
9f8d16b26a
|
Revert "Switch to using DeferWindowPos() in Windows resizes. It doesn't optimize anything just yet (because it's still recursively invoked), but it can be optimized later (by not responding to container resizes and only using container updates); and more important, it puts (most of) the resizing invocations in one place."
Decided not to make the code that much more complicated.
This reverts commit f6fdf932e1 .
|
2015-05-05 15:19:55 -04:00 |
Pietro Gagliardi
|
f6fdf932e1
|
Switch to using DeferWindowPos() in Windows resizes. It doesn't optimize anything just yet (because it's still recursively invoked), but it can be optimized later (by not responding to container resizes and only using container updates); and more important, it puts (most of) the resizing invocations in one place.
|
2015-05-05 15:10:37 -04:00 |
Pietro Gagliardi
|
f35d68907b
|
More flicker work and TODOs.
|
2015-05-05 14:44:10 -04:00 |
Pietro Gagliardi
|
7f56079257
|
Disabled WM_PRINTCLIENT in uiContainer on Windows for now.
|
2015-05-05 14:37:25 -04:00 |
Pietro Gagliardi
|
4ba82c6eeb
|
Started refactoring uiContainer painting on Windows to be more efficient and handle WM_PRINTCLIENT.
|
2015-05-05 14:00:55 -04:00 |
Pietro Gagliardi
|
93ead4043e
|
Added a wrapper around MapWindowRect() to simplify error handling. This will be needed for future changes to windows/container.c.
|
2015-05-05 13:12:48 -04:00 |
Pietro Gagliardi
|
047d5aaa4d
|
Added error checking to the container painting code. More TODOs.
|
2015-05-05 13:01:20 -04:00 |
Pietro Gagliardi
|
40993b33ab
|
One person reports flicker, one person doesn't... I'll have to investigate myself.
|
2015-05-05 11:02:32 -04:00 |
Pietro Gagliardi
|
84b263ade6
|
Removed windows/OLDcontainer.c; we finally implemented everything from it.
|
2015-05-05 09:40:34 -04:00 |
Pietro Gagliardi
|
913025c3de
|
More TODOs.
|
2015-05-05 09:34:43 -04:00 |
Pietro Gagliardi
|
c0cc7f2df4
|
Implemented uiContainer transparent background drawing.
|
2015-05-05 09:10:58 -04:00 |
Pietro Gagliardi
|
2d49baa2f1
|
Seemingly fixed redraw issues with uiContainer on Windows control background painting. Now to paint uiContainer's background itself.
|
2015-05-05 00:16:25 -04:00 |
Pietro Gagliardi
|
2968d48d9e
|
Figured out something workable for control backgrounds on Windows!
|
2015-05-04 23:06:16 -04:00 |
Pietro Gagliardi
|
4e56f2d2b5
|
Disabled the WM_CTLCOLORxxx handler for now.
|
2015-05-04 22:04:24 -04:00 |
Pietro Gagliardi
|
d4245a448d
|
Moved the WM_CTLCOLORxxx handler back into the Windows uiContainer.
|
2015-05-04 20:36:33 -04:00 |
Pietro Gagliardi
|
e808b155cc
|
Moved a TODO to the long-term TODO list.
|
2015-05-04 20:11:58 -04:00 |
Pietro Gagliardi
|
0ad6cbb4b5
|
Removed a now-stale TODO thanks to some past commits.
|
2015-05-04 20:11:05 -04:00 |
Pietro Gagliardi
|
8b8be286ff
|
Made private functions in the various bin source files static.
|
2015-05-04 17:42:20 -04:00 |
Pietro Gagliardi
|
b2e9b646a4
|
Got rid of typedefs in the various newcontrol files for consistency.
|
2015-05-04 15:51:23 -04:00 |
Pietro Gagliardi
|
854d1f49af
|
Made preferredSize function names consistent on Windows. Stale TODO cleanup.
|
2015-05-04 14:56:26 -04:00 |
Pietro Gagliardi
|
7f41a3982f
|
Finished implementing uiTab enable/disable on Windows.
|
2015-05-04 14:45:18 -04:00 |
Pietro Gagliardi
|
5c9751f4d4
|
Set up a framework on Windows for implementing tab enable/disable.
|
2015-05-04 14:42:23 -04:00 |
Pietro Gagliardi
|
23e3230156
|
Fixed control enabling on Windows uiWindows.
|
2015-05-04 14:32:55 -04:00 |
Pietro Gagliardi
|
4716781e78
|
Finished container enable/disable on Windows for now.
|
2015-05-04 14:05:36 -04:00 |
Pietro Gagliardi
|
d98a2291cb
|
More enable/disable container stuff.
|
2015-05-04 11:09:28 -04:00 |
Pietro Gagliardi
|
b15f5ff1c7
|
Started implementing container enable/disable on Windows. More TODOs.
|
2015-05-04 09:53:53 -04:00 |
Pietro Gagliardi
|
862f84292f
|
Fixed an error in windows/container.c.
|
2015-05-03 19:58:37 -04:00 |
Pietro Gagliardi
|
fd4c559e86
|
Removed the typename argument from uiAlloc() and uiRealloc().
|
2015-05-03 19:52:24 -04:00 |
Pietro Gagliardi
|
997db39bb7
|
Decided not to optimize Windows menu item lookup.
|
2015-05-03 17:37:36 -04:00 |
Pietro Gagliardi
|
23cfcc8c6d
|
Confirmed that tabs are taken into account with TCM_ADJUSTRECT on Windows.
|
2015-05-03 17:21:48 -04:00 |
Pietro Gagliardi
|
aa568e51cf
|
Implemented uiControlPreferredSize() on Windows uiTabs.
|
2015-05-03 17:13:40 -04:00 |
Pietro Gagliardi
|
fc1044aab9
|
Quick TODOTODOTODO... resolution.
|
2015-05-03 16:56:58 -04:00 |
Pietro Gagliardi
|
2186192502
|
Changed c-> to uiControl(c)-> in the various newcontrol files for consistency.
|
2015-05-03 14:44:46 -04:00 |
Pietro Gagliardi
|
51cdb1817e
|
Added WS_EX_CONTROLPARENT to uiContainer on Windows.
|
2015-05-03 14:12:45 -04:00 |
Pietro Gagliardi
|
e8600450aa
|
TODO elaboration.
|
2015-05-03 12:36:35 -04:00 |
Pietro Gagliardi
|
61bcfa1a7e
|
Cleaned up and resolved DllMain() TODOs and issues.
|
2015-05-03 12:34:10 -04:00 |
Pietro Gagliardi
|
80c79d31a3
|
Changed the Windows window-creation code to handle menu wrapping.
|
2015-05-03 12:15:24 -04:00 |
Pietro Gagliardi
|
643ed46b00
|
Cleaned up windows/container.c resize(). More TODOs.
|
2015-05-03 11:55:34 -04:00 |
Pietro Gagliardi
|
dc5b7f4c59
|
Some TODO resolution in windows/tab.c. Wine bug filed (https://bugs.winehq.org/show_bug.cgi?id=38527); first tab behavior verified with program in wine bug.
|
2015-05-03 11:47:06 -04:00 |
Pietro Gagliardi
|
d50701b3a7
|
TODO consolidation.
|
2015-05-03 10:21:36 -04:00 |
Pietro Gagliardi
|
454b3ecb03
|
Changed the various OS-side control creation functions to use Make like uiMakeContainer() does instead of New.
|
2015-05-02 20:51:00 -04:00 |
Pietro Gagliardi
|
57bc11d67c
|
TODO consolidation.
|
2015-05-02 14:58:29 -04:00 |
Pietro Gagliardi
|
3260de37b3
|
BOOL -> int in initAlloc() on Windows.
|
2015-05-02 12:29:55 -04:00 |
Pietro Gagliardi
|
a70d56d77c
|
Switched to the Windows API heap functions in windows/alloc.c.
|
2015-05-02 12:27:53 -04:00 |
Pietro Gagliardi
|
effb919176
|
Added DllMain() to the Windows code.
|
2015-05-01 10:19:44 -04:00 |
Pietro Gagliardi
|
5094f08994
|
Fixed build errors from the previous commit.
|
2015-05-01 10:16:02 -04:00 |
Pietro Gagliardi
|
5ad2bfd6f0
|
Cleaned up uipriv*.h.
|
2015-05-01 10:14:11 -04:00 |
Pietro Gagliardi
|
122b1b0d2c
|
Some TODO consolidation.
|
2015-05-01 10:11:22 -04:00 |
Pietro Gagliardi
|
7dc7c5a5cd
|
Resolved a minor TODO in windows/menu.c.
|
2015-04-30 23:34:56 -04:00 |
Pietro Gagliardi
|
83f936a637
|
Fixed menus on Windows to avoid pointers moving underfoot.
|
2015-04-30 18:30:25 -04:00 |
Pietro Gagliardi
|
60a5931207
|
Added duplicate special menu item protection to the Windows backend.
|
2015-04-30 18:18:20 -04:00 |
Pietro Gagliardi
|
40dee5a693
|
Added bin destruction OS parent checks.
|
2015-04-30 17:49:38 -04:00 |
Pietro Gagliardi
|
dad19a6318
|
Switched from GetParent() to GetAncestor() on Windows since GetAncestor() has no documented error state.
|
2015-04-30 17:39:20 -04:00 |
Pietro Gagliardi
|
6400a6ea8c
|
TODO consolidation.
|
2015-04-30 17:34:15 -04:00 |
Pietro Gagliardi
|
75b4d28569
|
Implemented menu destruction on Windows.
|
2015-04-30 17:05:41 -04:00 |