X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin3_src%2FWM%2Frenderers%2Fmenu.c;h=9d2ecea7a0bc74c79156ff4b3447ffdd2bb626dd;hb=ed78a9ac44c440180c37c1cbbbd7ecbc4d9076d7;hp=a183de005593c020deee31913fbe37616aa139da;hpb=21192b41da0f87dba07dac08b2d814b0976d929c;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin3_src/WM/renderers/menu.c b/Usermode/Applications/axwin3_src/WM/renderers/menu.c index a183de00..9d2ecea7 100644 --- a/Usermode/Applications/axwin3_src/WM/renderers/menu.c +++ b/Usermode/Applications/axwin3_src/WM/renderers/menu.c @@ -47,6 +47,8 @@ typedef struct sMenuWindowInfo void Renderer_Menu_Init(void); tWindow *Renderer_Menu_Create(int Argument); void Renderer_Menu_Redraw(tWindow *Window); + int Renderer_Menu_HandleIPC_AddItem(tWindow *Window, size_t Length, const void *Data); + int Renderer_Menu_HandleIPC_SetFlags(tWindow *Window, size_t Length, const void *Data); int Renderer_Menu_HandleMessage(tWindow *Window, int Msg, int Length, const void *Data); // === CONSTANTS === @@ -70,7 +72,12 @@ tWMRenderer gRenderer_Menu = { .Name = "Menu", .CreateWindow = Renderer_Menu_Create, .Redraw = Renderer_Menu_Redraw, - .HandleMessage = Renderer_Menu_HandleMessage + .HandleMessage = Renderer_Menu_HandleMessage, + .nIPCHandlers = 2, + .IPCHandlers = { + Renderer_Menu_HandleIPC_AddItem, +// Renderer_Menu_HandleIPC_SetFlags + } }; tFont *gMenu_Font = NULL; // System monospace @@ -196,8 +203,9 @@ void Renderer_Menu_Redraw(tWindow *Window) } } -int Renderer_Menu_int_AddItem(tWindow *Window, int Length, const tMenuMsg_AddItem *Msg) +int Renderer_Menu_HandleIPC_AddItem(tWindow *Window, size_t Length, const void *Data) { + const tMenuIPC_AddItem *Msg = Data; tMenuWindowInfo *info = Window->RendererInfo; tMenuItem *item; @@ -418,11 +426,6 @@ int Renderer_Menu_HandleMessage(tWindow *Window, int Msg, int Length, const void return 0; } - // Manipulation messages - case MSG_MENU_ADDITEM: -// _SysDebug("MSG_MENU_ADDITEM"); - return Renderer_Menu_int_AddItem(Window, Length, Data); - // Only message to pass to client case MSG_MENU_SELECT: return 1;