| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        aui/aui.h
 
- // Purpose:     interface of wxAuiManager
 
- // Author:      wxWidgets team
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- /**
 
-     @todo wxAuiPaneInfo dock direction types used with wxAuiManager.
 
- */
 
- enum wxAuiManagerDock
 
- {
 
-     wxAUI_DOCK_NONE = 0,
 
-     wxAUI_DOCK_TOP = 1,
 
-     wxAUI_DOCK_RIGHT = 2,
 
-     wxAUI_DOCK_BOTTOM = 3,
 
-     wxAUI_DOCK_LEFT = 4,
 
-     wxAUI_DOCK_CENTER = 5,
 
-     wxAUI_DOCK_CENTRE = wxAUI_DOCK_CENTER
 
- };
 
- /**
 
-     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 |
 
-                         wxAUI_MGR_NO_VENETIAN_BLINDS_FADE
 
- };
 
- /**
 
-     @class wxAuiManager
 
-     wxAuiManager is the central class of the wxAUI class framework.
 
-     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 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
 
-     drawing is localized in one area, and may be customized depending on an
 
-     application's specific needs.
 
-     wxAuiManager works as follows: the programmer adds panes to the class,
 
-     or makes changes to existing pane properties (dock position, floating
 
-     state, show state, etc.). To apply these changes, wxAuiManager's
 
-     Update() function is called. This batch processing can be used to avoid
 
-     flicker, by modifying more than one pane at a time, and then "committing"
 
-     all of the changes at once by calling Update().
 
-     Panes can be added quite easily:
 
-     @code
 
-     wxTextCtrl* text1 = new wxTextCtrl(this, -1);
 
-     wxTextCtrl* text2 = new wxTextCtrl(this, -1);
 
-     m_mgr.AddPane(text1, wxLEFT, "Pane Caption");
 
-     m_mgr.AddPane(text2, wxBOTTOM, "Pane Caption");
 
-     m_mgr.Update();
 
-     @endcode
 
-     Later on, the positions can be modified easily. The following will float
 
-     an existing pane in a tool window:
 
-     @code
 
-     m_mgr.GetPane(text1).Float();
 
-     @endcode
 
-     @section auimanager_layers Layers, Rows and Directions, Positions
 
-     Inside wxAUI, the docking layout is figured out by checking several pane
 
-     parameters. Four of these are important for determining where a pane will
 
-     end up:
 
-     @li Direction: Each docked pane has a direction, Top, Bottom, Left, Right,
 
-         or Center. This is fairly self-explanatory. The pane will be placed in
 
-         the location specified by this variable.
 
-     @li Position: More than one pane can be placed inside of a dock. Imagine
 
-         two panes being docked on the left side of a window. One pane can be
 
-         placed over another. In proportionally managed docks, the pane
 
-         position indicates its sequential position, starting with zero. So, in
 
-         our scenario with two panes docked on the left side, the top pane in
 
-         the dock would have position 0, and the second one would occupy
 
-         position 1.
 
-     @li Row: A row can allow for two docks to be placed next to each other.
 
-         One of the most common places for this to happen is in the toolbar.
 
-         Multiple toolbar rows are allowed, the first row being row 0, and the
 
-         second row 1. Rows can also be used on vertically docked panes.
 
-     @li Layer: A layer is akin to an onion. Layer 0 is the very center of the
 
-         managed pane. Thus, if a pane is in layer 0, it will be closest to the
 
-         center window (also sometimes known as the "content window").
 
-         Increasing layers "swallow up" all layers of a lower value. This can
 
-         look very similar to multiple rows, but is different because all panes
 
-         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)}
 
-         Triggered when any button is pressed for any docked panes.
 
-     @event{EVT_AUI_PANE_CLOSE(func)}
 
-         Triggered when a docked or floating pane is closed.
 
-     @event{EVT_AUI_PANE_MAXIMIZE(func)}
 
-         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{aui}
 
-     @see @ref overview_aui, wxAuiNotebook, wxAuiDockArt, wxAuiPaneInfo
 
- */
 
- class wxAuiManager : public wxEvtHandler
 
