Commit Graph

45 Commits

Author SHA1 Message Date
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 5fa1bd22e2 More go fmt. That completes the main package go fmt. Won't bother with test or tools. 2014-06-10 16:05:41 -04:00
Pietro Gagliardi e45a88d86a Elaborated previous commit. 2014-06-06 23:47:48 -04:00
Pietro Gagliardi d3270db6dc Added note that Areas get focus on Mac OS X on a click event automatically since we make it a first responder. 2014-06-06 23:46:47 -04:00
Pietro Gagliardi 09a5a859a0 Applied the Area events change to the Mac OS X backend, restructuring a few function signatures in the process. 2014-06-02 12:27:23 -04:00
Pietro Gagliardi b648af160b Added new Modifiers code for Mac OS X. Also fixed some comment typos and added more TODOs. 2014-05-29 14:26:45 -04:00
Pietro Gagliardi 511f774649 Finished the Area clicking stuff: formalized the behavior in documentation in area.go, pointed out that Mac OS X already behaves as expected, updated some comments, and removed the relevant TODO. 2014-05-23 23:48:17 -04:00
Pietro Gagliardi 946e007e5d Same as previous commit, but for Mac OS X now. The #cgo directives are in uitask_darwin.go. 2014-05-19 22:52:59 -04:00
Pietro Gagliardi cadbc174e3 Removed TODO about buttons 1+3 causing a button 2 click on Mac OS X Areas... it was actually on my host's end: X11/KDE is doing it, and I never noticed that before, nor do I remember that happening on the Windows/wine or GTK+ versions :S That's it for the TODOs in the Mac OS X Go files! :D 2014-05-18 12:53:15 -04:00
Pietro Gagliardi 216b5c183c Made drawing of NSScrollView backgrounds explicit on Mac OS X. This is what Interface Builder sets for NSTableViews, so we do that too for Listbox. This also means NSScrollView draws the background for our Areas, settling the clear clip rect TODO. 2014-05-17 20:21:48 -04:00
Pietro Gagliardi ce14390eff Fixed variable names in Area drawing code on Unix to reflect that image.Rectangle is point-to-point, not origin/size like on Mac OS X. Windows was already fine; it just uses "left, top, right, and bottom" instead of "x0, y0, x1, and y1". 2014-05-17 17:01:52 -04:00
Pietro Gagliardi 352c60bf68 More clarification on the previous commit. 2014-05-17 16:21:25 -04:00
Pietro Gagliardi eca42bc152 Removed TODO about not using bad-for-tracking features of NSEvent in Areas on Mac OS X since that's not relevant to our use of tracking areas. 2014-05-17 16:19:42 -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 dc179b3a44 Implemented the Super and order changes on Mac OS X. Meta is irrelevant here. 2014-05-16 19:52:28 -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 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 b7db0e15cd Removed all the objc_getClass() and sel_getUid() calls from the Go code on Mac OS X. Also got rid of a forgotten objc_msgSend(). Now comes the Objective-C half... 2014-05-15 20:14:44 -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 62b3c26107 Removed the class creation at runtime stuff and its residue from the Go files. This also cleans up the initialization stuff on the Go side too. 2014-05-13 09:40:19 -04:00
Pietro Gagliardi 11ef974b48 Moved area_darwin.go to direct Objective-C use. 2014-05-13 09:33:37 -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 29d892d2ff Fixed Mac OS X Area mouse drags being reported outside the actual Area. 2014-05-12 11:34:24 -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 5819e52f8d Preparation for adding tracking areas to Mac OS X Areas: we need to now pass in the sysData to each control's make() function so Area can save the tracking area somewhere (this will also come in handy when I change alternate from a bool to an integer index). 2014-05-10 14:59:11 -04:00
Pietro Gagliardi d8d671b0b0 Documented the xxxMouseDragged: behavior in the Mac OS X source code. 2014-05-10 14:31:22 -04:00
Pietro Gagliardi 22315bca59 Fixed dragging at all in Mac OS X Areas; now we just have to work out all the other kinks... 2014-05-07 19:40:46 -04:00
Pietro Gagliardi 898c3c7b66 Removed TODO from area_darwin.go about extra mouse button handling; turns out it works as expected right out of the gate... for the most part. 2014-05-06 20:36:31 -04:00
Pietro Gagliardi 417bdb8949 Consolidated NSScrollView code on Mac OS X to be all in one place. 2014-04-13 12:52:10 -04:00
Pietro Gagliardi a01ffafba0 Fixed Area mouse events being sent when something happens outside the Area itself. 2014-04-10 18:52:43 -04:00
Pietro Gagliardi 78bb4cdace Fixed Area drawing assuming the first pixel of the *image.NRGBA is at i.Pix[0]. 2014-04-09 18:26:20 -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 8c109a0ae9 Updated the Area drawRect: adding error message to look like the ones that come out of the new class system. 2014-04-04 21:35:14 -04:00
Pietro Gagliardi 7ea493873c Changed the Area class on Mac OS X to use the new class creation code. This gets rid of ALL the class creation code from delegate_darwin.go. 2014-04-04 21:32:10 -04:00
Pietro Gagliardi e35457b968 Removed objc_alloc(). This should be all of them. Now to redo how classes are handled... 2014-04-04 20:34:35 -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 2884d45f0f Fixed mouse move events on Mac OS X not returning buttons right, I think: turns out I was sending the wrong message in. Now I have to figure out how to filter out mouse move messages; then I can really make sure this works right... 2014-04-03 23:52:26 -04:00
Pietro Gagliardi 6a7cb73dda Added key events to Mac OS X Areas. Now Area is feature-complete (but buggy) on all platforms :D Also more TODOs. 2014-03-30 19:53:44 -04:00
Pietro Gagliardi 41a7e3dab8 Implemented Area mouse events on Mac OS X. Also fixed a few other things left behind in the previous commits. Also more TODOs. 2014-03-30 17:52:27 -04:00
Pietro Gagliardi 8c18adcfdb Fixed flaky redraw in Mac OS X Areas. 2014-03-30 14:29:02 -04:00
Pietro Gagliardi 6a40011f85 Implement Mac OS X AreaHandler.Paint(). 2014-03-30 14:25:01 -04:00
Pietro Gagliardi 8f944c7ec6 When we created our delegate and view classes on Mac OS X, it turned out we were accidentally subclassing the metaclass (of NSObject and NSView, respectively), not the actual superclass itself. Fixed tha. This also fixed that mysterious objc_new()/[object init] not working on the delegate class problem. 2014-03-30 13:21:10 -04:00
Pietro Gagliardi 08dfb5da20 Attempted to add the Area bare bones and resizing code to the Mac OS X backend. It complains that initWithFrame: is not implemented... 2014-03-30 11:19:13 -04:00
Pietro Gagliardi f2d6daa9ea Added the beginning of the Mac OS X Area implementation. Also fixed the long-broken Mac OS X build. 2014-03-29 23:57:49 -04:00