X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ebf7d5c40ad5436cb2fd43d58193c2d32423504a..5f4994df03d1c38b6674d410d500d99cdf201531:/interface/wx/toplevel.h diff --git a/interface/wx/toplevel.h b/interface/wx/toplevel.h index 29a65bfb2f..813925bf27 100644 --- a/interface/wx/toplevel.h +++ b/interface/wx/toplevel.h @@ -3,7 +3,7 @@ // Purpose: interface of wxTopLevelWindow // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @@ -46,7 +46,7 @@ enum internal top level window list. @beginEventEmissionTable - @event{EVT_ACTIVATE(id, func)} + @event{EVT_MAXIMIZE(id, func)} Process a @c wxEVT_MAXIMIZE event. See wxMaximizeEvent. @event{EVT_MOVE(func)} Process a @c wxEVT_MOVE event, which is generated when a window is moved. @@ -59,6 +59,8 @@ enum Process a @c wxEVT_MOVE_END event, which is generated when the user stops moving or sizing a window. wxMSW only. See wxMoveEvent. + @event{EVT_SHOW(func)} + Process a @c wxEVT_SHOW event. See wxShowEvent. @endEventTable @library{wxcore} @@ -66,7 +68,7 @@ enum @see wxDialog, wxFrame */ -class wxTopLevelWindow : public wxWindow +class wxTopLevelWindow : public wxNonOwnedWindow { public: /** @@ -78,7 +80,7 @@ public: Constructor creating the top level window. */ wxTopLevelWindow(wxWindow *parent, - wxWindowID winid, + wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, @@ -148,6 +150,19 @@ public: */ wxWindow* GetDefaultItem() const; + /** + Get the default size for a new top level window. + + This is used internally by wxWidgets on some platforms to determine the + default size for a window created using ::wxDefaultSize so it is not + necessary to use it when creating a wxTopLevelWindow, however it may be + useful if a rough estimation of the window size is needed for some + other reason. + + @since 2.9.2 + */ + static wxSize GetDefaultSize(); + /** Returns the standard icon of the window. The icon will be invalid if it hadn't been previously set by SetIcon(). @@ -247,6 +262,33 @@ public: */ virtual void Maximize(bool maximize = true); + /** + MSW-specific function for accessing the system menu. + + Returns a wxMenu pointer representing the system menu of the window + under MSW. The returned wxMenu may be used, if non-@c NULL, to add + extra items to the system menu. The usual @c wxEVT_COMMAND_MENU_SELECTED + events (that can be processed using @c EVT_MENU event table macro) will + then be generated for them. All the other wxMenu methods may be used as + well but notice that they won't allow you to access any standard system + menu items (e.g. they can't be deleted or modified in any way + currently). + + Notice that because of the native system limitations the identifiers of + the items added to the system menu must be multiples of 16, otherwise + no events will be generated for them. + + The returned pointer must @em not be deleted, it is owned by the window + and will be only deleted when the window itself is destroyed. + + This function is not available in the other ports by design, any + occurrences of it in the portable code must be guarded by + @code #ifdef __WXMSW__ @endcode preprocessor guards. + + @since 2.9.3 + */ + wxMenu *MSWGetSystemMenu() const; + /** Use a system-dependent way to attract users attention to the window when it is in background. @@ -273,6 +315,11 @@ public: */ wxWindow* SetDefaultItem(wxWindow* win); + + wxWindow* SetTmpDefaultItem(wxWindow * win); + wxWindow* GetTmpDefaultItem() const; + + /** Sets the icon for this window. @@ -351,15 +398,6 @@ public: const wxString& label = wxEmptyString, wxMenu* subMenu = NULL); - /** - If the platform supports it, sets the shape of the window to that - depicted by @a region. The system will not display or respond to any - mouse event for the pixels that lie outside of the region. To reset the - window to the normal rectangular shape simply call SetShape() again with - an empty wxRegion. Returns @true if the operation is successful. - */ - virtual bool SetShape(const wxRegion& region); - /** Allows specification of minimum and maximum window sizes, and window size increments. If a pair of values is not set (or set to -1), no @@ -425,7 +463,7 @@ public: @param alpha Determines how opaque or transparent the window will be, if the - platform supports the opreration. A value of 0 sets the window to be + platform supports the operation. A value of 0 sets the window to be fully transparent, and a value of 255 sets the window to be fully opaque. */