X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e6feb95a79834836e88143b15d9f424ebe79621..72594e90b2da8c167ba63b89b2c168c57a19cab4:/include/wx/gtk/window.h diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index ec83a98567..cfb1e5af1b 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -48,6 +48,7 @@ public: // implement base class (pure) virtual methods // ------------------------------------------- + virtual bool Destroy(); virtual void Raise(); @@ -85,9 +86,9 @@ public: const wxFont *theFont = (const wxFont *) NULL) const; -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE virtual bool DoPopupMenu( wxMenu *menu, int x, int y ); -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE virtual void SetScrollbar( int orient, int pos, int thumbVisible, int range, bool refresh = TRUE ); @@ -164,43 +165,46 @@ public: int m_width, m_height; int m_oldClientWidth,m_oldClientHeight; - /* see the docs in src/gtk/window.cpp */ - GtkWidget *m_widget; - GtkWidget *m_wxwindow; + // see the docs in src/gtk/window.cpp + GtkWidget *m_widget; // mostly the widget seen by the rest of GTK + GtkWidget *m_wxwindow; // mostly the client area as per wxWindows + + // this widget will be queried for GTK's focus events + GtkWidget *m_focusWidget; #if HAVE_XIM - /* XIM support for wxWindows */ + // XIM support for wxWindows GdkIC *m_ic; GdkICAttr *m_icattr; #endif - - /* scrolling stuff */ + + // scrolling stuff GtkAdjustment *m_hAdjust,*m_vAdjust; float m_oldHorizontalPos; float m_oldVerticalPos; // 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_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; bool m_hasVMT:1; bool m_sizeSet:1; bool m_resizing:1; - bool m_isStaticBox:1; /* faster than IS_KIND_OF */ - bool m_isRadioButton:1; /* faster than IS_KIND_OF */ - bool m_isFrame:1; /* faster than IS_KIND_OF */ - bool m_acceptsFocus:1; /* not wxStaticBox, not wxStaticBitmap etc. */ + bool m_isStaticBox:1; // faster than IS_KIND_OF + bool m_isRadioButton:1; // faster than IS_KIND_OF + bool m_isFrame:1; // faster than IS_KIND_OF + bool m_acceptsFocus:1; // not wxStaticBox, not wxStaticBitmap etc. bool m_isScrolling; - bool m_clipPaintRegion; /* TRUE after ScrollWindow() */ - bool m_queuedFullRedraw; /* TRUE after DoMoveWindow */ + bool m_clipPaintRegion; // TRUE after ScrollWindow() + bool m_queuedFullRedraw; // TRUE after DoMoveWindow // these are true if the style were set before the widget was realized // (typcally in the constructor) but the actual GTK style must not be set // before the widget has been "realized" bool m_delayedForegroundColour:1; bool m_delayedBackgroundColour:1; - + // contains GTK's widgets internal information about non-default widget // font and colours. we create one for each widget that gets any // non-default attribute set via SetFont() or SetForegroundColour() / @@ -233,7 +237,9 @@ public: private: DECLARE_DYNAMIC_CLASS(wxWindowGTK) - DECLARE_NO_COPY_CLASS(wxWindowGTK); + DECLARE_NO_COPY_CLASS(wxWindowGTK) }; +extern wxWindow *wxFindFocusedChild(wxWindowGTK *win); + #endif // __GTKWINDOWH__