]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/imaglist.h
Remove wrong const from wxMenu::GetMenuItems() documentation.
[wxWidgets.git] / interface / wx / imaglist.h
index ca3711c418f2f9434fa149d91d1714db513ff2b3..ab2cd24a0c725a8539e063bf77b235707fda246a 100644 (file)
@@ -3,17 +3,34 @@
 // Purpose:     interface of wxImageList
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+/**
+   Flag values for Set/GetImageList
+*/
+enum
+{
+    wxIMAGE_LIST_NORMAL, // Normal icons
+    wxIMAGE_LIST_SMALL,  // Small icons
+    wxIMAGE_LIST_STATE   // State icons: unimplemented (see WIN32 documentation)
+};
+
+/**
+   Flags for Draw
+*/
+#define wxIMAGELIST_DRAW_NORMAL         0x0001
+#define wxIMAGELIST_DRAW_TRANSPARENT    0x0002
+#define wxIMAGELIST_DRAW_SELECTED       0x0004
+#define wxIMAGELIST_DRAW_FOCUSED        0x0008
+
+
 /**
     @class wxImageList
-    @wxheader{imaglist.h}
 
-    A wxImageList contains a list of images, which are stored in
-    an unspecified form. Images can have masks for transparent
-    drawing, and can be made from a variety of sources including bitmaps
-    and icons.
+    A wxImageList contains a list of images, which are stored in an unspecified
+    form. Images can have masks for transparent drawing, and can be made from a
+    variety of sources including bitmaps and icons.
 
     wxImageList is used principally in conjunction with wxTreeCtrl and
     wxListCtrl classes.
 class wxImageList : public wxObject
 {
 public:
-    //@{
+    /**
+        Default ctor.
+    */
+    wxImageList();
+
     /**
         Constructor specifying the image size, whether image masks should be created,
         and the initial size of the list.
@@ -42,34 +63,66 @@ public:
 
         @see Create()
     */
-    wxImageList();
     wxImageList(int width, int height, bool mask = true,
                 int initialCount = 1);
-    //@}
 
-    //@{
     /**
-        Adds a new image using an icon.
+        Adds a new image or images using a bitmap and optional mask bitmap.
 
         @param bitmap
             Bitmap representing the opaque areas of the image.
         @param mask
             Monochrome mask bitmap, representing the transparent areas of the image.
+
+        @return The new zero-based image index.
+
+        @remarks The original bitmap or icon is not affected by the Add()
+                 operation, and can be deleted afterwards.
+                 If the bitmap is wider than the images in the list, then the
+                 bitmap will automatically be split into smaller images, each
+                 matching the dimensions of the image list.
+                 This does not apply when adding icons.
+    */
+    int Add(const wxBitmap& bitmap,
+            const wxBitmap& mask = wxNullBitmap);
+
+    /**
+        Adds a new image or images using a bitmap and mask colour.
+
+        @param bitmap
+            Bitmap representing the opaque areas of the image.
         @param maskColour
             Colour indicating which parts of the image are transparent.
+
+        @return The new zero-based image index.
+
+        @remarks The original bitmap or icon is not affected by the Add()
+                 operation, and can be deleted afterwards.
+                 If the bitmap is wider than the images in the list, then the
+                 bitmap will automatically be split into smaller images, each
+                 matching the dimensions of the image list.
+                 This does not apply when adding icons.
+    */
+    int Add(const wxBitmap& bitmap, const wxColour& maskColour);
+
+    /**
+        Adds a new image using an icon.
+
         @param icon
             Icon to use as the image.
 
         @return The new zero-based image index.
 
-        @remarks The original bitmap or icon is not affected by the Add
+        @remarks The original bitmap or icon is not affected by the Add()
                  operation, and can be deleted afterwards.
+                 If the bitmap is wider than the images in the list, then the
+                 bitmap will automatically be split into smaller images, each
+                 matching the dimensions of the image list.
+                 This does not apply when adding icons.
+
+        @onlyfor{wxmsw,wxosx}
     */