- {
 
- public:
 
-     /**
 
-         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);
 
-     /**
 
-         Dtor.
 
-     */
 
-     virtual ~wxAuiManager();
 
-     //@{
 
-     /**
 
-         AddPane() tells the frame manager to start managing a child window.
 
-         There are several versions of this function. The first version allows
 
-         the full spectrum of pane parameter possibilities. The second version is
 
-         used for simpler user interfaces which do not require as much configuration.
 
-         The last version allows a drop position to be specified, which will determine
 
-         where the pane will be added.
 
-     */
 
-     bool AddPane(wxWindow* window, const wxAuiPaneInfo& pane_info);
 
-     bool AddPane(wxWindow* window, int direction = wxLEFT,
 
-                  const wxString& caption = wxEmptyString);
 
-     bool AddPane(wxWindow* window,
 
-                  const wxAuiPaneInfo& pane_info,
 
-                  const wxPoint& drop_pos);
 
-     //@}
 
-     /**
 
-         Tells the wxAuiManager to stop managing the pane specified by window.
 
-         The window, if in a floated frame, is reparented to the frame managed
 
-         by wxAuiManager.
 
-     */
 
-     bool DetachPane(wxWindow* window);
 
-     /**
 
-         Returns an array of all panes managed by the frame manager.
 
-     */
 
-     wxAuiPaneInfoArray& GetAllPanes();
 
-     /**
 
-         Returns the current art provider being used.
 
-         @see wxAuiDockArt.
 
-     */
 
-     wxAuiDockArt* GetArtProvider() const;
 
-     /**
 
-         Returns the current dock constraint values.
 
-         See SetDockSizeConstraint() for more information.
 
-     */
 
-     void GetDockSizeConstraint(double* widthpct, double* heightpct) const;
 
-     /**
 
-         Returns the current ::wxAuiManagerOption's flags.
 
-     */
 
-     unsigned int GetFlags() const;
 
-     /**
 
-         Returns the frame currently being managed by wxAuiManager.
 
-     */
 
-     wxWindow* GetManagedWindow() const;
 
-     /**
 
-         Calling this method will return the wxAuiManager for a given window.
 
-         The @a window parameter should specify any child window or sub-child
 
-         window of the frame or window managed by wxAuiManager.
 
-         The @a window parameter need not be managed by the manager itself, nor does it
 
-         even need to be a child or sub-child of a managed window. It must however
 
-         be inside the window hierarchy underneath the managed window.
 
-     */
 
-     static wxAuiManager* GetManager(wxWindow* window);
 
-     //@{
 
-     /**
 
-         GetPane() is used to lookup a wxAuiPaneInfo object either by window pointer
 
-         or by pane name, which acts as a unique id for a window pane.
 
-         The returned wxAuiPaneInfo object may then be modified to change a pane's
 
-         look, state or position. After one or more modifications to wxAuiPaneInfo,
 
-         wxAuiManager::Update() should be called to commit the changes to the user
 
-         interface. If the lookup failed (meaning the pane could not be found in the
 
-         manager), a call to the returned wxAuiPaneInfo's IsOk() method will return @false.
 
-     */
 
-     wxAuiPaneInfo& GetPane(wxWindow* window);
 
-     wxAuiPaneInfo& GetPane(const wxString& name);
 
-     //@}
 
-     /**
 
-         HideHint() hides any docking hint that may be visible.
 
-     */
 
-     virtual void HideHint();
 
-     /**
 
-         This method is used to insert either a previously unmanaged pane window
 
-         into the frame manager, or to insert a currently managed pane somewhere
 
-         else. InsertPane() will push all panes, rows, or docks aside and
 
-         insert the window into the position specified by @a insert_location.
 
-         Because @a insert_location can specify either a pane, dock row, or dock
 
-         layer, the @a insert_level parameter is used to disambiguate this.
 
-         The parameter @a insert_level can take a value of wxAUI_INSERT_PANE,
 
-         wxAUI_INSERT_ROW or wxAUI_INSERT_DOCK.
 
-     */
 
-     bool InsertPane(wxWindow* window,
 
-                     const wxAuiPaneInfo& insert_location,
 
-                     int insert_level = wxAUI_INSERT_PANE);
 
-     /**
 
-         LoadPaneInfo() is similar to LoadPerspective, with the exception that it
 
-         only loads information about a single pane.  It is used in combination with
 
-         SavePaneInfo().
 
-     */
 
-     void LoadPaneInfo(wxString pane_part, wxAuiPaneInfo& pane);
 
-     /**
 
-         Loads a saved perspective. If update is @true, wxAuiManager::Update()
 
-         is automatically invoked, thus realizing the saved perspective on screen.
 
-     */
 
-     bool LoadPerspective(const wxString& perspective,
 
-                          bool update = true);
 
-     /**
 
-         SavePaneInfo() is similar to SavePerspective, with the exception that it only
 
-         saves information about a single pane.  It is used in combination with
 
-         LoadPaneInfo().
 
-     */
 
-     wxString SavePaneInfo(wxAuiPaneInfo& pane);
 
-     /**
 
-         Saves the entire user interface layout into an encoded wxString, which
 
-         can then be stored by the application (probably using wxConfig).
 
-         When a perspective is restored using LoadPerspective(), the entire user
 
-         interface will return to the state it was when the perspective was saved.
 
-     */
 
-     wxString SavePerspective();
 
-     /**
 
-         Instructs wxAuiManager to use art provider specified by parameter
 
-         @a art_provider for all drawing calls.
 
-         This allows plugable look-and-feel features. The previous art provider object,
 
-         if any, will be deleted by wxAuiManager.
 
-         @see wxAuiDockArt.
 
-     */
 
-     void SetArtProvider(wxAuiDockArt* art_provider);
 
-     /**
 
-         When a user creates a new dock by dragging a window into a docked position,
 
-         often times the large size of the window will create a dock that is unwieldly
 
-         large. wxAuiManager by default limits the size of any new dock to 1/3 of the
 
-         window size.  For horizontal docks, this would be 1/3 of the window height.
 
-         For vertical docks, 1/3 of the width.
 
-         Calling this function will adjust this constraint value. The numbers must be
 
-         between 0.0 and 1.0.  For instance, calling SetDockSizeContraint with
 
-         0.5, 0.5 will cause new docks to be limited to half of the size of the
 
-         entire managed window.
 
-     */
 
-     void SetDockSizeConstraint(double widthpct, double heightpct);
 
-     /**
 
-         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);
 
-     /**
 
-         Called to specify the frame or window which is to be managed by wxAuiManager.
 
-         Frame management is not restricted to just frames.  Child windows or custom
 
-         controls are also allowed.
 
-     */
 
-     void SetManagedWindow(wxWindow* managed_wnd);
 
-     /**
 
-         This function is used by controls to explicitly show a hint window at the
 
-         specified rectangle. It is rarely called, and is mostly used by controls
 
-         implementing custom pane drag/drop behaviour.
 
-         The specified rectangle should be in screen coordinates.
 
-     */
 
-     virtual void ShowHint(const wxRect& rect);
 
-     /**
 
-         Uninitializes the framework and should be called before a managed frame or
 
-         window is destroyed. UnInit() is usually called in the managed wxFrame's
 
-         destructor.  It is necessary to call this function before the managed frame
 
-         or window is destroyed, otherwise the manager cannot remove its custom event
 
-         handlers from a window.
 
-     */
 
-     void UnInit();
 
-     /**
 
-         This method is called after any number of changes are
 
-         made to any of the managed panes. Update() must be invoked after
 
-         AddPane() or InsertPane() are called in order to "realize" or "commit"
 
-         the changes. In addition, any number of changes may be made to
 
-         wxAuiPaneInfo structures (retrieved with wxAuiManager::GetPane), but to
 
-         realize the changes, Update() must be called. This construction allows
 
-         pane flicker to be avoided by updating the whole layout at one time.
 
-     */
 
-     void Update();
 
- protected:
 
-     /**
 
-         ProcessDockResult() is a protected member of the wxAUI layout manager.
 
-         It can be overridden by derived classes to provide custom docking calculations.
 
-     */
 
-     virtual bool ProcessDockResult(wxAuiPaneInfo& target,
 
-                                    const wxAuiPaneInfo& new_pos);
 
- };
 
