Freddie Witherden
cc94bc2818
Allow for event handlers to have separate (optional) destructors.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5868 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-24 16:58:27 +00:00
Freddie Witherden
30712505f1
Add the ability to check if an id is a valid event handler or not.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5844 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-21 16:19:51 +00:00
Freddie Witherden
45ba680eb6
Convert a warning in betawidget to an assert; ensure that when adding a child that it has no parent.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5843 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-21 13:46:12 +00:00
Freddie Witherden
34e4246bd4
Fix a couple of typos and a compiler warning in betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5840 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-20 13:05:44 +00:00
Freddie Witherden
d3881835d0
Make the id of a widget a const char*.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5837 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-17 20:51:59 +00:00
Freddie Witherden
077cfee020
Add widgetGetCurrentlyMousedOver to return the widget that currently has the mouse over it.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5834 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-17 18:22:38 +00:00
Freddie Witherden
dd5a740143
Update the Doxygen comments for betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5830 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-16 17:49:52 +00:00
Freddie Witherden
38cef47896
Fix some compiler warnings for window.c.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5824 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-15 23:28:03 +00:00
Freddie Witherden
237fbd2514
Add more granular window positioning functions to Betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5819 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-15 19:29:57 +00:00
Freddie Witherden
c51ae395ce
Fix a potential memory leak in hBox.c, plus some minor cleanup.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5818 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-15 10:28:48 +00:00
Freddie Witherden
d8aca5b13f
Add animation support to betawidget ( #27 ), improvements to follow.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5817 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-15 09:59:11 +00:00
Freddie Witherden
4718a24ede
Add a preliminary window class. Todo:
...
* More granular control over window position (relative offsets &c);
* frame drawing code.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5816 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-14 22:04:10 +00:00
Freddie Witherden
d6da0800f9
Redo the layout for the entire window when a child widget is added or removed.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5808 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-13 22:19:44 +00:00
Freddie Witherden
96e327b46c
Add GPLv2 or above licensing cruft to betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5807 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-13 22:00:17 +00:00
Freddie Witherden
ab0ba130de
Use a triangle strip as opposed to quads for widget compositing.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5802 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-13 16:25:36 +00:00
Freddie Witherden
a0384da56a
Do not allow setting of widget->offset directly, instead use a setter method.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5801 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-13 11:21:58 +00:00
Freddie Witherden
f66a96b560
Add drag support to betawidget. This closes ticket #30 .
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5800 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-12 13:00:40 +00:00
Freddie Witherden
fb6b8d30b6
Clean up the mouse motion event handling code somewhat.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5799 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-12 11:27:54 +00:00
Freddie Witherden
2d54d1b25b
Update the doxygen documentation for betawidget some more.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5798 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-11 19:03:48 +00:00
Freddie Witherden
c6c9aeb0c6
Extend the mouseEvent structure so that it also contains the location of the previous mouse event.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5797 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-11 17:18:26 +00:00
Freddie Witherden
dd3944c26c
More const-correctness for betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5792 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-11 10:27:11 +00:00
Freddie Witherden
421335008a
Improve const-correctness in betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5791 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-10 22:51:12 +00:00
Freddie Witherden
b752595aae
Add the implementation-defined widgetGetTime() function (which returns the current time in ms).
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5789 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-10 12:43:45 +00:00
Freddie Witherden
0c527f5c38
Update the doxygen documentation for betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5788 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-10 11:12:42 +00:00
Freddie Witherden
7403707e37
Ensure that we set the event type correctly for timer events.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5787 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-09 20:52:51 +00:00
Freddie Witherden
0440da3f48
Make it possible to get and set the user-data of event handlers.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5786 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-08 18:15:50 +00:00
Freddie Witherden
b8d25a33e2
Fix another (and with any luck the last) bug in vector.c.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5785 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-08 17:16:00 +00:00
Freddie Witherden
54df5e1b9e
Add a special EVT_DESTRUCT event to give event handlers a chance to clean-up/free any resources they have allocated.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5757 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-02 22:56:14 +00:00
Freddie Witherden
ed5b269cbd
Some cosmetic changes to widget.h
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5740 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-02 15:47:41 +00:00
Freddie Witherden
bfa3f7173c
Fix yet another bug in vector.c.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5739 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-02 15:38:11 +00:00
Freddie Witherden
81ba4bec25
Switch to a floating point co-ordinate system which better reflects the underlying APIs (Cairo and OpenGL).
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5736 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-02 14:47:12 +00:00
Freddie Witherden
977bc5e327
Add support for showing and hiding widgets; update how events are handled when a widget is hidden or disabled.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5731 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 21:24:19 +00:00
Freddie Witherden
f7f5d309a7
Move the glTranslatef calls in the widgetCompositeImpl function to outside of the for loop,
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5729 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 18:55:42 +00:00
Freddie Witherden
2c20b8e0e7
Fix a minor indentation issue in widget.c
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5727 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 17:51:07 +00:00
Freddie Witherden
b45fad3ee0
Update the documentation for vector.h and fix a bug in vector.c.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5723 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 12:02:18 +00:00
Freddie Witherden
415f4555dc
Remove some empty doc-blocks from betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5722 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 11:31:12 +00:00
Freddie Witherden
b854f5bcb0
Remove some dodgy forward declarations from betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5721 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-01 09:15:43 +00:00
Freddie Witherden
7aef59ad0d
Allow Betawidget to compile under OS X (OpenGL header location is different).
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5720 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-31 19:30:36 +00:00
Freddie Witherden
30b0cfac27
Update the documentation for vectorCreate.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5719 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-31 18:39:59 +00:00
Freddie Witherden
4c2fedaff6
Save the current state of the cairo context before drawing and restore once finished.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5588 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-19 19:34:51 +00:00
Freddie Witherden
36a4191818
Switch to an OpenGL compositing mode; some clean-up still required.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5578 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-18 22:21:54 +00:00
Freddie Witherden
5bb3421545
Prototype and document widgetAddTimerEventHandler.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5572 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-18 12:10:47 +00:00
Freddie Witherden
7458d5b499
Fix some more compiler warnings.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5571 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-16 21:19:33 +00:00
Freddie Witherden
2f254ade34
Make sure variables are defined before anything else.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5570 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-16 19:14:35 +00:00
Freddie Witherden
b48b8058e8
Add support for timer events and fix a bug in event id generation.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5557 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-15 10:12:03 +00:00
Freddie Witherden
355d0c0760
Make it so that the event-removal system in betawidget actually works.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5555 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-14 23:41:53 +00:00
Freddie Witherden
86dd924881
Minor cosmetic improvements to betawidget.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5554 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-14 23:19:51 +00:00
Freddie Witherden
fede6c6e51
Fix a bug in vectorAt which could cause a segfault; add vectorHead which returns the last element added to the vector.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5552 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-14 23:08:37 +00:00
Freddie Witherden
89523ccf9f
Make sure we zero a widgets user data when we initialise it.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5540 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-14 08:51:55 +00:00
Freddie Witherden
d4168f712c
Make it possible for an event handler to remove itself.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5527 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-13 15:40:58 +00:00