]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/window.h
fixed bug with the caret positioning after SetValue() introduced by the last commit
[wxWidgets.git] / include / wx / gtk / window.h
index ec83a9856726d92f01f5c813cb94b44ed1f4513e..ce6b0332d4226c3137102f77969d91d3fa8669b8 100644 (file)
@@ -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 );
@@ -158,49 +159,53 @@ public:
     // the layouting functions have to be called later on
     // (i.e. in idle time, implemented in OnInternalIdle() ).
     void GtkUpdateSize() { m_sizeSet = FALSE; }
-
+    
     // position and size of the window
     int                  m_x, m_y;
     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_isListBox: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 +238,9 @@ public:
 
 private:
     DECLARE_DYNAMIC_CLASS(wxWindowGTK)
-    DECLARE_NO_COPY_CLASS(wxWindowGTK);
+    DECLARE_NO_COPY_CLASS(wxWindowGTK)
 };
 
+extern wxWindow *wxFindFocusedChild(wxWindowGTK *win);
+
 #endif // __GTKWINDOWH__