]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/framemanager.tex
Always draw the selection of selected items, not just when they have
[wxWidgets.git] / docs / latex / wx / framemanager.tex
index cc2385d487d102bb57d63be03a700d82ac301fae..34d552d77c35f99bd7da780eca73ef92f318a2a6 100644 (file)
@@ -101,18 +101,19 @@ enum wxFrameManagerDock
 \begin{verbatim}
 enum wxFrameManagerOption
 {
-    wxAUI_MGR_ALLOW_FLOATING        = 1 << 0,
-    wxAUI_MGR_ALLOW_ACTIVE_PANE     = 1 << 1,
-    wxAUI_MGR_TRANSPARENT_DRAG      = 1 << 2,
-    wxAUI_MGR_TRANSPARENT_HINT      = 1 << 3,
-    wxAUI_MGR_TRANSPARENT_HINT_FADE = 1 << 4,
-    wxAUI_MGR_DISABLE_VENETIAN_BLINDS = 1 << 5,
-    wxAUI_MGR_DISABLE_VENETIAN_BLINDS_FADE = 1 << 6,
+    wxAUI_MGR_ALLOW_FLOATING           = 1 << 0,
+    wxAUI_MGR_ALLOW_ACTIVE_PANE        = 1 << 1,
+    wxAUI_MGR_TRANSPARENT_DRAG         = 1 << 2,
+    wxAUI_MGR_TRANSPARENT_HINT         = 1 << 3,
+    wxAUI_MGR_VENETIAN_BLINDS_HINT     = 1 << 4,
+    wxAUI_MGR_RECTANGLE_HINT           = 1 << 5,
+    wxAUI_MGR_HINT_FADE                = 1 << 6,
+    wxAUI_MGR_NO_VENETIAN_BLINDS_FADE  = 1 << 7,
 
     wxAUI_MGR_DEFAULT = wxAUI_MGR_ALLOW_FLOATING |
                         wxAUI_MGR_TRANSPARENT_HINT |
-                        wxAUI_MGR_TRANSPARENT_HINT_FADE |
-                        wxAUI_MGR_DISABLE_VENETIAN_BLINDS_FADE
+                        wxAUI_MGR_HINT_FADE |
+                        wxAUI_MGR_NO_VENETIAN_BLINDS_FADE
 }
 \end{verbatim}
 
@@ -124,26 +125,24 @@ enum wxFrameManagerOption
 
 \func{}{wxFrameManager}{\param{wxWindow* }{managed\_wnd = NULL}, \param{unsigned int }{flags = wxAUI\_MGR\_DEFAULT}}
 
-Constructor. {\it frame} specifies the wxFrame which should be managed.
-{\it flags}  specifies options which allow the frame management behavior
+Constructor. \arg{frame} specifies the wxFrame which should be managed.
+\arg{flags}  specifies options which allow the frame management behavior
 to be modified.
 
 \membersection{wxFrameManager::\destruct{wxFrameManager}}\label{wxframemanagerdtor}
 
 \func{}{\destruct{wxFrameManager}}{\void}
 
-
 \membersection{wxFrameManager::AddPane}\label{wxframemanageraddpane}
 
 \func{bool}{AddPane}{\param{wxWindow* }{window}, \param{const wxPaneInfo\& }{pane\_info}}
 
+\func{bool}{AddPane}{\param{wxWindow* }{window}, \param{int }{direction = wxLEFT}, \param{const wxString\& }{caption = wxEmptyString}}
 
 \func{bool}{AddPane}{\param{wxWindow* }{window}, \param{const wxPaneInfo\& }{pane\_info}, \param{const wxPoint\& }{drop\_pos}}
 
 
-\func{bool}{AddPane}{\param{wxWindow* }{window}, \param{int }{direction = wxLEFT}, \param{const wxString\& }{caption = wxEmptyString}}
-
-Tells the frame manager to start managing a child window. 
+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.
 
 \membersection{wxFrameManager::DetachPane}\label{wxframemanagerdetachpane}
 
@@ -153,21 +152,6 @@ Tells the wxFrameManager to stop managing the pane specified by window.
 The window, if in a floated frame, is reparented to the frame managed
 by wxFrameManager.
 
-\membersection{wxFrameManager::DoDrop}\label{wxframemanagerdodrop}
-
-\func{bool}{DoDrop}{\param{wxDockInfoArray\& }{docks}, \param{wxPaneInfoArray\& }{panes}, \param{wxPaneInfo\& }{drop}, \param{const wxPoint\& }{pt}, \param{const wxPoint\& }{action\_offset = wxPoint(0,0)}}
-
-
-\membersection{wxFrameManager::DoFrameLayout}\label{wxframemanagerdoframelayout}
-
-\func{void}{DoFrameLayout}{\void}
-
-
-\membersection{wxFrameManager::DrawHintRect}\label{wxframemanagerdrawhintrect}
-
-\func{void}{DrawHintRect}{\param{wxWindow* }{pane\_window}, \param{const wxPoint\& }{pt}, \param{const wxPoint\& }{offset}}
-
-
 \membersection{wxFrameManager::GetAllPanes}\label{wxframemanagergetallpanes}
 
 \func{wxPaneInfoArray\&}{GetAllPanes}{\void}
