X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin3_src%2FWM%2Finclude%2Fwm_renderer.h;h=f91ccaf95904f868bba4fab061622d4fabc12814;hb=98bd9c0c8985c50c42231c116a4e18fedd47761e;hp=b734348f8366b507489281db4c9ccaf71fd87003;hpb=4fa95391e2ff812412d7229e0135efd49cd5f3ed;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin3_src/WM/include/wm_renderer.h b/Usermode/Applications/axwin3_src/WM/include/wm_renderer.h index b734348f..f91ccaf9 100644 --- a/Usermode/Applications/axwin3_src/WM/include/wm_renderer.h +++ b/Usermode/Applications/axwin3_src/WM/include/wm_renderer.h @@ -31,6 +31,12 @@ struct sWMRenderer * set the copy in the window structure. */ tWindow *(*CreateWindow)(int Arg); + + /** + * \brief Clean up any stored info + * \param Window Window being destroyed + */ + void (*DestroyWindow)(tWindow *Window); /** * \brief Redraw a window on the screen @@ -51,10 +57,18 @@ struct sWMRenderer * \param Data Implementation defined data buffer * \return Boolean failure (0: Handled, 1: Unhandled) */ - int (*HandleMessage)(tWindow *Window, int MessageID, int Length, void *Data); + int (*HandleMessage)(tWindow *Window, int MessageID, int Length, const void *Data); + + int nIPCHandlers; + + /** + * \brief IPC Message handler + */ + int (*IPCHandlers[])(tWindow *Window, size_t Length, const void *Data); }; extern void WM_RegisterRenderer(tWMRenderer *Renderer); extern tWindow *WM_CreateWindowStruct(size_t ExtraBytes); +extern int WM_SendIPCReply(tWindow *Window, int Message, size_t Length, const void *Data); #endif