Commit Graph

49 Commits

Author SHA1 Message Date
Pietro Gagliardi c9643ea5a6 Gutted the existing header files, started trimming things that remain in the backups, and renamed _UI_EXTERN and _UI_ENUM and the include guards and libui_EXPORTS to start with uipriv instead. 2019-04-08 20:55:06 -04:00
Pietro Gagliardi d54f7dd682 Added a facility to the OS X port to be notified when a child's visibility has changed; this is necessary for implementing hiding and showing properly. 2016-06-14 10:37:19 -04:00
Pietro Gagliardi b082f69e3f More TODOs. 2016-05-26 21:27:13 -04:00
Pietro Gagliardi 834cc12299 Named the margins and padding. Made them functions that can take parameters in the future to allow more complex spacing options in the future. 2016-05-26 21:25:32 -04:00
Pietro Gagliardi 1d8ea79e45 Removed uiControlVerifyDestroy(); we could have just had it in uiFreeControl(). 2016-05-22 01:07:25 -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 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 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 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 abe502a046 Rewrote uiBox with everything in it. Let's test it so far. 2016-05-07 01:11:58 -04:00
Pietro Gagliardi c9998fcd05 Set up a system to do what we need. 2016-05-06 21:13:36 -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 5cfcf81a67 Fixed runtime errors. It seems to work! An autolayout step will need to be added... 2016-04-25 13:44:13 -04:00
Pietro Gagliardi d0d0efce1a Fixed build errors. Now to test! 2016-04-25 13:38:17 -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 e69010139d Fixed one last error. 2016-04-25 10:26:00 -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 a97171ed86 Quick fixes to previous commit. 2016-04-25 10:00:31 -04:00
Pietro Gagliardi a6b324a33c Finished the new ui_darwin.h. 2016-04-25 09:57:05 -04:00
Pietro Gagliardi 31dee85b5e More work with changing things for OS X. Still not fully sure about things... 2016-04-24 21:51:08 -04:00
Pietro Gagliardi e643dc3693 More new control structure work. This is turning into a disaster already. 2016-04-24 19:56:14 -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 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 46391367fe Removed the typefn stuff from ui_*.h*. 2016-04-24 14:15:56 -04:00
Pietro Gagliardi a9316a04b0 Added C++ extern guards. 2015-11-16 10:55:44 -05:00
Pietro Gagliardi 54332b90fb Finally merged out the redo folder. 2015-09-02 13:48:06 -04:00
Pietro Gagliardi ed9e70c058 Started redoing the OS X port. 2015-07-02 16:09:57 -04:00
Pietro Gagliardi 817e13ae61 Set up visibility on OS X. This seems to work... 2015-05-07 18:38:47 -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 d23fae34be Implemented uiControlEnable() and uiControlDisable() for containers and uiWIndow on Mac OS X. 2015-05-04 01:14:18 -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 6c6bce3702 Moved everything back to the top level. 2015-04-29 11:02:38 -04:00
Pietro Gagliardi 4c280ca42c Removed or moved a bunch of stale files from the old source. All that's left now is to re-add the main controls and recreate the test program. 2015-04-29 10:20:25 -04:00
Pietro Gagliardi 6436737720 Removed the now-obsolete old method of freeing OS X controls. 2015-04-17 18:56:17 -04:00
Pietro Gagliardi 47368bdfe9 Fixed some errors in the OS X build. IT WORKS! AND IS MUCH CLEANER NOW TOO!!!! 2015-04-17 18:54:17 -04:00
Pietro Gagliardi 3f2a0f8dfa Laid the foundation for the rewritten Mac OS X controls. 2015-04-17 18:11:03 -04:00
Pietro Gagliardi b04ef6d93f Began Darwin backend migration. 2015-04-16 13:04:46 -04:00
Pietro Gagliardi 016a05aebf 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 e5e0f115f7 Migrated the Mac OS X code to the new uiControl/uiSizing system. 2015-04-09 18:39:21 -04:00
Pietro Gagliardi 93ead17eef 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 2214f27cb4 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 28adb7fee5 Fixed compiler errors and bugs. uiButton on Mac OS X works! 2015-04-07 16:38:51 -04:00
Pietro Gagliardi 35342e44e7 Added the uiDarwinControl logic. 2015-04-07 14:42:52 -04:00
Pietro Gagliardi 9298bc9e37 Changed ui_*.h to uipriv_*.h pending a public non-portable API. 2015-04-07 00:26:27 -04:00
Pietro Gagliardi 58da9ce2bd Started working on uiControl. 2015-04-06 21:53:31 -04:00
Pietro Gagliardi e08a9c0492 Fixed initial Mac OS X code. 2015-04-06 20:01:14 -04:00
Pietro Gagliardi ba4967f00b 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