@@ -180,11 +164,6 @@ Returns an array of all panes managed by the frame manager.
 
 Returns the current art provider being used.
 
-\membersection{wxFrameManager::GetDockPixelOffset}\label{wxframemanagergetdockpixeloffset}
-
-\func{int}{GetDockPixelOffset}{\param{wxPaneInfo\& }{test}}
-
-
 \membersection{wxFrameManager::GetFlags}\label{wxframemanagergetflags}
 
 \constfunc{unsigned int}{GetFlags}{\void}
@@ -201,7 +180,9 @@ Returns the frame currently being managed by wxFrameManager.
 
 \func{wxPaneInfo\&}{GetPane}{\param{wxWindow* }{window}}
 
-{\it GetPane]} is used to lookup a wxPaneInfo object
+\func{wxPaneInfo\&}{GetPane}{\param{const wxString\& }{name}}
+
+{\it GetPane} is used to lookup a wxPaneInfo object
 either by window pointer or by pane name, which acts as a unique id for
 a window pane. The returned wxPaneInfo object may then be modified to
 change a pane's look, state or position. After one or more
@@ -210,28 +191,11 @@ 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 wxPaneInfo's IsOk() method will return false.
 
-\func{wxPaneInfo\&}{GetPane}{\param{const wxString\& }{name}}
-
-
-\membersection{wxFrameManager::GetPanePart}\label{wxframemanagergetpanepart}
-
-\func{wxDockUIPart*}{GetPanePart}{\param{wxWindow* }{pane}}
-
-
-\membersection{wxFrameManager::GetPanePositionsAndSizes}\label{wxframemanagergetpanepositionsandsizes}
-
-\func{void}{GetPanePositionsAndSizes}{\param{wxDockInfo\& }{dock}, \param{wxArrayInt\& }{positions}, \param{wxArrayInt\& }{sizes}}
-
-
 \membersection{wxFrameManager::HideHint}\label{wxframemanagerhidehint}
 
 \func{void}{HideHint}{\void}
 
-
-\membersection{wxFrameManager::HitTest}\label{wxframemanagerhittest}
-
-\func{wxDockUIPart*}{HitTest}{\param{int }{x}, \param{int }{y}}
-
+HideHint() hides any docking hint that may be visible.
 
 \membersection{wxFrameManager::InsertPane}\label{wxframemanagerinsertpane}
 
@@ -240,31 +204,17 @@ returned wxPaneInfo's IsOk() method will return false.
 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. {\it InsertPane} will push all panes, rows, or docks aside and
-insert the window into the position specified by insert_location
-Because insert_location can specify either a pane, dock row, or dock
-layer, the insert_level parameter is used to disambiguate this. The
-parameter insert_level can take a value of wxAUI\_INSERT\_PANE, wxAUI\_INSERT\_ROW 
+insert the window into the position specified by \arg{insert\_location}
+Because \arg{insert\_location} can specify either a pane, dock row, or dock
+layer, the \arg{insert\_level} parameter is used to disambiguate this. The
+parameter \arg{insert\_level} can take a value of wxAUI\_INSERT\_PANE, wxAUI\_INSERT\_ROW 
 or wxAUI\_INSERT\_DOCK.
 
-\membersection{wxFrameManager::LayoutAddDock}\label{wxframemanagerlayoutadddock}
-
-\func{void}{LayoutAddDock}{\param{wxSizer* }{container}, \param{wxDockInfo\& }{dock}, \param{wxDockUIPartArray\& }{uiparts}, \param{bool }{spacer\_only}}
-
-
-\membersection{wxFrameManager::LayoutAddPane}\label{wxframemanagerlayoutaddpane}
-
-\func{void}{LayoutAddPane}{\param{wxSizer* }{container}, \param{wxDockInfo\& }{dock}, \param{wxPaneInfo\& }{pane}, \param{wxDockUIPartArray\& }{uiparts}, \param{bool }{spacer\_only}}
-
-
-\membersection{wxFrameManager::LayoutAll}\label{wxframemanagerlayoutall}
-
-\func{wxSizer*}{LayoutAll}{\param{wxPaneInfoArray\& }{panes}, \param{wxDockInfoArray\& }{docks}, \param{wxDockUIPartArray\& }{uiparts}, \param{bool }{spacer\_only = false}}
-
-
 \membersection{wxFrameManager::LoadPaneInfo}\label{wxframemanagerloadpaneinfo}
 
 \func{void}{LoadPaneInfo}{\param{wxString }{pane\_part}, \param{wxPaneInfo\& }{pane}}
 
