6064d6f2870e686d2afb3761d67f5fae3ffd89ee
[tpg/acess2.git] / Usermode / Applications / axwin3_src / include / widget_messages.h
1 /*
2  * Acess2 Window Manager v3
3  * - By John Hodge (thePowersGang)
4  *
5  * widget_messages.h
6  * - AxWin2 Widget port
7  */
8 #ifndef _WIDGET_MESSAGES_H_
9 #define _WIDGET_MESSAGES_H_
10
11 enum eWidgetIPCCalls
12 {
13         // Control (Client->Server) messages
14         IPC_WIDGET_CREATE,
15         IPC_WIDGET_CREATESUBWIN,
16         IPC_WIDGET_DELETE,
17         IPC_WIDGET_SETFOCUS,
18         IPC_WIDGET_SETFLAGS,
19         IPC_WIDGET_SETSIZE,
20         IPC_WIDGET_SETTEXT,
21         IPC_WIDGET_SETCOLOUR,
22         
23         IPC_WIDGET_GETTEXT,
24         
25         N_IPC_WIDGET
26 };
27
28 typedef struct
29 {
30         uint32_t        Parent;
31         uint32_t        NewID;
32         uint32_t        Type;
33         uint32_t        Flags;
34         char    DebugName[];
35 } tWidgetIPC_Create;
36
37 typedef struct
38 {
39         uint32_t        Parent;
40         uint32_t        NewID;
41         uint32_t        Type;
42         uint32_t        Flags;
43         uint32_t        WindowHandle;
44         char    DebugName[];
45 } tWidgetIPC_CreateSubWin;
46
47 typedef struct
48 {
49         uint32_t        WidgetID;
50 } tWidgetIPC_Delete;
51
52 typedef struct
53 {
54         uint32_t        WidgetID;
55 } tWidgetIPC_SetFocus;
56
57 typedef struct
58 {
59         uint32_t        WidgetID;
60         uint32_t        Value;
61         uint32_t        Mask;
62 } tWidgetIPC_SetFlags;
63
64 typedef struct
65 {
66         uint32_t        WidgetID;
67         uint32_t        Value;
68 } tWidgetIPC_SetSize;
69
70 typedef struct
71 {
72         uint32_t        WidgetID;
73         char    Text[];
74 } tWidgetIPC_SetText;
75
76 typedef struct
77 {
78         uint32_t        WidgetID;
79         uint32_t        Index;
80         uint32_t        Colour;
81 } tWidgetIPC_SetColour;
82
83 enum eWidgetMessages
84 {
85         // Event (Server->Client) messages
86         MSG_WIDGET_FIRE = 0x1000,
87         MSG_WIDGET_KEYPRESS,
88         MSG_WIDGET_MOUSEBTN,
89 };
90
91
92
93 typedef struct
94 {
95         uint32_t        WidgetID;
96 } tWidgetMsg_Fire;
97
98 typedef struct
99 {
100         uint32_t        WidgetID;
101         uint32_t        KeySym;
102         uint32_t        Character;
103 } tWidgetMsg_KeyEvent;
104
105 typedef struct
106 {
107         uint32_t        WidgetID;
108         uint16_t        X;
109         uint16_t        Y;
110         uint8_t         Button;
111         uint8_t         bPressed;
112 } tWidgetMsg_MouseBtn;
113
114 #endif
115

UCC git Repository :: git.ucc.asn.au