- /**
 
-     @class wxAuiPaneInfo
 
-     wxAuiPaneInfo is part of the wxAUI class framework.
 
-     See also @ref overview_aui.
 
-     wxAuiPaneInfo specifies all the parameters for a pane.
 
-     These parameters specify where the pane is on the screen, whether it is docked
 
-     or floating, or hidden.
 
-     In addition, these parameters specify the pane's docked position, floating
 
-     position, preferred size, minimum size, caption text among many other parameters.
 
-     @library{wxaui}
 
-     @category{aui}
 
-     @see wxAuiManager, wxAuiDockArt
 
- */
 
- class wxAuiPaneInfo
 
- {
 
- public:
 
-     wxAuiPaneInfo();
 
-     /**
 
-         Copy constructor.
 
-     */
 
-     wxAuiPaneInfo(const wxAuiPaneInfo& c);
 
-     //@{
 
-     /**
 
-         BestSize() sets the ideal size for the pane. The docking manager will attempt
 
-         to use this size as much as possible when docking or floating the pane.
 
-     */
 
-     wxAuiPaneInfo& BestSize(const wxSize& size);
 
-     wxAuiPaneInfo& BestSize(int x, int y);
 
-     //@}
 
-     /**
 
-         Bottom() sets the pane dock position to the bottom side of the frame. This is
 
-         the same thing as calling Direction(wxAUI_DOCK_BOTTOM).
 
-     */
 
-     wxAuiPaneInfo& Bottom();
 
-     /**
 
-         BottomDockable() indicates whether a pane can be docked at the bottom of the
 
-         frame.
 
-     */
 
-     wxAuiPaneInfo& BottomDockable(bool b = true);
 
-     /**
 
-         Caption() sets the caption of the pane.
 
-     */
 
-     wxAuiPaneInfo& Caption(const wxString& c);
 
-     /**
 
-         CaptionVisible indicates that a pane caption should be visible. If @false, no
 
-         pane caption is drawn.
 
-     */
 
-     wxAuiPaneInfo& CaptionVisible(bool visible = true);
 
-     //@{
 
-     /**
 
-         Center() sets the pane dock position to the left side of the frame.
 
-         The centre pane is the space in the middle after all border panes (left, top,
 
-         right, bottom) are subtracted from the layout.
 
-         This is the same thing as calling Direction(wxAUI_DOCK_CENTRE).
 
-     */
 
-     wxAuiPaneInfo& Centre();
 
-     wxAuiPaneInfo& Center();
 
-     //@}
 
-     //@{
 
-     /**
 
-         CentrePane() specifies that the pane should adopt the default center pane
 
-         settings. Centre panes usually do not have caption bars.
 
-         This function provides an easy way of preparing a pane to be displayed in
 
-         the center dock position.
 
-     */
 
-     wxAuiPaneInfo& CentrePane();
 
-     wxAuiPaneInfo& CenterPane();
 
-     //@}
 
-     /**
 
-         CloseButton() indicates that a close button should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& CloseButton(bool visible = true);
 
-     /**
 
-         DefaultPane() specifies that the pane should adopt the default pane settings.
 
-     */
 
-     wxAuiPaneInfo& DefaultPane();
 
-     /**
 
-         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.
 
-     */
 
-     wxAuiPaneInfo& DestroyOnClose(bool b = true);
 
-     /**
 
-         Direction() determines the direction of the docked pane. It is functionally the
 
-         same as calling Left(), Right(), Top() or Bottom(), except that docking direction
 
-         may be specified programmatically via the parameter.
 
-     */
 
-     wxAuiPaneInfo& Direction(int direction);
 
-     /**
 
-         Dock() indicates that a pane should be docked.  It is the opposite of Float().
 
-     */
 
-     wxAuiPaneInfo& Dock();
 
-     /**
 
-         DockFixed() causes the containing dock to have no resize sash.  This is useful
 
-         for creating panes that span the entire width or height of a dock, but should
 
-         not be resizable in the other direction.
 
-     */
 
-     wxAuiPaneInfo& DockFixed(bool b = true);
 
-     /**
 
-         Dockable() specifies whether a frame can be docked or not. It is the same as
 
-         specifying TopDockable(b).BottomDockable(b).LeftDockable(b).RightDockable(b).
 
-     */
 
-     wxAuiPaneInfo& Dockable(bool b = true);
 
-     /**
 
-         Fixed() forces a pane to be fixed size so that it cannot be resized. After
 
-         calling Fixed(), IsFixed() will return @true.
 
-     */
 
-     wxAuiPaneInfo& Fixed();
 
-     /**
 
-         Float() indicates that a pane should be floated.  It is the opposite of Dock().
 
-     */
 
-     wxAuiPaneInfo& Float();
 
-     /**
 
-         Floatable() sets whether the user will be able to undock a pane and turn it
 
-         into a floating window.
 
-     */
 
-     wxAuiPaneInfo& Floatable(bool b = true);
 
-     //@{
 
-     /**
 
-         FloatingPosition() sets the position of the floating pane.
 
-     */
 
-     wxAuiPaneInfo& FloatingPosition(const wxPoint& pos);
 
-     wxAuiPaneInfo& FloatingPosition(int x, int y);
 
-     //@}
 
-     //@{
 
-     /**
 
-         FloatingSize() sets the size of the floating pane.
 
-     */
 
-     wxAuiPaneInfo& FloatingSize(const wxSize& size);
 
-     wxAuiPaneInfo& FloatingSize(int x, int y);
 
-     //@}
 
-     /**
 
-         Gripper() indicates that a gripper should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& Gripper(bool visible = true);
 
-     /**
 
-         GripperTop() indicates that a gripper should be drawn at the top of the pane.
 
-     */
 
-     wxAuiPaneInfo& GripperTop(bool attop = true);
 
-     /**
 
-         HasBorder() returns @true if the pane displays a border.
 
-     */
 
-     bool HasBorder() const;
 
-     /**
 
-         HasCaption() returns @true if the pane displays a caption.
 
-     */
 
-     bool HasCaption() const;
 
-     /**
 
-         HasCloseButton() returns @true if the pane displays a button to close the pane.
 
-     */
 
-     bool HasCloseButton() const;
 
-     /**
 
-         HasFlag() returns @true if the property specified by flag is active for
 
-         the pane.
 
-     */
 
-     bool HasFlag(int flag) const;
 
-     /**
 
-         HasGripper() returns @true if the pane displays a gripper.
 
-     */
 
-     bool HasGripper() const;
 
-     /**
 
-         HasGripper() returns @true if the pane displays a gripper at the top.
 
-     */
 
-     bool HasGripperTop() const;
 
-     /**
 
-         HasMaximizeButton() returns @true if the pane displays a button to maximize the
 
-         pane.
 
-     */
 
-     bool HasMaximizeButton() const;
 
-     /**
 
-         HasMinimizeButton() returns @true if the pane displays a button to minimize the
 
-         pane.
 
-     */
 
-     bool HasMinimizeButton() const;
 
-     /**
 
-         HasPinButton() returns @true if the pane displays a button to float the pane.
 
-     */
 
-     bool HasPinButton() const;
 
-     /**
 
-         Hide() indicates that a pane should be hidden.
 
-     */
 
-     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;
 
-     /**
 
-         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;
 
-     /**
 
-         IsFixed() returns @true if the pane cannot be resized.
 
-     */
 
-     bool IsFixed() const;
 
-     /**
 
-         IsFloatable() returns @true if the pane can be undocked and displayed as a
 
-         floating window.
 
-     */
 
-     bool IsFloatable() const;
 
-     /**
 
-         IsFloating() returns @true if the pane is floating.
 
-     */
 
-     bool IsFloating() const;
 
-     /**
 
-         IsLeftDockable() returns @true if the pane can be docked on the left of the
 
-         managed frame.
 
-         @see IsDockable()
 
-     */
 
-     bool IsLeftDockable() const;
 
-     /**
 
-         IsMoveable() returns @true if the docked frame can be undocked or moved to
 
-         another dock position.
 
-     */
 
-     bool IsMovable() const;
 
-     /**
 
-         IsOk() returns @true if the wxAuiPaneInfo structure is valid. A pane structure
 
-         is valid if it has an associated window.
 
-     */
 
-     bool IsOk() const;
 
-     /**
 
-         IsResizable() returns @true if the pane can be resized.
 
-     */
 
-     bool IsResizable() const;
 
-     /**
 
-         IsRightDockable() returns @true if the pane can be docked on the right of the
 
-         managed frame.
 
-         @see IsDockable()
 
-     */
 
-     bool IsRightDockable() const;
 
-     /**
 
-         IsShown() returns @true if the pane is currently shown.
 
-     */
 
-     bool IsShown() const;
 
-     /**
 
-         IsToolbar() returns @true if the pane contains a toolbar.
 
-     */
 
-     bool IsToolbar() const;
 
-     /**
 
-         IsTopDockable() returns @true if the pane can be docked at the top of the
 
-         managed frame.
 
-         @see IsDockable()
 
-     */
 
-     bool IsTopDockable() const;
 
-     /**
 
-         Layer() determines the layer of the docked pane. The dock layer is similar to
 
-         an onion, the inner-most layer being layer 0. Each shell moving in the outward
 
-         direction has a higher layer number. This allows for more complex docking layout
 
-         formation.
 
-     */
 
-     wxAuiPaneInfo& Layer(int layer);
 
-     /**
 
-         Left() sets the pane dock position to the left side of the frame. This is the
 
-         same thing as calling Direction(wxAUI_DOCK_LEFT).
 
-     */
 
-     wxAuiPaneInfo& Left();
 
-     /**
 
-         LeftDockable() indicates whether a pane can be docked on the left of the frame.
 
-     */
 
-     wxAuiPaneInfo& LeftDockable(bool b = true);
 
-     //@{
 
-     /**
 
-         MaxSize() sets the maximum size of the pane.
 
-     */
 
-     wxAuiPaneInfo& MaxSize(const wxSize& size);
 
-     wxAuiPaneInfo& MaxSize(int x, int y);
 
-     //@}
 
-     /**
 
-         MaximizeButton() indicates that a maximize button should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& MaximizeButton(bool visible = true);
 
-     //@{
 
-     /**
 
-         MinSize() sets the minimum size of the pane. Please note that this is only
 
-         partially supported as of this writing.
 
-     */
 
-     wxAuiPaneInfo& MinSize(const wxSize& size);
 
-     wxAuiPaneInfo& MinSize(int x, int y);
 
-     //@}
 
-     /**
 
-         MinimizeButton() indicates that a minimize button should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& MinimizeButton(bool visible = true);
 
-     /**
 
-         Movable indicates whether a frame can be moved.
 
-     */
 
-     wxAuiPaneInfo& Movable(bool b = true);
 
-     /**
 
-         Name() sets the name of the pane so it can be referenced in lookup functions.
 
-         If a name is not specified by the user, a random name is assigned to the pane
 
-         when it is added to the manager.
 
-     */
 
-     wxAuiPaneInfo& Name(const wxString& n);
 
-     /**
 
-         PaneBorder indicates that a border should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& PaneBorder(bool visible = true);
 
-     /**
 
-         PinButton() indicates that a pin button should be drawn for the pane.
 
-     */
 
-     wxAuiPaneInfo& PinButton(bool visible = true);
 
-     /**
 
-         Position() determines the position of the docked pane.
 
-     */
 
-     wxAuiPaneInfo& Position(int pos);
 
-     /**
 
-         Resizable() allows a pane to be resized if the parameter is @true, and forces it
 
-         to be a fixed size if the parameter is @false. This is simply an antonym for Fixed().
 
-     */
 
-     wxAuiPaneInfo& Resizable(bool resizable = true);
 
-     /**
 
-         Right() sets the pane dock position to the right side of the frame.
 
-     */
 
-     wxAuiPaneInfo& Right();
 
-     /**
 
-         RightDockable() indicates whether a pane can be docked on the right of the
 
-         frame.
 
-     */
 
-     wxAuiPaneInfo& RightDockable(bool b = true);
 
-     /**
 
-         Row() determines the row of the docked pane.
 
-     */
 
-     wxAuiPaneInfo& Row(int row);
 
-     /**
 
-         Write the safe parts of a newly loaded PaneInfo structure "source" into "this"
 
-         used on loading perspectives etc.
 
-     */
 
-     void SafeSet(wxAuiPaneInfo source);
 
-     /**
 
-         SetFlag() turns the property given by flag on or off with the option_state
 
-         parameter.
 
-     */
 
-     wxAuiPaneInfo& SetFlag(int flag, bool option_state);
 
-     /**
 
-         Show() indicates that a pane should be shown.
 
-     */
 
-     wxAuiPaneInfo& Show(bool show = true);
 
-     /**
 
-         ToolbarPane() specifies that the pane should adopt the default toolbar pane
 
-         settings.
 
-     */
 
-     wxAuiPaneInfo& ToolbarPane();
 
-     /**
 
-         Top() sets the pane dock position to the top of the frame.
 
-     */
 
-     wxAuiPaneInfo& Top();
 
-     /**
 
-         TopDockable() indicates whether a pane can be docked at the top of the frame.
 
-     */
 
-     wxAuiPaneInfo& TopDockable(bool b = true);
 
-     /**
 
-         Window() assigns the window pointer that the wxAuiPaneInfo should use.
 
-         This normally does not need to be specified, as the window pointer is
 
-         automatically assigned to the wxAuiPaneInfo structure as soon as it is added
 
-         to the manager.
 
-     */
 
-     wxAuiPaneInfo& Window(wxWindow* w);
 
-     /**
 
-         Makes a copy of the wxAuiPaneInfo object.
 
-     */
 
-     wxAuiPaneInfo& operator=(const wxAuiPaneInfo& c);
 
- };
 