-    int Add(const wxBitmap& bitmap,
-            const wxBitmap& mask = wxNullBitmap);
-    int Add(const wxBitmap& bitmap, const wxColour& maskColour);
     int Add(const wxIcon& icon);
-    //@}
 
     /**
         Initializes the list. See wxImageList() for details.
@@ -90,58 +143,17 @@ public:
             Y position on the device context.
         @param flags
             How to draw the image. A bitlist of a selection of the following:
-
-
-
-
-
-
-            wxIMAGELIST_DRAW_NORMAL
-
-
-
-
-            Draw the image normally.
-
-
-
-
-
-            wxIMAGELIST_DRAW_TRANSPARENT
-
-
-
-
-            Draw the image with transparency.
-
-
-
-
-
-            wxIMAGELIST_DRAW_SELECTED
-
-
-
-
-            Draw the image in selected state.
-
-
-
-
-
-            wxIMAGELIST_DRAW_FOCUSED
-
-
-
-
-            Draw the image in a focused state.
+            - wxIMAGELIST_DRAW_NORMAL: Draw the image normally.
+            - wxIMAGELIST_DRAW_TRANSPARENT: Draw the image with transparency.
+            - wxIMAGELIST_DRAW_SELECTED: Draw the image in selected state.
+            - wxIMAGELIST_DRAW_FOCUSED: Draw the image in a focused state.
         @param solidBackground
             For optimisation - drawing can be faster if the function is told
             that the background is solid.
     */
-    bool Draw(int index, wxDC& dc, int x, int y,
-              int flags = wxIMAGELIST_DRAW_NORMAL,
-              bool solidBackground = false);
+    virtual bool Draw(int index, wxDC& dc, int x, int y,
+                      int flags = wxIMAGELIST_DRAW_NORMAL,
+                      bool solidBackground = false);
 
     /**
         Returns the bitmap corresponding to the given index.
@@ -156,7 +168,7 @@ public:
     /**
         Returns the number of images in the list.
     */
-    int GetImageCount() const;
+    virtual int GetImageCount() const;
 
     /**
         Retrieves the size of the images in the list. Currently, the @a index
@@ -169,10 +181,10 @@ public:
         @param height
             receives the height of the images in the list
 
-        @return @true if the function succeeded, @false if it failed (for example,
-                 if the image list was not yet initialized).
+        @return @true if the function succeeded, @false if it failed
+                (for example, if the image list was not yet initialized).
     */
-    bool GetSize(int index, int& width, int& height) const;
+    virtual bool GetSize(int index, int& width, int& height) const;
 
     /**
         Removes the image at the given position.
@@ -184,25 +196,40 @@ public:
     */
     bool RemoveAll();
 
-    //@{
     /**
         Replaces the existing image with the new image.
+        Windows only.
 
+        @param index
+            The index of the bitmap to be replaced.
         @param bitmap
             Bitmap representing the opaque areas of the image.
         @param mask
             Monochrome mask bitmap, representing the transparent areas of the image.
-        @param icon
-            Icon to use as the image.
 
         @return @true if the replacement was successful, @false otherwise.
 
-        @remarks The original bitmap or icon is not affected by the Replace
+        @remarks The original bitmap or icon is not affected by the Replace()
                  operation, and can be deleted afterwards.
     */
     bool Replace(int index, const wxBitmap& bitmap,
                  const wxBitmap& mask = wxNullBitmap);
+
+    /**
+        Replaces the existing image with the new image.
+
+        @param index
+            The index of the bitmap to be replaced.
+        @param icon
+            Icon to use as the image.
+
+        @return @true if the replacement was successful, @false otherwise.
+
+        @remarks The original bitmap or icon is not affected by the Replace()
+                 operation, and can be deleted afterwards.
+
+        @onlyfor{wxmsw,wxosx}
+    */
     bool Replace(int index, const wxIcon& icon);
-    //@}
 };