X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2Finclude%2Faxwin3%2Faxwin.h;h=fe116e9d8ca2ed3d56d22e8a9987b28b28b8061a;hb=51ab5f489bc356940c95cc936fd0508e8f07ea97;hp=49fc4df310a5265f49a2a43f62284abaebb717a8;hpb=4fa95391e2ff812412d7229e0135efd49cd5f3ed;p=tpg%2Facess2.git diff --git a/Usermode/include/axwin3/axwin.h b/Usermode/include/axwin3/axwin.h index 49fc4df3..fe116e9d 100644 --- a/Usermode/include/axwin3/axwin.h +++ b/Usermode/include/axwin3/axwin.h @@ -8,17 +8,25 @@ #ifndef _AXWIN3_AXWIN_H_ #define _AXWIN3_AXWIN_H_ +// === CONSTANTS === + +// === TYPES === typedef struct sAxWin3_Window *tHWND; +typedef unsigned int tAxWin3_Colour; // TODO: Actual 32-bit typedef void (*tAxWin3_MessageCallback)(int SourceTID, int Length); -typedef int (*tAxWin3_WindowMessageHandler)(tHWND Window, int Length, void *Data); +typedef int (*tAxWin3_WindowMessageHandler)(tHWND Window, int Message, int Length, void *Data); // --- Connection management extern void AxWin3_Connect(const char *ServerDesc); extern tAxWin3_MessageCallback AxWin3_SetMessageCallback(tAxWin3_MessageCallback Callback); extern void AxWin3_MainLoop(void); +// --- Non-Window based functions +extern int AxWin3_GetDisplayCount(void); +extern int AxWin3_GetDisplayDims(int Display, int *X, int *Y, int *Width, int *Height); + // --- Window creation/deletion /** * \brief Create a new window (with the required client structures) @@ -43,8 +51,11 @@ extern tHWND AxWin3_CreateWindow( extern void AxWin3_DestroyWindow(tHWND Window); // --- Core window management functions -extern void AxWin3_SendMessage(tHWND Window, int Length, void *Data); +extern void AxWin3_SendMessage(tHWND Window, tHWND Dest, int Message, int Length, void *Data); +extern void AxWin3_SetWindowTitle(tHWND Window, const char *Title); +extern void AxWin3_FocusWindow(tHWND Window); extern void AxWin3_ShowWindow(tHWND Window, int bShow); +extern void AxWin3_DecorateWindow(tHWND Window, int bDecorate); extern void AxWin3_SetWindowPos(tHWND Window, short X, short Y, short W, short H); extern void AxWin3_MoveWindow(tHWND Window, short X, short Y); extern void AxWin3_ResizeWindow(tHWND Window, short W, short H);