summaryrefslogtreecommitdiff
path: root/area.go
AgeCommit message (Collapse)Author
2014-04-11Rewrote Area code on Windows to use alpha-premultiplied RGB and only use GDI ↵Pietro Gagliardi
functions to do it... and it doesn't quite work right yet.
2014-04-11Added a general-purpose function to produce a native-endian ARGB ↵Pietro Gagliardi
representation of the image. I thought cairo image surfaces would work, but they're not designed for reading in images, the cairo functions for reading image data were introduced in the next version (1.12), and GDK-Pixbuf only does non-alpha-premultiplied... This can be used on Windows though.
2014-04-11Changed from using image.NRGBA to image.RGBA (premultiplied alpha) in ↵Pietro Gagliardi
Area.Paint() since it'll be easier to work with on Windows after applying what Treeki/Ninjifox suggested I do instead of what I am doing now.
2014-04-10Added bounds checking to NewArea() and Area.SetSize() such that an Area must ↵Pietro Gagliardi
have a valid size.
2014-04-10Documented scrollbars on Listbox and Area to the best of my ability, ↵Pietro Gagliardi
shuffling the appropriate TODOs around.
2014-04-09Fixed Area drawing assuming the first pixel of the *image.NRGBA is at i.Pix[0].Pietro Gagliardi
2014-04-07Updated Area's KeyEvent documentation to talk about some window managers on ↵Pietro Gagliardi
Unix intercepting some events; also updated the keyboard test program to make a note of behaviors related to that.
2014-04-01Removed the initText parameter from sysData.make() and changed all ↵Pietro Gagliardi
invocations to call sysData.setText() separately; this avoids the need to check if sysData.setText() is valid. Also implemented that on GTK+.
2014-03-30Updated the documentation: Area now works on all platforms, Modifiers ↵Pietro Gagliardi
behavior on both left and right keys simultaneously is undefined for now, and the way to create custom Controls no longer involves embedding Area.
2014-03-30Implemented Area mouse events on Mac OS X. Also fixed a few other things ↵Pietro Gagliardi
left behind in the previous commits. Also more TODOs.
2014-03-29Documented that the clip area in AreaHandler.Paint() more properly and ↵Pietro Gagliardi
indicate that it is cleared on each AreaHandler.Paint() call; (try to) implement that on Windows (GTK+ does it for us; noted that as well).
2014-03-29Re-added the numeric keypad keys to ExtKey and removed predefkeys in ↵Pietro Gagliardi
area_unix.go since all are now being handled.
2014-03-29Removed the numpad constants pending re-evaluation of how to handle those.Pietro Gagliardi
2014-03-28Changed the definition of KeyEvent to be positional. The implementation has ↵Pietro Gagliardi
not been written, and thus the package will not build yet.
2014-03-27Added a flag to AreaHandler.Key()/Mouse() to indicate that a repaint is ↵Pietro Gagliardi
needed after that event has been handled. (Having Repaint() as a method deadlocked for the same reason resizing deadlocked before.)
2014-03-23Fixed a slight documentation error in area.go.Pietro Gagliardi
2014-03-23Added Area resizing. Everything mostly works, but not making things smaller...Pietro Gagliardi
2014-03-23Had ExtKey start at 1 so KeyEvent.ExtKey can be 0.Pietro Gagliardi
2014-03-17Changed the new resizing code so that it uses the same allocated slice per ↵Pietro Gagliardi
window instead of making a new one to store all the resize requests each time.
2014-03-17Changed window resizes so that the actual Control.setRect() functions ↵Pietro Gagliardi
appended to an array of requests that the resize() function set all at once instead of having each done individually. This will be necessary for what I think will be a solution to the deadlocks. It doesn't work right now; I'm assuming it's allocating too much memory. I know how to fix this, but I'm committing what I have so far to be safe.
2014-03-17Removed the mutexes from Labels and Areas because I'm at my wits end about ↵Pietro Gagliardi
settling the deadlock between window resizing and setting a Label's text.
2014-03-16Changed Area to use a delegate handler object that implements the new ↵Pietro Gagliardi
AreaHandler interface for handling events. Also updated the GTK+ backend with this change, and made a few more tweaks to the documentation in area.go.
2014-03-15Clarified that MouseEvent.Held will not include Down/Up.Pietro Gagliardi
2014-03-15Added note in MouseEvent documentation about both Down and Up being 0 ↵Pietro Gagliardi
representing mouse movement.
2014-03-15Added (untested) GTK+ implementation of Area's mouse events.Pietro Gagliardi
2014-03-15Added portable code for Area's MouseEvent.Pietro Gagliardi
2014-03-15Documented the details of Area's coordinate system.Pietro Gagliardi
2014-03-14Added the portable code for Area.Pietro Gagliardi