]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/window.h
Document wxGridCellAttrProvider.
[wxWidgets.git] / interface / wx / window.h
index 962d193a0c7b441a092e4d1df3934e02c2f0f7fc..f14f24f050161a53b2b9bd3a5016bb2c59d54aea 100644 (file)
@@ -513,7 +513,23 @@ public:
     virtual int GetScrollThumb(int orientation) const;
 
     /**
-        Returns @true if this window has a scroll bar for this orientation.
+        Returns @true if this window can have a scroll bar in this orientation.
+
+        @param orient
+            Orientation to check, either wxHORIZONTAL or wxVERTICAL.
+
+        @since 2.9.1
+    */
+    bool CanScroll(int orient) const;
+
+    /**
+        Returns @true if this window currently has a scroll bar for this
+        orientation.
+
+        This method may return @false even when CanScroll() for the same
+        orientation returns @true, but if CanScroll() returns @false, i.e.
+        scrolling in this direction is not enabled at all, HasScrollbar()
+        always returns @false as well.
 
         @param orient
             Orientation to check, either wxHORIZONTAL or wxVERTICAL.
@@ -1418,12 +1434,12 @@ public:
 
     /**
         Returns the background style of the window.
-        The background style can be one of the wxBackgroundStyle.
 
         @see SetBackgroundColour(), GetForegroundColour(),
              SetBackgroundStyle(), SetTransparent()
     */
     virtual wxBackgroundStyle GetBackgroundStyle() const;
+
     /**
         Returns the character height for this window.
     */
@@ -1583,8 +1599,28 @@ public:
     virtual bool SetBackgroundColour(const wxColour& colour);
 
     /**
-        Sets the background style of the window. see GetBackgroundStyle() for
-        the description of the possible style values.
+        Sets the background style of the window.
+
+        The default background style is wxBG_STYLE_ERASE which indicates that
+        the window background may be erased in EVT_ERASE_BACKGROUND handler.
+        This is a safe compatibility default however you may want to change it
+        to wxBG_STYLE_SYSTEM if you don't define any erase background event
+        handlers at all to avoid unnecessary generation of erase background
+        events and always let system erase the background. And you should
+        change the background style to wxBG_STYLE_PAINT if you define an
+        EVT_PAINT handler which completely overwrites the window background as
+        in this case erasing it previously, either in EVT_ERASE_BACKGROUND
+        handler or in the system default handler, would result in flicker as
+        the background pixels will be repainted twice every time the window is
+        redrawn. Do ensure that the background is entirely erased by your
+        EVT_PAINT handler in this case however as otherwise garbage may be left
+        on screen.
+
+        Notice that in previous versions of wxWidgets a common way to work
+        around the above mentioned flickering problem was to define an empty
+        EVT_ERASE_BACKGROUND handler. Setting background style to
+        wxBG_STYLE_PAINT is a simpler and more efficient solution to the same
+        problem.
 
         @see SetBackgroundColour(), GetForegroundColour(),
              SetTransparent()
@@ -2196,6 +2232,11 @@ public:
     */
     wxToolTip* GetToolTip() const;
 
+    /**
+        Get the text of the associated tooltip or empty string if none.
+     */
+    wxString GetToolTipText() const;
+
     /**
         Attach a tooltip to the window.