3 * \author John Hodge (thePowersGang)
4 * \brief AxWin Control Messages and structures
6 #ifndef _AXWIN_MESSAGES_H
7 #define _AXWIN_MESSAGES_H
11 typedef struct sAxWin_Message tAxWin_Message;
12 typedef struct sAxWin_RetMsg tAxWin_RetMsg;
25 // Client->Server Requests
28 MSG_SREQ_REGISTER, // bool (char[] Name) - Registers this PID with the Window Manager
30 MSG_SREQ_ADDWIN, // ELEMENT (char[] Name) - Adds a tab to the window
32 MSG_SREQ_SETICON, // void (TAB Tab, char[] IconURI) - Set the icon of a tab (or application)
34 MSG_SREQ_NEWDIALOG, // DIALOG (TAB Parent, char[] Name) - Creates a dialog
35 MSG_SREQ_DELDIALOG, // void (DIALOG Dialog) - Closes a dialog
37 MSG_SREQ_SETNAME, // void (ELEMENT Element, char[] Name)
38 MSG_SREQ_GETNAME, // char[] (ELEMENT Element)
41 MSG_SREQ_INSERT, // ELEMENT (ELEMENT Parent, eAxWin_Controls Type, u32 Flags)
42 MSG_SREQ_DELETE, // void (ELEMENT Element)
45 // All drawing functions take an ELEMENT as their first parameter.
46 // This must be either a Window or Canvas control
49 MSG_SREQ_LINE, MSG_SREQ_CURVE,
50 MSG_SREQ_RECT, MSG_SREQ_FILLRECT,
51 MSG_SREQ_RIMG, MSG_SREQ_SIMG, // Register/Set Image
52 MSG_SREQ_SETFONT, MSG_SREQ_PUTTEXT,
54 // - Callback Registration
57 MSG_SREQ_SET_MAXIMIZE_AREA, // void (uint16_t X, Y, W, H)
59 // Server->Client Responses
61 MSG_SRSP_RETURN, // {int RequestID, void[] Return Value} - Returns a value from a server request
66 // --- Server Requests (Requests from the client of the server)
68 * \brief Server Request - Ping (Get Server Version)
70 struct sAxWin_SReq_Ping
75 * \brief Server Request - New Window
76 * \see eAxWin_Messages.MSG_SREQ_NEWWINDOW
78 struct sAxWin_SReq_NewWindow
84 struct sAxWin_SReq_NewElement
92 // --- Server Responses
94 * \brief Server Response - Pong
95 * \see eAxWin_Messages.MSG_SRSP_PONG
97 struct sAxWin_SRsp_Version
105 // === Core Message Structure
107 * \brief Overarching Message Structure
108 * \note sizeof(tAxWin_Message) is never valid
110 struct sAxWin_Message
114 uint16_t Size; // Size of data