]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/x11/window.h
Added some Xlib replacement functions and structures for Nano-X
[wxWidgets.git] / include / wx / x11 / window.h
index 4a4b780befecd108794eee6a6e54a8265903fdff..5e747f150d57b5419dc03b9af61092de11e736ca 100644 (file)
@@ -111,7 +111,7 @@ public:
     WXDisplay *GetXDisplay() const;
     
     void SetLastClick(int button, long timestamp)
     WXDisplay *GetXDisplay() const;
     
     void SetLastClick(int button, long timestamp)
-    { m_lastButton = button; m_lastTS = timestamp; }
+        { m_lastButton = button; m_lastTS = timestamp; }
     
     int GetLastClickedButton() const { return m_lastButton; }
     long GetLastClickTime() const { return m_lastTS; }
     
     int GetLastClickedButton() const { return m_lastButton; }
     long GetLastClickTime() const { return m_lastTS; }
@@ -123,6 +123,12 @@ public:
     // Generates paint events
     void X11SendPaintEvents();
     
     // Generates paint events
     void X11SendPaintEvents();
     
+    // Clip to paint region?
+    bool GetClipPaintRegion() { return m_clipPaintRegion; }
+    
+    // Return clear region
+    wxRegion &GetClearRegion() { return m_clearRegion; }
+    
     // sets the fore/background colour for the given widget
     static void DoChangeForegroundColour(WXWindow widget, wxColour& foregroundColour);
     static void DoChangeBackgroundColour(WXWindow widget, wxColour& backgroundColour, bool changeArmColour = FALSE);
     // sets the fore/background colour for the given widget
     static void DoChangeForegroundColour(WXWindow widget, wxColour& foregroundColour);
     static void DoChangeBackgroundColour(WXWindow widget, wxColour& backgroundColour, bool changeArmColour = FALSE);
@@ -131,10 +137,15 @@ public:
     // smaller
     virtual wxPoint GetClientAreaOrigin() const;
     
     // smaller
     virtual wxPoint GetClientAreaOrigin() const;
     
-protected:
-    // event handlers (not virtual by design)
-    void OnIdle(wxIdleEvent& event);
+    // I don't want users to override what's done in idle so everything that
+    // has to be done in idle time in order for wxX11 to work is done in
+    // OnInternalIdle
+    virtual void OnInternalIdle();
     
     
+    // For compatibility across platforms (not in event table)
+    void OnIdle(wxIdleEvent& WXUNUSED(event)) {}
+    
+protected:
     // Makes an adjustment to the window position (for example, a frame that has
     // a toolbar that it manages itself).
     virtual void AdjustForParentClientOrigin(int& x, int& y, int sizeFlags);
     // Makes an adjustment to the window position (for example, a frame that has
     // a toolbar that it manages itself).
     virtual void AdjustForParentClientOrigin(int& x, int& y, int sizeFlags);
@@ -148,11 +159,10 @@ protected:
     
 protected:
     WXWindow              m_mainWidget;
     
 protected:
     WXWindow              m_mainWidget;
-    
     wxRegion              m_clearRegion;
     bool                  m_clipPaintRegion;
     wxRegion              m_clearRegion;
     bool                  m_clipPaintRegion;
-    
     bool                  m_winCaptured;  // ????
     bool                  m_winCaptured;  // ????
+    bool                  m_needsInputFocus; // Input focus set in OnIdle
 
     // implement the base class pure virtuals
     virtual void DoClientToScreen( int *x, int *y ) const;
 
     // implement the base class pure virtuals
     virtual void DoClientToScreen( int *x, int *y ) const;
@@ -165,10 +175,9 @@ protected:
         int sizeFlags = wxSIZE_AUTO);
     virtual void DoSetClientSize(int width, int height);
     virtual void DoMoveWindow(int x, int y, int width, int height);
         int sizeFlags = wxSIZE_AUTO);
     virtual void DoSetClientSize(int width, int height);
     virtual void DoMoveWindow(int x, int y, int width, int height);
-    
     virtual void DoCaptureMouse();
     virtual void DoReleaseMouse();
     virtual void DoCaptureMouse();
     virtual void DoReleaseMouse();
-    
+
 #if wxUSE_TOOLTIPS
     virtual void DoSetToolTip( wxToolTip *tip );
 #endif // wxUSE_TOOLTIPS
 #if wxUSE_TOOLTIPS
     virtual void DoSetToolTip( wxToolTip *tip );
 #endif // wxUSE_TOOLTIPS