]> icculus.org git repositories - divverent/nexuiz.git/blob - data/qcsrc/menu-div0test/item.c
added utility for depth-first search; added debug command "menu_cmd dumptree" to...
[divverent/nexuiz.git] / data / qcsrc / menu-div0test / item.c
1 #ifdef INTERFACE
2 CLASS(Item) EXTENDS(Object)
3         METHOD(Item, draw, void(entity))
4         METHOD(Item, keyDown, float(entity, float, float, float))
5         METHOD(Item, keyUp, float(entity, float, float, float))
6         METHOD(Item, mouseMove, float(entity, vector))
7         METHOD(Item, mousePress, float(entity, vector))
8         METHOD(Item, mouseDrag, float(entity, vector))
9         METHOD(Item, mouseRelease, float(entity, vector))
10         METHOD(Item, focusEnter, void(entity))
11         METHOD(Item, focusLeave, void(entity))
12         METHOD(Item, resizeNotify, void(entity, vector, vector, vector, vector))
13         METHOD(Item, relinquishFocus, void(entity))
14         METHOD(Item, open, void(entity))
15         METHOD(Item, toString, string(entity))
16         ATTRIB(Item, focused, float, 0)
17         ATTRIB(Item, focusable, float, 0)
18         ATTRIB(Item, parent, entity, NULL)
19 ENDCLASS(Item)
20 #endif
21
22 #ifdef IMPLEMENTATION
23 void relinquishFocusItem(entity me)
24 {
25         if(me.parent)
26                 if(me.parent.instanceOfContainer)
27                         me.parent.setFocus(me.parent, NULL);
28 }
29
30 void resizeNotifyItem(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize)
31 {
32 }
33
34 void drawItem(entity me)
35 {
36 }
37
38 void openItem(entity me)
39 {
40 }
41
42 float keyDownItem(entity me, float scan, float ascii, float shift)
43 {
44         return 0; // unhandled
45 }
46
47 float keyUpItem(entity me, float scan, float ascii, float shift)
48 {
49         return 0; // unhandled
50 }
51
52 float mouseMoveItem(entity me, vector pos)
53 {
54         return 0; // unhandled
55 }
56
57 float mousePressItem(entity me, vector pos)
58 {
59         return 0; // unhandled
60 }
61
62 float mouseDragItem(entity me, vector pos)
63 {
64         return 0; // unhandled
65 }
66
67 float mouseReleaseItem(entity me, vector pos)
68 {
69         return 0; // unhandled
70 }
71
72 void focusEnterItem(entity me)
73 {
74 }
75
76 void focusLeaveItem(entity me)
77 {
78 }
79
80 string toStringItem(entity me)
81 {
82         return "";
83 }
84 #endif