X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9dfef5ac200277eb1943cde5c1beafa2f392ab88..2fc9385a2c0054257b8c48d22d3a523afd6252a6:/include/wx/msw/toplevel.h diff --git a/include/wx/msw/toplevel.h b/include/wx/msw/toplevel.h index fc21871ac3..9b7871c4a6 100644 --- a/include/wx/msw/toplevel.h +++ b/include/wx/msw/toplevel.h @@ -58,6 +58,8 @@ public: virtual void SetIcons(const wxIconBundle& icons ); virtual void Restore(); + virtual bool SetShape(const wxRegion& region); + virtual bool Show(bool show = TRUE); virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL); @@ -70,6 +72,13 @@ public: // implementation from now on // -------------------------- + // event handlers + void OnActivate(wxActivateEvent& event); + + // called by wxWindow whenever it gets focus + void SetLastFocus(wxWindow *win) { m_winLastFocused = win; } + wxWindow *GetLastFocus() const { return m_winLastFocused; } + protected: // common part of all ctors void Init(); @@ -89,19 +98,12 @@ protected: // common part of Iconize(), Maximize() and Restore() void DoShowWindow(int nShowCmd); - // prevent the window from being deactivated sometimes (see comments in the - // code) - long HandleNcActivate(bool activate); - // translate wxWindows flags to Windows ones virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle) const; // choose the right parent to use with CreateWindow() virtual WXHWND MSWGetParent() const; - // we handle WM_NCACTIVATE specially here - virtual long MSWWindowProc(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam); - // is the window currently iconized? bool m_iconized; @@ -116,9 +118,11 @@ protected: bool m_fsIsMaximized; bool m_fsIsShowing; - // the hidden parent window for the frames which shouldn't appear in the - // taskbar - static wxWindow *ms_hiddenParent; + // the last focused child: we restore focus to it on activation + wxWindow *m_winLastFocused; + + DECLARE_EVENT_TABLE() + DECLARE_NO_COPY_CLASS(wxTopLevelWindowMSW) }; // list of all frames and modeless dialogs