Commit Graph

69 Commits

Author SHA1 Message Date
Pietro Gagliardi b460466e4b Implemented Post() on Mac OS X. 2014-07-03 11:53:21 -04:00
Pietro Gagliardi 9eb9aa82c0 Removed uitask and made the Window creation functions only callable from the main thread. This si the first part in the real major change, which bans all concurrent use of the API and provides a Post() function for communication. I don't like this, but it's the only way. Untested. 2014-07-03 10:02:27 -04:00
Pietro Gagliardi 8a81650b3d Moved it all back; the preemptive multitaksing during an event handler kills us on all platforms. Going to have to restrict ALL GUI accss to happening from one t hread, so going to need to drop uitask entirely and have just a start() callback for startup code and a post() function for posting requests to windows (like channel sends but into a perpetual buffer). 2014-07-02 22:53:03 -04:00
Pietro Gagliardi 5d339e656b Moved everything out of the way pending rewrite. 2014-07-02 17:13:40 -04:00
Pietro Gagliardi 37051f5c15 Migrated the Mac OS X backend to the new uitask system. 2014-07-01 17:11:08 -04:00
Pietro Gagliardi ffa1bbe0b9 Restored the previous new API. I'm going to change it so that events are callbacks rather than using a window handler, but other than that... yeah. 2014-06-30 22:48:12 -04:00
Pietro Gagliardi 33155f7496 Reverted everything back to the old API. 2014-06-30 09:57:44 -04:00
Pietro Gagliardi bc50405364 More dialog_darwin.go/.m conversion. 2014-06-29 10:44:03 -04:00
Pietro Gagliardi 20821c26eb Implemented Checkbox.SetChecked() on Mac OS X and updated the README. 2014-06-26 21:54:14 -04:00
Pietro Gagliardi 67f1bcfc3c Fixed label alignment on Mac OS X for real now. 2014-06-26 10:06:58 -04:00
Pietro Gagliardi 5e17d64b09 Undid the whole yoff spiel on Mac OS X. NOW I'll merge the new sizing system into that backend. 2014-06-26 00:23:29 -04:00
Pietro Gagliardi c0d6293191 (Somewhat hackily) implemented the new label rules on Mac OS X. 2014-06-25 16:32:07 -04:00
Pietro Gagliardi d289fce35c Removed Mac OS X 10.6 support. Quite a hassle that version was... 2014-06-11 14:58:39 -04:00
Pietro Gagliardi 8632d0c2f3 Implemented Window.Center() on Mac OS X. 2014-06-11 11:17:00 -04:00
Pietro Gagliardi b172ab2e37 Added new MsgBox() behavior on Mac OS X. Now we can finally remove MsgBox() from the TODOs! :D 2014-06-08 12:36:55 -04:00
Pietro Gagliardi 9f2669d583 Fixed Command key up on Mac OS X. This fix also fixes Help key down, so remove the workaround there. 2014-06-07 18:17:29 -04:00
Pietro Gagliardi f539747546 Set Area's preferred size in the documentation and on Windows and Mac OS X. 2014-06-06 23:03:29 -04:00
Pietro Gagliardi 60de6d05c5 Implemented message box transience on Mac OS X. 2014-06-05 00:53:26 -04:00
Pietro Gagliardi 4045d50f94 Checked to see if the previous commit worked after removing the leftover Combobox selectIndex() code; it does. Removed the dummy code from the Windows and GTK+ backends as well. 2014-05-29 04:41:07 -04:00
Pietro Gagliardi 4baa9397e6 Merged back combobox_darwin.m, rewrote it to use boundListboxArray() instead of creating a whole new object, and implemented what appears to be a fix for NSPopUpButton selection. Will delete the unneeded select(-1) code later and test again... 2014-05-28 23:46:33 -04:00
Pietro Gagliardi 5f5f4f6c2a Set up the Mac OS X build to always target Mac OS X 10.6 regardless of the host system; this is what we want and by default building on 10.8 produces binaries which won't run on 10.6. This isn't working yet, though: one enum in NSApplication.h becomes empty on 10.6... 2014-05-19 23:53:10 -04:00
Pietro Gagliardi be56293e9c Found a method in NSArrayController via Stack Overflow which lets me suppress selection-changing behavior on NSTableView inserts; use that on Listbox in Mac OS X. This means sysData.selectIndices() and its Mac OS X implementation can (and has) gone away, clearing TODOs on Windows and Unix by extension. 2014-05-17 12:42:00 -04:00
Pietro Gagliardi d8a7d9b53e Fixed up a bunch of Mac OS X function names, mostly Listbox-related, to be more clear and more consistent. 2014-05-16 20:44:19 -04:00
Pietro Gagliardi acc4a54356 Resolved the TODO about one of the functions in sysdata_darwin.m not being properly type-checked: I forgot to include sysdata_darwin.h (it was commented out)! Not a problem anymore, of course... 2014-05-16 06:56:33 -04:00
Pietro Gagliardi ebcbaa129d Combined all the Objective-C headers into objc_darwin.h. 2014-05-16 06:49:29 -04:00
Pietro Gagliardi 14b3696d96 Cleaned up objc_darwin.h and changed all instances of int64_t in the wrapper structs to intptr_t. 2014-05-16 06:37:25 -04:00
Pietro Gagliardi 8084ef53e1 Removed bleh_darwin.m and the initBleh() function that it contained as its only remaining code. 2014-05-16 02:00:21 -04:00
Pietro Gagliardi 08e86ea9b3 Removed the dummy NSEvent code from bleh_darwin.m and rewrote it in Objective-C in delegateuitask_darwin.m. And now to nuke bleh_darwin.m and change all the int64_ts to intptr_ts and merge the .h files... 2014-05-15 23:04:30 -04:00
Pietro Gagliardi 3b4924a156 Removed some residual drawRect: stuff from bleh_darwin.m. So close... 2014-05-15 22:30:19 -04:00
Pietro Gagliardi 524867574b Removed the Area drawing code from bleh_darwin.m and rewrote it in Objective-C in area_darwin.m. 2014-05-15 22:15:54 -04:00
Pietro Gagliardi 31fc77a99d Removed the event point translation from bleh_darwin.m and rewrote it in Objective-C in area_darwin.m. 2014-05-15 21:45:42 -04:00
Pietro Gagliardi 82101036b8 Removed the control font code from bleh_darwin.m and rewrote it in Objective-C in sysdata_darwin.m. 2014-05-15 21:16:28 -04:00
Pietro Gagliardi 999b553e39 Removed the stray applicationShouldTerminate: stuff from bleh_darwin.m. (delegateuitask_darwin.m has it already.) 2014-05-15 20:55:55 -04:00
Pietro Gagliardi 7645f459e7 Removed bleh_darwin.m's tracking area logic and rewrote it in Objective-C in area_darwin.m. 2014-05-15 20:42:29 -04:00
Pietro Gagliardi 100a41e1c9 Removed most, if not all, of the objc_msgSend() wrappers. 2014-05-15 20:24:01 -04:00
Pietro Gagliardi 9d8976abab Migrated everything else to Objective-C native; fixed a few things I missed along the way. 2014-05-15 19:55:16 -04:00
Pietro Gagliardi 93914ecb8c Migrated the new Objective-C-based Mac OS X Listbox code in and got rid of things preventing the darwin/386 build otherwise. 10.6 doesn't show the NSObservedObjectKey link error, but shows a crapton more, so this is gonna be a fun bug report... I'll use contrived examples and provide the new build logs based on this commit in the meantime as well. 2014-05-15 17:27:47 -04:00
Pietro Gagliardi 05c71e0d25 Handled AreaHandler.Mouse()'s handled return properly on Mac OS X. Also fixed some typos in objc_darwin.h. 2014-05-12 12:28:33 -04:00
Pietro Gagliardi 496ad98216 Replaced the horribly memory-inefficient NSIndexSet operation to get the list of selected indices in the Mac OS X Listbox with a far simpler option that avoids deferring some of the work (apart from objc_msgSend() calls) to cgo and the use of reflect.SliceHeader at all! It just grabs the indices from the NSIndexSet one at a time using the previous index as an anchor. 2014-05-12 02:06:05 -04:00
Pietro Gagliardi cc01981999 Added tracking areas to Area on Mac OS X so mouse move events can work; they work now. 2014-05-10 21:03:04 -04:00
Pietro Gagliardi 3bb9f41305 Fixed Mac OS X so that window sizes do not include the titlebar and frame. 2014-04-13 20:16:05 -04:00
Pietro Gagliardi f7817f6987 Added (untested; VM issues) code to handle Mac OS X Quit Dock menu items and other related stuff that may happen in the future. Will drop the TODO after I can test it. 2014-04-06 23:33:27 -04:00
Pietro Gagliardi 98ae4cb3b8 Moved all selector and class initialization for bleh_darwin.m into its own function. 2014-04-05 13:30:56 -04:00
Pietro Gagliardi 338cbc0540 Removed NilClass from the shared Mac OS X files (objc_darwin.h and bleh_darwin.m) as the //export issue that required that no longer applies. 2014-04-05 12:39:27 -04:00
Pietro Gagliardi 8eee2a92b7 Changed the way drawRect: was being added to our Mac OS X Area such that we no longer need a separate function to add it to the class. 2014-04-04 22:21:53 -04:00
Pietro Gagliardi 5a5b486b6a Removed objc_msgSend_rect(). This also consolidates all initWithFrame: calls into a simple initWithDummyFrame(). 2014-04-04 19:51:59 -04:00
Pietro Gagliardi dd4a7b9cbe Removed objc_msgSend_rect_uint_uint_bool(). 2014-04-04 19:14:03 -04:00
Pietro Gagliardi 461b0cc023 Removed objc_msgSend_rect_bool(). 2014-04-04 19:08:25 -04:00
Pietro Gagliardi ba2c1d6d20 Removed objc_msgSend_uint(). 2014-04-04 18:56:37 -04:00
Pietro Gagliardi be668a965a Fixed Mac OS X Button appearance; turns out it was using the wrong font. Also updated the TODO file to mark this fix and remove other stale/already fixed details. 2014-04-04 14:52:38 -04:00