- /**
 
-     @class wxAuiManagerEvent
 
-     Event used to indicate various actions taken with wxAuiManager.
 
-     See wxAuiManager for available event types.
 
-     @beginEventTable{wxAuiManagerEvent}
 
-     @event{EVT_AUI_PANE_BUTTON(func)}
 
-         Triggered when any button is pressed for any docked panes.
 
-     @event{EVT_AUI_PANE_CLOSE(func)}
 
-         Triggered when a docked or floating pane is closed.
 
-     @event{EVT_AUI_PANE_MAXIMIZE(func)}
 
-         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}
 
-     @see wxAuiManager, wxAuiPaneInfo
 
- */
 
- class wxAuiManagerEvent : public wxEvent
 
- {
 
- public:
 
-     /**
 
-         Constructor.
 
-     */
 
-     wxAuiManagerEvent(wxEventType type = wxEVT_NULL);
 
-     /**
 
-         @return @true if this event can be vetoed.
 
-         @see Veto()
 
-     */
 
-     bool CanVeto();
 
-     /**
 
-         @return The ID of the button that was clicked.
 
-     */
 
-     int GetButton();
 
-     /**
 
-         @todo What is this?
 
-     */
 
-     wxDC* GetDC();
 
-     /**
 
-         @return @true if this event was vetoed.
 
-         @see Veto()
 
-     */
 
-     bool GetVeto();
 
-     /**
 
-         @return The wxAuiManager this event is associated with.
 
-     */
 
-     wxAuiManager* GetManager();
 
-     /**
 
-         @return The pane this event is associated with.
 
-     */
 
-     wxAuiPaneInfo* GetPane();
 
-     /**
 
-         Sets the ID of the button clicked that triggered this event.
 
-     */
 
-     void SetButton(int button);
 
-     /**
 
-         Sets whether or not this event can be vetoed.
 
-     */
 
-     void SetCanVeto(bool can_veto);
 
-     /**
 
-         @todo What is this?
 
-     */
 
-     void SetDC(wxDC* pdc);
 
-     /**
 
-         Sets the wxAuiManager this event is associated with.
 
-     */
 
-     void SetManager(wxAuiManager* manager);
 
-     /**
 
-         Sets the pane this event is associated with.
 
-     */
 
-     void SetPane(wxAuiPaneInfo* pane);
 
-     /**
 
-         Cancels the action indicated by this event if CanVeto() is @true.
 
-     */
 
-     void Veto(bool veto = true);
 
- };
 
 
  |