]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/aui/framemanager.h
Added wxRIBBON_PANEL_FLEXIBLE flag to allow toolbars to wrap, taking up the optimum...
[wxWidgets.git] / interface / wx / aui / framemanager.h
index f77a34f71cdc9e897d282d2a322f64837ff22d20..6b36b17878a21e11d7313e7d0cbc2b549a13f597 100644 (file)
@@ -23,20 +23,31 @@ enum wxAuiManagerDock
 
 
 /**
-    @todo wxAuiManager behavior style flags.
+    wxAuiManager behaviour and visual effects style flags.
 */
 enum wxAuiManagerOption
 {
+    /// Allow a pane to be undocked to take the form of a wxMiniFrame.
     wxAUI_MGR_ALLOW_FLOATING           = 1 << 0,
+    /// Change the color of the title bar of the pane when it is activated.
     wxAUI_MGR_ALLOW_ACTIVE_PANE        = 1 << 1,
+    /// Make the pane transparent during its movement.
     wxAUI_MGR_TRANSPARENT_DRAG         = 1 << 2,
+    /// The possible location for docking is indicated by a translucent area.
     wxAUI_MGR_TRANSPARENT_HINT         = 1 << 3,
+    /// The possible location for docking is indicated by a gradually appearing
+    /// partially transparent area.
     wxAUI_MGR_VENETIAN_BLINDS_HINT     = 1 << 4,
+    /// The possible location for docking is indicated by a rectangular outline.
     wxAUI_MGR_RECTANGLE_HINT           = 1 << 5,
+    /// The translucent area where the pane could be docked appears gradually.
     wxAUI_MGR_HINT_FADE                = 1 << 6,
+    /// Used in complement of wxAUI_MGR_VENETIAN_BLINDS_HINT to show the hint immediately.
     wxAUI_MGR_NO_VENETIAN_BLINDS_FADE  = 1 << 7,
+    /// When a docked pane is resized, its content is refreshed in live (instead of moving
+    /// the border alone and refreshing the content at the end).
     wxAUI_MGR_LIVE_RESIZE              = 1 << 8,
-
+    /// Default behavior.
     wxAUI_MGR_DEFAULT = wxAUI_MGR_ALLOW_FLOATING |
                         wxAUI_MGR_TRANSPARENT_HINT |
                         wxAUI_MGR_HINT_FADE |
@@ -50,7 +61,7 @@ enum wxAuiManagerOption
 
     wxAuiManager manages the panes associated with it for a particular wxFrame,
     using a pane's wxAuiPaneInfo information to determine each pane's docking
-    and floating behavior.
+    and floating behaviour.
 
     wxAuiManager uses wxWidgets' sizer mechanism to plan the layout of each
     frame. It uses a replaceable dock art class to do all drawing, so all
@@ -110,6 +121,33 @@ enum wxAuiManagerOption
         in a lower level yield to panes in higher levels. The best way to
         understand layers is by running the wxAUI sample.
 
+    @beginStyleTable
+    @style{wxAUI_MGR_ALLOW_FLOATING}
+           Allow a pane to be undocked to take the form of a wxMiniFrame.
+    @style{wxAUI_MGR_ALLOW_ACTIVE_PANE}
+           Change the color of the title bar of the pane when it is activated.
+    @style{wxAUI_MGR_TRANSPARENT_DRAG}
+           Make the pane transparent during its movement.
+    @style{wxAUI_MGR_TRANSPARENT_HINT}
+           The possible location for docking is indicated by a translucent area.
+    @style{wxAUI_MGR_VENETIAN_BLINDS_HINT}
+           The possible location for docking is indicated by gradually
+           appearing partially transparent hint.
+    @style{wxAUI_MGR_RECTANGLE_HINT}
+           The possible location for docking is indicated by a rectangular
+           outline.
+    @style{wxAUI_MGR_HINT_FADE}
+           The translucent area where the pane could be docked appears gradually.
+    @style{wxAUI_MGR_NO_VENETIAN_BLINDS_FADE}
+           Used in complement of wxAUI_MGR_VENETIAN_BLINDS_HINT to show the
+           docking hint immediately.
+    @style{wxAUI_MGR_LIVE_RESIZE}
+           When a docked pane is resized, its content is refreshed in live (instead of moving
+           the border alone and refreshing the content at the end).
+    @style{wxAUI_MGR_DEFAULT}
+           Default behavior, combines: wxAUI_MGR_ALLOW_FLOATING | wxAUI_MGR_TRANSPARENT_HINT |
+           wxAUI_MGR_HINT_FADE | wxAUI_MGR_NO_VENETIAN_BLINDS_FADE.
+    @endStyleTable
 
     @beginEventEmissionTable{wxAuiManagerEvent}
     @event{EVT_AUI_PANE_BUTTON(func)}
@@ -120,6 +158,9 @@ enum wxAuiManagerOption
         Triggered when a pane is maximized.
     @event{EVT_AUI_PANE_RESTORE(func)}
         Triggered when a pane is restored.
+    @event{EVT_AUI_PANE_ACTIVATED(func)}
+        Triggered when a pane is made 'active'. This event is new since
+        wxWidgets 2.9.4.
     @event{EVT_AUI_RENDER(func)}
         This event can be caught to override the default renderer in order to
         custom draw your wxAuiManager window (not recommended).
@@ -134,9 +175,13 @@ class wxAuiManager : public wxEvtHandler
 {
 public:
     /**
-        Constructor. @a managed_wnd specifies the wxFrame which should be managed.
-        @a flags  specifies options which allow the frame management behavior
-        to be modified.
+        Constructor.
+
+        @param managed_wnd
+            Specifies the wxFrame which should be managed.
+        @param flags
+            Specifies the frame management behaviour and visual effects
+            with the ::wxAuiManagerOption's style flags.
     */
     wxAuiManager(wxWindow* managed_wnd = NULL,
                  unsigned int flags = wxAUI_MGR_DEFAULT);
@@ -188,7 +233,7 @@ public:
     void GetDockSizeConstraint(double* widthpct, double* heightpct) const;
 
     /**
-        Returns the current manager's flags.
+        Returns the current ::wxAuiManagerOption's flags.
     */
     unsigned int GetFlags() const;
 
@@ -244,7 +289,7 @@ public:
                     int insert_level = wxAUI_INSERT_PANE);
 
     /**
-        LoadPaneInfo() is similar to to LoadPerspective, with the exception that it
+        LoadPaneInfo() is similar to LoadPerspective, with the exception that it
         only loads information about a single pane.  It is used in combination with
         SavePaneInfo().
     */
@@ -298,8 +343,8 @@ public:
     void SetDockSizeConstraint(double widthpct, double heightpct);
 
     /**
-        This method is used to specify wxAuiManager's settings flags. @a flags
-        specifies options which allow the frame management behavior to be modified.
+        This method is used to specify ::wxAuiManagerOption's flags. @a flags
+        specifies options which allow the frame management behaviour to be modified.
     */
     void SetFlags(unsigned int flags);
 
@@ -442,7 +487,7 @@ public:
     wxAuiPaneInfo& DefaultPane();
 
     /**
-        DestroyOnClose() indicates whether a pane should be detroyed when it is closed.
+        DestroyOnClose() indicates whether a pane should be destroyed when it is closed.
         Normally a pane is simply hidden when the close button is clicked.
         Setting DestroyOnClose to @true will cause the window to be destroyed when
         the user clicks the pane's close button.
@@ -570,14 +615,36 @@ public:
     */
     wxAuiPaneInfo& Hide();
 
+    /**
+        Icon() sets the icon of the pane.
+
+        Notice that the height of the icon should be smaller than the value
+        returned by wxAuiDockArt::GetMetric(wxAUI_DOCKART_CAPTION_SIZE) to
+        ensure that it appears correctly.
+
+        @since 2.9.2
+    */
+    wxAuiPaneInfo& Icon(const wxBitmap& b);
+
     /**
         IsBottomDockable() returns @true if the pane can be docked at the bottom of the
         managed frame.
+
+        @see IsDockable()
     */
     bool IsBottomDockable() const;
 
     /**
-        IsDocked() returns @true if the pane is docked.
+        Returns @true if the pane can be docked at any side.
+
+        @see IsTopDockable(), IsBottomDockable(), IsLeftDockable(), IsRightDockable()
+
+        @since 2.9.2
+    */
+    bool IsDockable() const;
+
+    /**
+        IsDocked() returns @true if the pane is currently docked.
     */
     bool IsDocked() const;
 
@@ -600,6 +667,8 @@ public:
     /**
         IsLeftDockable() returns @true if the pane can be docked on the left of the
         managed frame.
+
+        @see IsDockable()
     */
     bool IsLeftDockable() const;
 
@@ -623,6 +692,8 @@ public:
     /**
         IsRightDockable() returns @true if the pane can be docked on the right of the
         managed frame.
+
+        @see IsDockable()
     */
     bool IsRightDockable() const;
 
@@ -639,6 +710,8 @@ public:
     /**
         IsTopDockable() returns @true if the pane can be docked at the top of the
         managed frame.
+
+        @see IsDockable()
     */
     bool IsTopDockable() const;
 
@@ -802,11 +875,14 @@ public:
         Triggered when a pane is maximized.
     @event{EVT_AUI_PANE_RESTORE(func)}
         Triggered when a pane is restored.
+    @event{EVT_AUI_PANE_ACTIVATED(func)}
+        Triggered when a pane is made 'active'. This event is new since
+        wxWidgets 2.9.4.
     @event{EVT_AUI_RENDER(func)}
         This event can be caught to override the default renderer in order to
         custom draw your wxAuiManager window (not recommended).
     @endEventTable
-    
+
     @library{wxaui}
     @category{events,aui}