123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #ifndef _SUBCLASSW_H
- #define _SUBCLASSW_H
- class CSubclassWnd : public CObject {
- public:
- DECLARE_DYNAMIC(CSubclassWnd);
- CSubclassWnd();
- ~CSubclassWnd();
-
- virtual BOOL HookWindow(HWND hwnd);
- virtual BOOL HookWindow(CWnd* pWnd) { return HookWindow(pWnd->GetSafeHwnd()); }
- virtual BOOL IsHooked() { return m_hWnd!=NULL; }
- friend LRESULT CALLBACK HookWndProc(HWND, UINT, WPARAM, LPARAM);
- friend class CSubclassWndMap;
- #ifdef _DEBUG
- virtual void AssertValid() const;
- virtual void Dump(CDumpContext& dc) const;
- #endif
- protected:
- HWND m_hWnd;
- WNDPROC m_pOldWndProc;
- CSubclassWnd* m_pNext;
-
- virtual LRESULT WindowProc(UINT msg, WPARAM wp, LPARAM lp);
- virtual LRESULT Default();
- };
- #endif
|