summaryrefslogtreecommitdiff
path: root/alf/alfpanel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'alf/alfpanel.cpp')
-rw-r--r--alf/alfpanel.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/alf/alfpanel.cpp b/alf/alfpanel.cpp
index 62bac1e..be02890 100644
--- a/alf/alfpanel.cpp
+++ b/alf/alfpanel.cpp
@@ -152,6 +152,22 @@ ALF_Panel_DefWindowProc(HWND window, UINT msg, WPARAM wparam, LPARAM lparam)
return TRUE;
}
+ if (msg == WM_COMMAND && priv->vtbl && priv->vtbl->command) {
+ HWND source = (HWND)lparam;
+ WORD code = HIWORD(wparam);
+ WORD id = LOWORD(wparam);
+ LRESULT r = priv->vtbl->command(priv->closure, window, code, id, source);
+ if (r)
+ return r;
+ }
+
+ if (msg == WM_NOTIFY && priv->vtbl && priv->vtbl->notify) {
+ NMHDR *nmhdr = (NMHDR *)lparam;
+ LRESULT r = priv->vtbl->notify(priv->closure, window, wparam, nmhdr);
+ if (r)
+ return r;
+ }
+
if (ALF_ShouldMessageBubble(window, msg, wparam, lparam))
return SendMessage(GetParent(window), msg, wparam, lparam);