]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/ribbon/toolbar.h
No changes, just use "@since 3.0" consistently in the documentation.
[wxWidgets.git] / interface / wx / ribbon / toolbar.h
index 1a35d7e3d60430f3808de90e84b10b49a7c0eaca..c73f96380cdce015245f82fc93ff88b7f9cdb3c5 100644 (file)
@@ -2,7 +2,6 @@
 // Name:        ribbon/toolbar.h
 // Purpose:     interface of wxRibbonToolBar
 // Author:      Peter Cawley
-// RCS-ID:      $Id$
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
@@ -102,6 +101,18 @@ public:
                 const wxBitmap& bitmap,
                 const wxString& help_string = wxEmptyString);
 
+    /**
+        Add a toggle tool to the tool bar (simple version).
+
+        @since 2.9.4
+
+        @see AddTool()
+    */
+    virtual wxRibbonToolBarToolBase* AddToggleTool(
+        int tool_id,
+        const wxBitmap& bitmap,
+        const wxString& help_string);
+
     /**
         Add a tool to the tool bar.
         
@@ -124,7 +135,7 @@ public:
         @return An opaque pointer which can be used only with other tool bar
             methods.
             
-        @see AddDropdownTool(), AddHybridTool(), AddSeparator()
+        @see AddDropdownTool(), AddHybridTool(), AddSeparator(), InsertTool()
     */
     virtual wxRibbonToolBarToolBase* AddTool(
                 int tool_id,
@@ -143,6 +154,253 @@ public:
     */
     virtual wxRibbonToolBarToolBase* AddSeparator();
 
+    /**
+        Insert a tool to the tool bar (simple version) as the specified
+        position.
+
+        @since 2.9.4
+
+        @see InsertTool()
+     */
+    virtual wxRibbonToolBarToolBase* InsertTool(
+                size_t pos,
+                int tool_id,
+                const wxBitmap& bitmap,
+                const wxString& help_string,
+                wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL);
+
+
+    /**
+        Insert a dropdown tool to the tool bar (simple version) as the specified
+        position.
+
+        @since 2.9.4
+
+        @see AddDropdownTool(), InsertTool()
+     */
+    virtual wxRibbonToolBarToolBase* InsertDropdownTool(
+                size_t pos,
+                int tool_id,
+                const wxBitmap& bitmap,
+                const wxString& help_string = wxEmptyString);
+
+    /**
+        Insert a hybrid tool to the tool bar (simple version) as the specified
+        position.
+
+        @since 2.9.4
+
+        @see AddHybridTool(), InsertTool()
+     */
+    virtual wxRibbonToolBarToolBase* InsertHybridTool(
+                size_t pos,
+                int tool_id,
+                const wxBitmap& bitmap,
+                const wxString& help_string = wxEmptyString);
+
+    /**
+        Insert a toggle tool to the tool bar (simple version) as the specified
+        position.
+
+        @since 2.9.4
+
+       @see AddToggleTool(), InsertTool()
+     */
+    virtual wxRibbonToolBarToolBase* InsertToggleTool(
+                size_t pos,
+                int tool_id,
+                const wxBitmap& bitmap,
+                const wxString& help_string = wxEmptyString);
+
+    /**
+        Insert a tool to the tool bar at the specified position.
+
+        @param pos
+            Position of the new tool (number of tools and separators from the
+            beginning of the toolbar).
+        @param tool_id
+            ID of the new tool (used for event callbacks).
+        @param bitmap
+            Bitmap to use as the foreground for the new tool. Does not have
+            to be the same size as other tool bitmaps, but should be similar
+            as otherwise it will look visually odd.
+        @param bitmap_disabled
+            Bitmap to use when the tool is disabled. If left as wxNullBitmap,
+            then a bitmap will be automatically generated from @a bitmap.
+        @param help_string
+            The UI help string to associate with the new tool.
+        @param kind
+            The kind of tool to add.
+        @param client_data
+            Client data to associate with the new tool.
+
+        @return An opaque pointer which can be used only with other tool bar
+            methods.
+
+        @since 2.9.4
+
+        @see InsertDropdownTool(), InsertHybridTool(), InsertSeparator()
+    */
+    virtual wxRibbonToolBarToolBase* InsertTool(
+                size_t pos,
+                int tool_id,
+                const wxBitmap& bitmap,
+                const wxBitmap& bitmap_disabled = wxNullBitmap,
+                const wxString& help_string = wxEmptyString,
+                wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL,
+                wxObject* client_data = NULL);
+
+    /**
+        Insert a separator to the tool bar at the specified position.
+
+        @since 2.9.4
+
+        @see AddSeparator(), InsertTool()
+    */
+    virtual wxRibbonToolBarToolBase* InsertSeparator(size_t pos);
+
+    /**
+        Deletes all the tools in the toolbar.
+
+        @since 2.9.4
+    */
+    virtual void ClearTools();
+
+    /**
+        Removes the specified tool from the toolbar and deletes it.
+
+        @param tool_id
+            ID of the tool to delete.
+
+        @returns @true if the tool was deleted, @false otherwise.
+
+        @since 2.9.4
+
+        @see DeleteToolByPos()
+    */
+    virtual bool DeleteTool(int tool_id);
+
+    /**
+        This function behaves like DeleteTool() but it deletes the tool at the
+        specified position and not the one with the given id.
+        Useful to delete separators.
+
+        @since 2.9.4
+    */
+    virtual bool DeleteToolByPos(size_t pos);
+
+    /**
+        Returns a pointer to the tool opaque structure by @a id or @NULL if no
+        corresponding tool is found.
+
+        @since 2.9.4
+    */
+    virtual wxRibbonToolBarToolBase* FindById(int tool_id)const;
+
+    /**
+        Return the opaque pointer corresponding to the given tool.
+
+        @return an opaque pointer, NULL if is a separator or not found.
+
+        @since 2.9.4
+    */
+    wxRibbonToolBarToolBase* GetToolByPos(size_t pos)const
+
+    /**
+        Returns the number of tools in the toolbar.
+
+        @since 2.9.4
+    */
+    virtual size_t GetToolCount() const;
+
+    /**
+        Return the id assciated to the tool opaque structure.
+
+        The structure pointer must not be @NULL.
+
+        @since 2.9.4
+    */
+    virtual int GetToolId(const wxRibbonToolBarToolBase* tool)const;
+
+    /**
+        Get any client data associated with the tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @return Client data, or @NULL if there is none.
+
+        @since 2.9.4
+    */
+    virtual wxObject* GetToolClientData(int tool_id)const;
+
+    /**
+        Called to determine whether a tool is enabled (responds to user input).
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @return @true if the tool is enabled, @false otherwise.
+
+        @since 2.9.4
+
+        @see EnableTool()
+    */
+    virtual bool GetToolEnabled(int tool_id)const;
+
+    /**
+        Returns the help string for the given tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @since 2.9.4
+    */
+    virtual wxString GetToolHelpString(int tool_id)const;
+
+    /**
+        Return the kind of the given tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @since 2.9.4
+    */
+    virtual wxRibbonButtonKind GetToolKind(int tool_id)const;
+
+    /**
+        Returns the tool position in the toolbar, or @c wxNOT_FOUND if the tool
+        is not found.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @since 2.9.4
+    */
+    virtual int GetToolPos(int tool_id)const;
+
+    /**
+        Gets the on/off state of a toggle tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+
+        @return @true if the tool is toggled on, @false otherwise.
+
+        @see ToggleTool()
+
+        @since 2.9.4
+    */
+    virtual bool GetToolState(int tool_id)const;
+
+    /**
+        Calculate tool layouts and positions.
+
+        Must be called after tools are added to the tool bar, as otherwise
+        the newly added tools will not be displayed.
+    */
+    virtual bool Realize();
+
     /**
         Set the number of rows to distribute tool groups over.
         
@@ -157,4 +415,80 @@ public:
             The maximum number of rows to use (defaults to nMin).
     */
     virtual void SetRows(int nMin, int nMax = -1);
+
+    /**
+        Sets the client data associated with the tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+        @param clientData
+            The client data to use.
+
+        @since 2.9.4
+    */
+    virtual void SetToolClientData(int tool_id, wxObject* clientData);
+
+    /**
+        Sets the bitmap to be used by the tool with the given ID when the tool
+        is in a disabled state.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+        @param bitmap
+            Bitmap to use for disabled tools.
+
+        @since 2.9.4
+    */
+    virtual void SetToolDisabledBitmap(int tool_id, const wxBitmap &bitmap);
+
+    /**
+        Sets the help string shown in tooltip for the given tool.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+        @param helpString
+            A string for the help.
+
+        @see GetToolHelpString()
+
+        @since 2.9.4
+    */
+    virtual void SetToolHelpString(int tool_id, const wxString& helpString);
+
+    /**
+        Sets the bitmap to be used by the tool with the given ID.
+
+        @param tool_id
+            ID of the tool in question, as passed to AddTool().
+        @param bitmap
+            Bitmap to use for normals tools.
+
+        @since 2.9.4
+    */
+    virtual void SetToolNormalBitmap(int tool_id, const wxBitmap &bitmap);
+
+    /**
+        Enable or disable a single tool on the bar.
+
+        @param tool_id
+            ID of the tool to enable or disable.
+        @param enable
+            @true to enable the tool, @false to disable it.
+
+        @since 2.9.4
+    */
+    virtual void EnableTool(int tool_id, bool enable = true);
+
+    /**
+        Set a toggle tool to the checked or unchecked state.
+
+        @param tool_id
+            ID of the toggle tool to manipulate.
+        @param checked
+            @true to set the tool to the toggled/pressed/checked state,
+            @false to set it to the untoggled/unpressed/unchecked state.
+
+        @since 2.9.4
+    */
+    virtual void ToggleTool(int tool_id, bool checked);
 };