+LoadPaneInfo() is similar to to LoadPerspective, with the exception that it only loads information about a single pane.  It is used in combination with SavePaneInfo().
 
 \membersection{wxFrameManager::LoadPerspective}\label{wxframemanagerloadperspective}
 
@@ -273,38 +223,17 @@ or wxAUI\_INSERT\_DOCK.
 Loads a saved perspective. If update is true, wxFrameManager::Update()
 is automatically invoked, thus realizing the saved perspective on screen.
 
-\membersection{wxFrameManager::LookupPane}\label{wxframemanagerlookuppane}
-
-\func{wxPaneInfo\&}{LookupPane}{\param{wxWindow* }{window}}
-
-
-\func{wxPaneInfo\&}{LookupPane}{\param{const wxString\& }{name}}
-
-
 \membersection{wxFrameManager::ProcessDockResult}\label{wxframemanagerprocessdockresult}
 
 \func{bool}{ProcessDockResult}{\param{wxPaneInfo\& }{target}, \param{const wxPaneInfo\& }{new\_pos}}
 
-
-\membersection{wxFrameManager::ProcessMgrEvent}\label{wxframemanagerprocessmgrevent}
-
-\func{void}{ProcessMgrEvent}{\param{wxFrameManagerEvent\& }{event}}
-
-
-\membersection{wxFrameManager::Render}\label{wxframemanagerrender}
-
-\func{void}{Render}{\param{wxDC* }{dc}}
-
-
-\membersection{wxFrameManager::Repaint}\label{wxframemanagerrepaint}
-
-\func{void}{Repaint}{\param{wxDC* }{dc = NULL}}
-
+ProcessDockResult() is a protected member of the wxAUI layout manager.  It can be overridden by derived classes to provide custom docking calculations.
 
 \membersection{wxFrameManager::SavePaneInfo}\label{wxframemanagersavepaneinfo}
 
 \func{wxString}{SavePaneInfo}{\param{wxPaneInfo\& }{pane}}
 
+SavePaneInfo() is similar to SavePerspective, with the exception that it only saves information about a single pane.  It is used in combination with LoadPaneInfo().
 
 \membersection{wxFrameManager::SavePerspective}\label{wxframemanagersaveperspective}
 
@@ -320,7 +249,7 @@ interface will return to the state it was when the perspective was saved.
 \func{void}{SetArtProvider}{\param{wxDockArt* }{art\_provider}}
 
 Instructs wxFrameManager to use art provider specified by parameter
-{\it art_provider} for all drawing calls. This allows plugable
+\arg{art\_provider} for all drawing calls. This allows plugable
 look-and-feel features. The previous art provider object, if any,
 will be deleted by wxFrameManager.
 
@@ -328,26 +257,26 @@ will be deleted by wxFrameManager.
 
 \func{void}{SetFlags}{\param{unsigned int }{flags}}
 
-This method is used to specify wxFrameManager's settings flags. {\it flags}
+This method is used to specify wxFrameManager's settings flags. \arg{flags}
 specifies options which allow the frame management behavior to be modified.
 
 \membersection{wxFrameManager::SetManagedWindow}\label{wxframemanagersetmanagedwindow}
 
 \func{void}{SetManagedWindow}{\param{wxWindow* }{managed\_wnd}}
 
-Called to specify the frame which is to be managed by wxFrameManager.
+Called to specify the frame or window which is to be managed by wxFrameManager.  Frame management is not restricted to just frames.  Child windows or custom controls are also allowed.
 
 \membersection{wxFrameManager::ShowHint}\label{wxframemanagershowhint}
 
 \func{void}{ShowHint}{\param{const wxRect\& }{rect}}
 
+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.
 
 \membersection{wxFrameManager::UnInit}\label{wxframemanageruninit}
 
 \func{void}{UnInit}{\void}
 
-Uninitializes the framework and should be called before a frame is
-destroyed. UnInit() is usually called in the managed wxFrame's destructor.
+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.
 
 \membersection{wxFrameManager::Update}\label{wxframemanagerupdate}
 
@@ -361,18 +290,3 @@ wxPaneInfo structures (retrieved with wxFrameManager::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.
 
-\membersection{wxFrameManager::UpdateButtonOnScreen}\label{wxframemanagerupdatebuttononscreen}
-
-\func{void}{UpdateButtonOnScreen}{\param{wxDockUIPart* }{button\_ui\_part}, \param{const wxMouseEvent\& }{event}}
-
-
-\membersection{wxFrameManager::wxDEPRECATED}\label{wxframemanagerwxdeprecated}
-
-\func{}{wxDEPRECATED}{\param{void }{SetFrame(wxFrame* frame)}}
-
-deprecated -- please use SetManagedWindow() and
-and GetManagedWindow() instead
-
-
-\func{}{wxDEPRECATED}{\param{wxFrame* GetFrame() }{const}}
-