X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/80332672ab36153aa2424cff2a06b434287488c8..9dcf65d3c1a2dc99917f2fcd1743a0290e41a0d5:/include/wx/gtk/window.h diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index 2646c5c4bf..5bcfb26b5c 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -181,6 +181,11 @@ public: static wxLayoutDirection GTKGetLayout(GtkWidget *widget); static void GTKSetLayout(GtkWidget *widget, wxLayoutDirection dir); + // return true if this window must have a non-NULL parent, false if it can + // be created without parent (normally only top level windows but in wxGTK + // there is also the exception of wxMenuBar) + virtual bool GTKNeedsParent() const { return !IsTopLevel(); } + protected: // Override GTKWidgetNeedsMnemonic and return true if your // needs to set its mnemonic widget, such as for a @@ -255,6 +260,9 @@ public: GtkWidget *m_widget; // mostly the widget seen by the rest of GTK GtkWidget *m_wxwindow; // mostly the client area as per wxWidgets + // return true if the window is of a standard (i.e. not wxWidgets') class + bool IsOfStandardClass() const { return m_wxwindow == NULL; } + // this widget will be queried for GTK's focus events GtkWidget *m_focusWidget; @@ -292,7 +300,6 @@ public: // extra (wxGTK-specific) flags - bool m_needParent:1; // ! wxFrame, wxDialog, wxNotebookPage ? bool m_noExpose:1; // wxGLCanvas has its own redrawing bool m_nativeSizeEvent:1; // wxGLCanvas sends wxSizeEvent upon "alloc_size" bool m_hasScrolling:1; @@ -374,6 +381,8 @@ protected: // should be called from OnInternalIdle() if it's overridden void GTKUpdateCursor(); + void ConstrainSize(); + private: enum ScrollUnit { ScrollUnit_Line, ScrollUnit_Page, ScrollUnit_Max };