Commit Graph

12 Commits

Author SHA1 Message Date
Pietro Gagliardi 8af591388f Split most of the objc_msgSend() wrappers into a C header file for convenience. The NSRect functions require special handling because of Apple stupidities that will be discussed when I get to that. 2014-02-28 18:30:06 -05:00
Pietro Gagliardi e4339d3c49 Set up a NSAutoreleasePool for notify() to suppress memory leak warnings. 2014-02-28 17:32:55 -05:00
Pietro Gagliardi 56a436bc80 Changed the main thread signaling to use NSObject's performSelectorOnMainThread: functionality, which settles that. NSString requires an autorelease pool; in testing, so does NSValue, which we are eventually going to use. NSAutoreleasePool's docs suggest we should create a temporary pool for things running in other threads, but then we have to release it... but I guess we're waiting for the function to complete on other platforms already, so no big deal here. 2014-02-28 17:25:04 -05:00
Pietro Gagliardi 6982912a58 Added a notification system, hopefully allowing us to merge AppKit requests onto a single thread. In practice, this generates autorelease pool leak messages; it appears notifications are not for this... 2014-02-28 15:37:59 -05:00
Pietro Gagliardi 3b9e26ab38 Added a button bezel style to the darwintest button. 2014-02-28 12:09:15 -05:00
Pietro Gagliardi 428d3529a8 Added a button to the darwin test and had it respond to clicks. Committing as is because without a bezelStyle ther esult is just... wow. 1990s Windows look and feel for the win? 2014-02-28 11:55:35 -05:00
Pietro Gagliardi 0fdfc4c7a6 Built a window delegate and ran the event loop. It works! 2014-02-28 11:06:20 -05:00
Pietro Gagliardi e0c351a2d7 Added code to create new Objective-C types at runtime, which will be important both for handling custom messages and for handling events. 2014-02-27 23:07:45 -05:00
Pietro Gagliardi 134afc60a6 And we now have a window in the darwin test! You can't really do much with it since the Cocoa event loop isn't running, but it can be moved around! 2014-02-27 21:53:44 -05:00
Pietro Gagliardi 3347d7fa48 Wrote helper functions for objc_getClass() and sel_getUid(). 2014-02-27 20:56:08 -05:00
Pietro Gagliardi f949b7f8d2 Ported the runtime test to Go. It works in both 32-bit and 64-bit! 2014-02-27 20:48:32 -05:00
Pietro Gagliardi fa7ef40c42 Now that I have a working Mac OS X setup, added the initial groundwork for the OS X port. This C file works correctly on both amd64 and i386 with clang [-m32] runtimetest.c -lobjc -framework Foundation; it will be converted to Go now. 2014-02-27 20:07:56 -05:00