diff options
author | George Hazan <george.hazan@gmail.com> | 2013-03-03 12:56:10 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2013-03-03 12:56:10 +0000 |
commit | 2dcb2ff9a79ebce4e3fae19a851f83e3c7d41474 (patch) | |
tree | 175ebcf8ca972b02874d19d734481024965ff264 /src/mir_core/subclass.cpp | |
parent | 1492cd4767bc9c7748455639a8eb4429a2771c34 (diff) |
forgotten another function: mir_callNextSubclass
git-svn-id: http://svn.miranda-ng.org/main/trunk@3870 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'src/mir_core/subclass.cpp')
-rw-r--r-- | src/mir_core/subclass.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mir_core/subclass.cpp b/src/mir_core/subclass.cpp index 50cc8e3920..a526aeb9bf 100644 --- a/src/mir_core/subclass.cpp +++ b/src/mir_core/subclass.cpp @@ -69,6 +69,17 @@ MIR_CORE_DLL(void) mir_subclassWindow(HWND hWnd, WNDPROC wndProc) p->m_hooks[p->m_iHooks++] = wndProc;
}
+MIR_CORE_DLL(LRESULT) mir_callNextSubclass(HWND hWnd, WNDPROC wndProc, UINT uMsg, WPARAM wParam, LPARAM lParam)
+{
+ MSubclassData *p = arSubclass.find((MSubclassData*)&hWnd);
+ if (p)
+ for (int i=0; i < p->m_iHooks-1; i++)
+ if (p->m_hooks[i] == wndProc)
+ return p->m_hooks[i+1](hWnd, uMsg, wParam, lParam);
+
+ return DefWindowProc(hWnd, uMsg, wParam, lParam);
+}
+
MIR_CORE_DLL(void) KillModuleSubclassing(HMODULE hInst)
{
for (int i=0; i < arSubclass.getCount(); i++) {
|