Commit Graph

1394 Commits

Author SHA1 Message Date
Pietro Gagliardi 3ad482297c Renamed bleh_darwin.go to objc_darwin.go so I can clean up Objective-C stuff into it. 2014-02-28 20:16:45 -05:00
Pietro Gagliardi 048e867e9f Quick wording fix in the bleh_darwin.m comments. 2014-02-28 19:53:28 -05:00
Pietro Gagliardi fabddf9e0e Added a .m file to handle the edge cases in objc_msgSend() wrappers that cannot be easily expressed otherwise. 2014-02-28 19:34:18 -05:00
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 133a3102f1 Added a helper script for building 32-bit darwin binaries. 2014-02-27 20:49:49 -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
Pietro Gagliardi 417ed1f727 Added Grid.SetStretchy to allow one control in a Grid to fill the parent Control's space, even when resizing. 2014-02-26 07:01:02 -05:00
Pietro Gagliardi e1677a8941 Added a way to let Controls in a Grid be sized to fill their cells. 2014-02-25 21:54:13 -05:00
Pietro Gagliardi 5eed0db0cd Updated a TODO in the control candidates document related to Windows Common Controls. 2014-02-25 21:43:50 -05:00
Pietro Gagliardi fda976a172 Rewrote the unstable warning at the top of README.md. 2014-02-25 19:19:17 -05:00
Pietro Gagliardi 69bff124a6 Lock Stack's mutex lock like with all other Controls. 2014-02-25 19:16:26 -05:00
Pietro Gagliardi a23a0f1088 No longer preliminary (I was going to wait until I started the OS X backend, but). 2014-02-25 19:10:43 -05:00
Pietro Gagliardi a95e63003d More documentation fixups. 2014-02-25 19:10:09 -05:00
Pietro Gagliardi d55b2a9d18 Fixed up Grid and Space() documentation. 2014-02-25 19:05:01 -05:00
Pietro Gagliardi c6cafdd402 Wrote the Grid test and found/fixed one error in Grid's position calculations. (If you compare the previous Windows build with this one, you may not notice a difference; this is because of the default preferred size of Labels being too wide). 2014-02-25 18:57:19 -05:00
Pietro Gagliardi 7ba3c5ac17 Added untested initial Grid. Now to write a test. 2014-02-25 18:21:58 -05:00
Pietro Gagliardi 7bbd50467c Added more control candidate information. 2014-02-25 17:55:12 -05:00
Pietro Gagliardi 700cbbec7e More documentation fixups. 2014-02-25 15:44:57 -05:00
Pietro Gagliardi cd73e42850 Documentation fixups. 2014-02-25 15:43:12 -05:00
Pietro Gagliardi 8440c7a078 Added Space() for padding layouts. 2014-02-25 15:38:04 -05:00
Pietro Gagliardi dbe983037a Removed the example from the README while the API is still volatile. 2014-02-25 15:14:33 -05:00
Pietro Gagliardi 7aa84e26f0 Split NewCombobox() into separate functions NewCombobox() and NewEditableCombobox(). 2014-02-25 15:13:37 -05:00
Pietro Gagliardi 06fa3a5174 Added password entry fields; they are the alternate mode of LineEdit. 2014-02-25 15:06:51 -05:00
Pietro Gagliardi 04ae299ef0 Some more control notes. 2014-02-25 14:50:59 -05:00
Pietro Gagliardi f41687d8e7 Updated platform control comparison table. 2014-02-25 14:43:08 -05:00
Pietro Gagliardi a18997b190 Still not formatted correctly (should have used gist for this, durr) 2014-02-25 14:29:22 -05:00
Pietro Gagliardi b51f971cbe Markdown fixup in platform-specific control differences table. 2014-02-25 14:27:47 -05:00
Pietro Gagliardi 68260e0509 Added platform notes on sliders and spinners. 2014-02-25 14:26:32 -05:00
Pietro Gagliardi 1a4e10f18d Removed a stray TODO about a constant in comctl_windows.go. 2014-02-25 13:17:22 -05:00
Pietro Gagliardi 84949b52d8 Listed issues with adding Slider. Will add that later. 2014-02-25 13:13:23 -05:00
Pietro Gagliardi c85f327cb0 Updated candidates list now that ProgressBar is added. 2014-02-25 08:29:32 -05:00
Pietro Gagliardi a8bd21fe95 Added Windows implementation of ProgressBar and the requisite comctl32.dll code. 2014-02-25 08:28:10 -05:00
Pietro Gagliardi 668de3bccb Added most of the Windows implementation of ProgressBar. Now to grab the comctl32.dll stuff. 2014-02-25 01:02:16 -05:00
Pietro Gagliardi d8c0df7993 Added GTK+ implementation of ProgressBar and added a ProgressBar to the test program. 2014-02-25 00:49:08 -05:00
Pietro Gagliardi 23a40cae26 More TODOs. 2014-02-25 00:34:21 -05:00
Pietro Gagliardi d721e8f61b "Note This message [PBM_SETMARQUEE] requires ComCtl32.dll version 6.00 or later." blah, no more indeterminate progress bars (Windows 2000 has 5.something) 2014-02-25 00:31:48 -05:00
Pietro Gagliardi bfc9f7e339 Added portable parts of ProgressBar. 2014-02-25 00:13:47 -05:00
Pietro Gagliardi 7039e1c025 Markdown fixups in the control planning document. 2014-02-24 20:32:35 -05:00
Pietro Gagliardi 6baefb894f Added control planning document. 2014-02-24 20:28:07 -05:00
Pietro Gagliardi f3365135c8 Quick documentation change in prefsize_windows.go. 2014-02-24 15:02:58 -05:00