Commit Graph

279 Commits

Author SHA1 Message Date
Pietro Gagliardi 6c1bf7aabd Big change: with the current event model, it's safe to call Area.RepaintAll() (and the future Area.Repaint()) from within AreaHandler.Key() and AreaHandler.Mouse(); get rid of the bool returns from each. The future Area.Repaint() is important; the bool returns repainted the whole Area, which may not be optimal. 2014-08-09 10:33:38 -04:00
Pietro Gagliardi b4a97e871a Settled the placement of functions formerly in sizing_windows.c and updated the winapi_windows.h header file to suit. 2014-08-09 10:26:42 -04:00
Pietro Gagliardi 5198f7202f Finished the previous commit. 2014-08-09 00:28:12 -04:00
Pietro Gagliardi f24e177d99 Mostly fixed Labels on Windows being offset slightly; need to finish the fix by making it not apply to standalone Labels and adding comments. 2014-08-08 23:47:06 -04:00
Pietro Gagliardi 21dbda72e2 Added an optimization to the Tab code on Windows where only the current tab was resized, thinking it would solve flicker issues. It did not, and GTK+ resizes all tabs, so I'm keeping this in mergeback/ for now. 2014-08-08 23:02:25 -04:00
Pietro Gagliardi 0cf86eeb03 Added nested and empty tabs to the test program, and fixed up relevant documentation. 2014-08-08 22:28:58 -04:00
Pietro Gagliardi 8ee7b2b809 Removed borders from Areas on the GTK+ backend. 2014-08-08 20:31:15 -04:00
Pietro Gagliardi ff6c3a7cbe More TODOs. 2014-08-08 20:16:42 -04:00
Pietro Gagliardi 3200a0ca97 More TODO/future plan separation. 2014-08-08 20:14:25 -04:00
Pietro Gagliardi 79ada1bdaa Starting splitting out future plans from the TODOs again; this time: Group. 2014-08-08 20:05:36 -04:00
Pietro Gagliardi e1486f3cd1 Decided to revert the transparency changes; I'll try flicker-free first. 2014-08-08 13:07:38 -04:00
Pietro Gagliardi 6707839e9b Added what should have been the flicker-free code to Windows containers; it doesn't actually work 100%, though (not flicker-free; window backgrounds are now black), so it's #ifdef'd out for now. 2014-08-07 11:27:00 -04:00
Pietro Gagliardi ddbb719918 Made containers transparent on Windows. This is the first of a four-part set (though IDK if it will be four commits) to make both containers and areas both transparent and flicker-free. Also added a Space() tab to the test program to test the transparency. 2014-08-06 21:34:31 -04:00
Pietro Gagliardi 2ea9987c98 Made the tabs of Tab controls on Windows children of the main tab control itself; this will let us be transparent... hopefully. 2014-08-06 20:53:11 -04:00
Pietro Gagliardi d9f9d40294 Disabled Table column autoresizing on Windows for now as it causes weird bugs on Windows XP... 2014-08-06 19:56:14 -04:00
Pietro Gagliardi c4e95a0bbf Decided to set the frame before calling baselineOffsetFromBottom in xsizing_darwin.m, just to be safe. 2014-08-06 11:03:42 -04:00
Pietro Gagliardi e1c3a9fe26 Removed areaPrefSize() from the Mac OS X backend; we now store the Area's size separately and return that for the preferred size instead. 2014-08-06 11:01:37 -04:00
Pietro Gagliardi d307848c8c Removed leftover TODOs: container does handle margins now. 2014-08-06 10:50:07 -04:00
Pietro Gagliardi b3b91c68d0 Implemented reasonable table column autosizing on Windows. 2014-08-06 10:42:26 -04:00
Pietro Gagliardi 3dcdd05562 Removed the NSMakeRect(0, 0, 100, 100) dummy init rect from the Mac OS X backend; NSZeroRect works fine for this after all. Thanks to jer in irc.freenode.net/#macdev. 2014-08-05 22:02:57 -04:00
Pietro Gagliardi 46bb97cb75 Fixed area_windows.c data types. 2014-08-05 21:34:58 -04:00
Pietro Gagliardi b8bf4f28b6 More TODOs. 2014-08-05 20:48:42 -04:00
Pietro Gagliardi 1744b08dd8 Made standalone labels aligned to the top-left on GTK+. 2014-08-05 20:47:56 -04:00
Pietro Gagliardi 03f2873f68 Set vertical alignment of Labels next to Areas on GTK+. 2014-08-05 20:43:56 -04:00
Pietro Gagliardi 045f8859f7 Removed leftover TODO. 2014-08-05 19:01:56 -04:00
Pietro Gagliardi 1badd53681 Renamed textField to textfield; this is just for the private implementation. 2014-08-05 17:46:42 -04:00
Pietro Gagliardi c460c11b65 Added the hollow brush to the list of static data initialized by uiinit() in the Windows backend; this lets other parts of the package use the hollow brush without the need for additional error checking. 2014-08-05 16:30:12 -04:00
Pietro Gagliardi c6674d1e9e Re-added the NSApplication support code for Area on Mac OS X. 2014-08-05 14:40:08 -04:00
Pietro Gagliardi 6b7660a671 Added the Mac OS X implementation of Area... somewhat messily, but eh. 2014-08-05 14:33:25 -04:00
Pietro Gagliardi 6de4565e0c Removed sizer_windows.go now that it is no longer needed. 2014-08-05 13:15:39 -04:00
Pietro Gagliardi 96c81996ba Fixed errors with Area on Windows. Woo! 2014-08-05 12:49:08 -04:00
Pietro Gagliardi 57df87f11d Fixed lots of syntax errors, including one where I forgot a parameter to a Windows API call, oops... the problem is present in the main package being replaced too. :x It will be fixed when I move this redo up. Also added Area initializer to uiinit(). NOW does it work??? 2014-08-05 12:29:37 -04:00
Pietro Gagliardi fada6849c4 Mostly completed writing Area on Windows. Now to fix compiler errors. 2014-08-05 12:17:44 -04:00
Pietro Gagliardi bccfde2c34 Started re-adding Area to the Windows backend: ported the existing code to C. 2014-08-05 12:05:43 -04:00
Pietro Gagliardi c1055ae278 Resolved Mac app bundle startup issues. 2014-08-05 08:23:16 -04:00
Pietro Gagliardi b46167f1e2 Fixed up the implementation of Area on GTK+ and the Area test. Seems to be fine, though for some reason holding down a mouse button doesn't generate a drag in GTK+ 3.10... 2014-08-05 00:34:24 -04:00
Pietro Gagliardi 3e25992f09 Some slight Area cleanup. 2014-08-04 23:32:59 -04:00
Pietro Gagliardi 28764445b9 Re-added Area on the GTK+ backend. Not yet working; need to reconnect signals. 2014-08-04 23:31:11 -04:00
Pietro Gagliardi 95151ce6ea Re-added the events files for Area. 2014-08-04 23:05:31 -04:00
Pietro Gagliardi f035792c1d Re-added area.go. This is the start of re-adding Area. 2014-08-04 22:29:39 -04:00
Pietro Gagliardi 515a605dda Same as three commits ago, but for the GTK+ backend. 2014-08-04 22:21:58 -04:00
Pietro Gagliardi b84cdaf077 More TODOs. 2014-08-04 21:41:42 -04:00
Pietro Gagliardi 12f7c691d3 Same as previous commit, but for showing and hiding containers on Windows. 2014-08-04 21:33:58 -04:00
Pietro Gagliardi 95815841aa Merged cases of C.moveWindow() on Windows containers to one place (container_windows.go) as a method on container. 2014-08-04 21:27:35 -04:00
Pietro Gagliardi 4606f5c2ee Decided to keep tab textures on Windows. 2014-08-04 21:22:43 -04:00
Pietro Gagliardi 23baffe55e Applied the container change to the GTK+ backend. Woo! 2014-08-04 21:08:18 -04:00
Pietro Gagliardi 91f1a34003 Re-added base units calculation to the resizing code now that container stores a HWND again. 2014-08-04 20:10:23 -04:00
Pietro Gagliardi ef513c4337 Completed the migration of the Windows backend to the new container system. 2014-08-04 20:04:16 -04:00
Pietro Gagliardi 9ed4ec5259 Split layout and Window on Windows to use two separate window classes. This is the first half of the two-part migration of the Windows backend to use container. 2014-08-04 19:46:49 -04:00
Pietro Gagliardi 88c01bf695 Began the big sizer cleanup: renamed sizer to container, renamed sizer.go to container.go, did the Mac OS X migration, moved containerctrls.go out of the way by merging its declarations into basicctrls.go, and did a quick cleanup fix to container_darwin.m. 2014-08-04 17:47:39 -04:00