X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/47b378bd88260611387af8604a1c8f62355350ab..4ed85025f3ba537206f70f3dd10466e16da926d4:/include/wx/msw/frame.h?ds=sidebyside diff --git a/include/wx/msw/frame.h b/include/wx/msw/frame.h index 7b2e01632b..2ea3ed670f 100644 --- a/include/wx/msw/frame.h +++ b/include/wx/msw/frame.h @@ -12,7 +12,7 @@ #ifndef _WX_FRAME_H_ #define _WX_FRAME_H_ -class WXDLLEXPORT wxFrame : public wxFrameBase +class WXDLLIMPEXP_CORE wxFrame : public wxFrameBase { public: // construction @@ -42,7 +42,6 @@ public: // implement base class pure virtuals virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL); - virtual void Raise(); // implementation only from now on // ------------------------------- @@ -60,7 +59,7 @@ public: // Status bar #if wxUSE_STATUSBAR virtual wxStatusBar* OnCreateStatusBar(int number = 1, - long style = wxST_SIZEGRIP, + long style = wxSTB_DEFAULT_STYLE, wxWindowID id = 0, const wxString& name = wxStatusLineNameStr); @@ -75,16 +74,10 @@ public: { return m_useNativeStatusBar; } #endif // wxUSE_STATUSBAR -#if wxUSE_MENUS - WXHMENU GetWinMenu() const { return m_hMenu; } -#endif // wxUSE_MENUS - // event handlers - bool HandlePaint(); bool HandleSize(int x, int y, WXUINT flag); bool HandleCommand(WXWORD id, WXWORD cmd, WXHWND control); bool HandleMenuSelect(WXWORD nItem, WXWORD nFlags, WXHMENU hMenu); - bool HandleMenuLoop(const wxEventType& evtType, WXWORD isPopup); // tooltip management #if wxUSE_TOOLTIPS @@ -92,9 +85,8 @@ public: void SetToolTipCtrl(WXHWND hwndTT) { m_hwndToolTip = hwndTT; } #endif // tooltips - // a MSW only function which sends a size event to the window using its - // current size - this has an effect of refreshing the window layout - virtual void SendSizeEvent(); + // override the base class function to handle iconized/maximized frames + virtual void SendSizeEvent(int flags = 0); virtual wxPoint GetClientAreaOrigin() const; @@ -109,6 +101,12 @@ public: WXWPARAM wParam, WXLPARAM lParam); +#if wxUSE_MENUS + // get the currently active menu: this is the same as the frame menu for + // normal frames but is overridden by wxMDIParentFrame + virtual WXHMENU MSWGetActiveMenu() const { return m_hMenu; } +#endif // wxUSE_MENUS + protected: // common part of all ctors void Init(); @@ -133,8 +131,17 @@ protected: // wxMDIChildFrame bool MSWDoTranslateMessage(wxFrame *frame, WXMSG *msg); - // handle WM_INITMENUPOPUP message to generate wxEVT_MENU_OPEN - bool HandleInitMenuPopup(WXHMENU hMenu); +#if wxUSE_MENUS + // handle WM_EXITMENULOOP message for Win95 only + bool HandleExitMenuLoop(WXWORD isPopup); + + // handle WM_(UN)INITMENUPOPUP message to generate wxEVT_MENU_OPEN/CLOSE + bool HandleMenuPopup(wxEventType evtType, WXHMENU hMenu); + + // Command part of HandleMenuPopup() and HandleExitMenuLoop(). + bool DoSendMenuOpenCloseEvent(wxEventType evtType, wxMenu* menu, bool popup); +#endif // wxUSE_MENUS + virtual bool IsMDIChild() const { return false; }