X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/91dd52fe3ba8275366cf26a729f00a6a59d34855..4bf45c9ecafa14b167ef0c911a83cd5cc8fba4d2:/include/wx/msw/mdi.h diff --git a/include/wx/msw/mdi.h b/include/wx/msw/mdi.h index 891aaff8c5..1d5e440809 100644 --- a/include/wx/msw/mdi.h +++ b/include/wx/msw/mdi.h @@ -12,7 +12,7 @@ #ifndef _WX_MDI_H_ #define _WX_MDI_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "mdi.h" #endif @@ -30,8 +30,6 @@ class WXDLLEXPORT wxMDIChildFrame; class WXDLLEXPORT wxMDIParentFrame : public wxFrame { - DECLARE_DYNAMIC_CLASS(wxMDIParentFrame) - public: wxMDIParentFrame(); wxMDIParentFrame(wxWindow *parent, @@ -68,7 +66,7 @@ public: // just return a new class) virtual wxMDIClientWindow *OnCreateClient(void); -// WXHMENU GetWindowHMENU() const { return m_windowMenu; } + // MDI windows menu wxMenu* GetWindowMenu() const { return m_windowMenu; }; void SetWindowMenu(wxMenu* menu) ; @@ -92,17 +90,20 @@ public: bool HandleCommand(WXWORD id, WXWORD cmd, WXHWND control); // override window proc for MDI-specific message processing - virtual long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); + virtual WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); - virtual long MSWDefWindowProc(WXUINT, WXWPARAM, WXLPARAM); + virtual WXLRESULT MSWDefWindowProc(WXUINT, WXWPARAM, WXLPARAM); virtual bool MSWTranslateMessage(WXMSG* msg); protected: +#if wxUSE_MENUS_NATIVE virtual void InternalSetMenuBar(); +#endif // wxUSE_MENUS_NATIVE + + virtual WXHICON GetDefaultIcon() const; wxMDIClientWindow * m_clientWindow; wxMDIChildFrame * m_currentChild; -// WXHMENU m_windowMenu; wxMenu* m_windowMenu; // TRUE if MDI Frame is intercepting commands, not child @@ -112,6 +113,8 @@ private: friend class WXDLLEXPORT wxMDIChildFrame; DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxMDIParentFrame) + DECLARE_NO_COPY_CLASS(wxMDIParentFrame) }; // --------------------------------------------------------------------------- @@ -159,9 +162,10 @@ public: bool HandleMDIActivate(long bActivate, WXHWND, WXHWND); bool HandleWindowPosChanging(void *lpPos); bool HandleCommand(WXWORD id, WXWORD cmd, WXHWND control); + bool HandleGetMinMaxInfo(void *mmInfo); - virtual long MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam); - virtual long MSWDefWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam); + virtual WXLRESULT MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam); + virtual WXLRESULT MSWDefWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam); virtual bool MSWTranslateMessage(WXMSG *msg); virtual void MSWDestroyWindow(); @@ -176,6 +180,8 @@ protected: virtual void InternalSetMenuBar(); virtual bool IsMDIChild() const { return TRUE; } + virtual WXHICON GetDefaultIcon() const; + // common part of all ctors void Init(); @@ -183,7 +189,7 @@ private: bool m_needsResize; // flag which tells us to artificially resize the frame DECLARE_EVENT_TABLE() - DECLARE_DYNAMIC_CLASS(wxMDIChildFrame) + DECLARE_DYNAMIC_CLASS_NO_COPY(wxMDIChildFrame) }; // --------------------------------------------------------------------------- @@ -218,7 +224,7 @@ protected: private: DECLARE_EVENT_TABLE() - DECLARE_DYNAMIC_CLASS(wxMDIClientWindow) + DECLARE_DYNAMIC_CLASS_NO_COPY(wxMDIClientWindow) }; #endif