]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/vlbox.h
Move code removing "-psn_xxx" command line arguments to common code.
[wxWidgets.git] / interface / wx / vlbox.h
index d3762220103fa06bf2277c3e0d6c854edcef5855..5f965c97063bbff59909b1f8c501e90598f405ad 100644 (file)
@@ -2,13 +2,11 @@
 // Name:        vlbox.h
 // Purpose:     interface of wxVListBox
 // Author:      wxWidgets team
 // Name:        vlbox.h
 // Purpose:     interface of wxVListBox
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxVListBox
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxVListBox
-    @wxheader{vlbox.h}
 
     wxVListBox is a wxListBox-like control with the following two main
     differences from a regular wxListBox: it can have an arbitrarily huge
 
     wxVListBox is a wxListBox-like control with the following two main
     differences from a regular wxListBox: it can have an arbitrarily huge
@@ -31,7 +29,6 @@
 
     @library{wxcore}
     @category{ctrl}
 
     @library{wxcore}
     @category{ctrl}
-    <!-- @appearance{vlistbox.png} -->
 
     @see wxSimpleHtmlListBox, wxHtmlListBox
 */
 
     @see wxSimpleHtmlListBox, wxHtmlListBox
 */
@@ -126,6 +123,15 @@ public:
     */
     wxPoint GetMargins() const;
 
     */
     wxPoint GetMargins() const;
 
+    /**
+        Returns the rectangle occupied by this item in physical coordinates.
+
+        If the item is not currently visible, returns an empty rectangle.
+
+        @since 2.9.0
+     */
+    wxRect GetItemRect(size_t item) const;
+
     /**
         Returns the index of the next selected item or @c wxNOT_FOUND if there
         are no more.
     /**
         Returns the index of the next selected item or @c wxNOT_FOUND if there
         are no more.
@@ -183,60 +189,7 @@ public:
     bool IsSelected(size_t item) const;
 
     /**
     bool IsSelected(size_t item) const;
 
     /**
-        This method is used to draw the items background and, maybe, a border
-        around it.
-
-        The base class version implements a reasonable default behaviour which
-        consists in drawing the selected item with the standard background
-        colour and drawing a border around the item if it is either selected or
-        current.
-
-        @todo Change this function signature to non-const.
-    */
-    void OnDrawBackground(wxDC& dc, const wxRect& rect, size_t n) const;
-
-    /**
-        The derived class must implement this function to actually draw the
-        item with the given index on the provided DC.
-
-        @param dc
-            The device context to use for drawing.
-        @param rect
-            The bounding rectangle for the item being drawn (DC clipping
-            region is set to this rectangle before calling this function).
-        @param n
-            The index of the item to be drawn.
-
-        @todo Change this function signature to non-const.
-    */
-    virtual void OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const;
-
-    /**
-        This method may be used to draw separators between the lines. The
-        rectangle passed to it may be modified, typically to deflate it a bit
-        before passing to OnDrawItem().
-
-        The base class version of this method doesn't do anything.
-
-        @param dc
-            The device context to use for drawing.
-        @param rect
-            The bounding rectangle for the item.
-        @param n
-            The index of the item.
-
-        @todo Change this function signature to non-const.
-    */
-    virtual void OnDrawSeparator(wxDC& dc, wxRect& rect, size_t n) const;
-
-    /**
-        The derived class must implement this method to return the height of
-        the specified item (in pixels).
-    */
-    virtual wxCoord OnMeasureItem(size_t n) const;
-
-    /**
-        Selects or deselects the specified item which must be valid (i.e. not
+        Selects or deselects the specified item which must be valid (i.e.\ not
         equal to @c wxNOT_FOUND).
 
         @return @true if the items selection status has changed or @false
         equal to @c wxNOT_FOUND).
 
         @return @true if the items selection status has changed or @false
@@ -278,7 +231,7 @@ public:
 
         This is just a synonym for wxVScrolledWindow::SetRowCount().
     */
 
         This is just a synonym for wxVScrolledWindow::SetRowCount().
     */
-    void SetItemCount(size_t count);
+    virtual void SetItemCount(size_t count);
 
     //@{
     /**
 
     //@{
     /**
@@ -316,7 +269,7 @@ public:
     void SetSelectionBackground(const wxColour& col);
 
     /**
     void SetSelectionBackground(const wxColour& col);
 
     /**
-        Toggles the state of the specified @a item, i.e. selects it if it was
+        Toggles the state of the specified @a item, i.e.\ selects it if it was
         unselected and deselects it if it was selected.
 
         This method is only valid for multi selection listboxes.
         unselected and deselects it if it was selected.
 
         This method is only valid for multi selection listboxes.
@@ -324,5 +277,60 @@ public:
         @see Select()
     */
     void Toggle(size_t item);
         @see Select()
     */
     void Toggle(size_t item);
+
+protected:
+
+    /**
+        The derived class must implement this function to actually draw the
+        item with the given index on the provided DC.
+
+        @param dc
+            The device context to use for drawing.
+        @param rect
+            The bounding rectangle for the item being drawn (DC clipping
+            region is set to this rectangle before calling this function).
+        @param n
+            The index of the item to be drawn.
+
+        @todo Change this function signature to non-const.
+    */
+    virtual void OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const = 0;
+
+    /**
+        This method is used to draw the item's background and, maybe, a border
+        around it.
+
+        The base class version implements a reasonable default behaviour which
+        consists in drawing the selected item with the standard background
+        colour and drawing a border around the item if it is either selected or
+        current.
+
+        @todo Change this function signature to non-const.
+    */
+    virtual void OnDrawBackground(wxDC& dc, const wxRect& rect, size_t n) const;
+
+    /**
+        This method may be used to draw separators between the lines. The
+        rectangle passed to it may be modified, typically to deflate it a bit
+        before passing to OnDrawItem().
+
+        The base class version of this method doesn't do anything.
+
+        @param dc
+            The device context to use for drawing.
+        @param rect
+            The bounding rectangle for the item.
+        @param n
+            The index of the item.
+
+        @todo Change this function signature to non-const.
+    */
+    virtual void OnDrawSeparator(wxDC& dc, wxRect& rect, size_t n) const;
+
+    /**
+        The derived class must implement this method to return the height of
+        the specified item (in pixels).
+    */
+    virtual wxCoord OnMeasureItem(size_t n) const = 0;
 };
 
 };