1 /////////////////////////////////////////////////////////////////////////////
2 // Name: _aui_docstrings.i
3 // Purpose: Docstrings for the wxAUI classes. These are in a separate
4 // file because we have SWIG scan the .h files directly.
8 // Created: 7-July-2006
10 // Copyright: (c) 2006 by Total Control Software
11 // Licence: wxWindows license
12 /////////////////////////////////////////////////////////////////////////////
15 DocStr(wxFrameManager,
16 "FrameManager manages the panes associated with it for a particular
17 `wx.Frame`, using a pane's `PaneInfo` information to determine each
18 pane's docking and floating behavior. FrameManager uses wxWidgets'
19 sizer mechanism to plan the layout of each frame. It uses a
20 replaceable `DockArt` class to do all drawing, so all drawing is
21 localized in one area, and may be customized depending on an
22 application's specific needs.
26 FrameManager works as follows: The programmer adds panes to the
27 class, or makes changes to existing pane properties (dock position,
28 floating state, show state, etc.). To apply these changes,
29 FrameManager's `Update` function is called. This batch processing
30 can be used to avoid flicker, by modifying more than one pane at a
31 time, and then \"committing\" all of the changes at once by calling
34 Panes can be added quite easily::
36 text1 = wx.TextCtrl(self, -1)
37 text2 = wx.TextCtrl(self, -1)
38 self._mgr.AddPane(text1, wx.LEFT, \"Pane Caption\")
39 self._mgr.AddPane(text2, wx.BOTTOM, \"Pane Caption\")
43 Later on, the positions can be modified easily. The following will
44 float an existing pane in a tool window::
46 self._mgr.GetPane(text1).Float();
49 **Layers, Rows and Directions, Positions**
51 Inside wx.aui the docking layout is figured out by checking several
52 pane parameters. Four of these are important for determining where a
55 * **Direction**: Each docked pane has a direction, Top, Bottom,
56 Left, Right, or Center. This is fairly self-explanatory. The
57 pane will be placed in the location specified by this variable.
59 * **Position**: More than one pane can be placed inside of a
60 \"dock.\" Imagine two panes being docked on the left side of a
61 window. One pane can be placed over another. In proportionally
62 managed docks, the pane position indicates it's sequential
63 position, starting with zero. So, in our scenario with two panes
64 docked on the left side, the top pane in the dock would have
65 position 0, and the second one would occupy position 1.
67 * **Row**: A row can allow for two docks to be placed next to each
68 other. One of the most common places for this to happen is in
69 the toolbar. Multiple toolbar rows are allowed, the first row
70 being in row 0, and the second in row 1. Rows can also be used
71 on vertically docked panes.
73 * **Layer**: A layer is akin to an onion. Layer 0 is the very
74 center of the managed pane. Thus, if a pane is in layer 0, it
75 will be closest to the center window (also sometimes known as
76 the \"content window\"). Increasing layers \"swallow up\" all
77 layers of a lower value. This can look very similar to multiple
78 rows, but is different because all panes in a lower level yield
79 to panes in higher levels. The best way to understand layers is
80 by running the AUI sample in the wxPython demo.
83 DocStr(wxFrameManager::wxFrameManager,
86 :param frame: Specifies the `wx.Frame` which should be managed.
87 If not set in the call to this constructor then `SetFrame`
90 :param flags: Specifies options which allow the frame management
91 behavior to be modified.
96 ============================== =================================
97 AUI_MGR_ALLOW_FLOATING Panes can be undocked and floated
98 AUI_MGR_ALLOW_ACTIVE_PANE The last pane clicked on will be
99 considered the active pane and will
101 AUI_MGR_TRANSPARENT_DRAG If the platform supports it the panes
102 will be partially transparent while
104 AUI_MGR_TRANSPARENT_HINT If the platform supports it the
105 hint used to show where the pane can
106 be docked will be partially transparent.
107 AUI_MGR_TRANSPARENT_HINT_FADE Should the transparent hint be faded
109 AUI_MGR_DEFAULT The default flags.
110 ============================== =================================
113 DocStr(wxFrameManager::UnInit,
114 "UnInit uninitializes the framework and should be called before a
115 managed frame is destroyed. UnInit is usually called in the managed
116 wx.Frame's destructor.
119 DocStr(wxFrameManager::SetFlags,
120 "SetFlags is used to specify the FrameManager's behavioral
121 settings. The flags parameter is described in the docs for `__init__`
124 DocStr(wxFrameManager::GetFlags,
125 "GetFlags returns the current FrameManager's flags.
128 DocStr(wxFrameManager::SetFrame,
129 "SetFrame is called to specify the frame which is to be managed by the
130 FrameManager. It only needs to be called if the Frame was not given
131 to the manager in the constructor.
134 DocStr(wxFrameManager::GetFrame,
135 "GetFrame returns the frame currently being managed by the
139 DocStr(wxFrameManager::SetArtProvider,
140 "SetArtProvider instructs FrameManager to use the art provider
141 specified for all drawing calls. This allows plugable look-and-feel
142 features. The previous art provider object, if any, will be destroyed
145 :note: If you wish to use a custom `DockArt` class to override drawing
146 or metrics then you shoudl derive your class from the `PyDockArt`
147 class, which has been instrumented for reflecting virtual calls to
151 DocStr(wxFrameManager::GetArtProvider,
152 "GetArtProvider returns the current art provider being used.
156 DocAStr(wxFrameManager::GetAllPanes,
157 "GetAllPanes(self) -> list",
158 "GetAllPanes returns a list of `PaneInfo` objects for all panes managed
159 by the frame manager.
163 DocStr(wxFrameManager::InsertPane,
164 "InsertPane is used to insert either a previously unmanaged pane window
165 into the frame manager, or to insert a currently managed pane
166 somewhere else. InsertPane will push all panes, rows, or docks aside
167 and insert the window into the position specified by
168 ``insert_location``. Because ``insert_location`` can specify either a pane,
169 dock row, or dock layer, the ``insert_level`` parameter is used to
170 disambiguate this. The parameter ``insert_level`` can take a value of
171 ``AUI_INSERT_PANE``, ``AUI_INSERT_ROW`` or ``AUI_INSERT_DOCK``.
174 DocStr(wxFrameManager::DetachPane,
175 "DetachPane tells the FrameManager to stop managing the pane specified
176 by window. The window, if in a floated frame, is reparented to the
177 frame managed by FrameManager.
180 DocStr(wxFrameManager::SavePerspective,
181 "SavePerspective saves the entire user interface layout into an encoded
182 string, which can then be stored someplace by the application. When a
183 perspective is restored using `LoadPerspective`, the entire user
184 interface will return to the state it was when the perspective was
188 DocStr(wxFrameManager::LoadPerspective,
189 "LoadPerspective loads a saved perspective. If ``update`` is ``True``,
190 `Update` is automatically invoked, thus realizing the saved
191 perspective on screen.
194 DocStr(wxFrameManager::Update,
195 "Update shoudl be called called after any number of changes are made to
196 any of the managed panes. Update must be invoked after `AddPane` or
197 `InsertPane` are called in order to \"realize\" or \"commit\" the
198 changes. In addition, any number of changes may be made to `PaneInfo`
199 structures (retrieved with `GetPane` or `GetAllPanes`), but to realize
200 the changes, Update must be called. This construction allows pane
201 flicker to be avoided by updating the whole layout at one time.
205 //----------------------------------------------------------------------
208 "PaneInfo specifies all the parameters for a pane for the
209 `FrameManager`. These parameters specify where the pane is on the
210 screen, whether it is docked or floating, or hidden. In addition,
211 these parameters specify the pane's docked position, floating
212 position, preferred size, minimum size, caption text among many other
216 DocStr(wxPaneInfo::IsOk,
217 "IsOk returns ``True`` if the PaneInfo structure is valid.
220 DocStr(wxPaneInfo::IsFixed,
221 "IsFixed returns ``True`` if the pane cannot be resized.
224 DocStr(wxPaneInfo::IsResizable,
225 "IsResizeable returns ``True`` if the pane can be resized.
228 DocStr(wxPaneInfo::IsShown,
229 "IsShown returns ``True`` if the pane should be drawn on the screen.
232 DocStr(wxPaneInfo::IsFloating,
233 "IsFloating returns ``True`` if the pane is floating.
236 DocStr(wxPaneInfo::IsDocked,
237 "IsDocked returns ``True`` if the pane is docked.
240 DocStr(wxPaneInfo::IsToolbar,
241 "IsToolbar returns ``True`` if the pane contains a toolbar.
244 DocStr(wxPaneInfo::IsTopDockable,
245 "IsTopDockable returns ``True`` if the pane can be docked at the top of
249 DocStr(wxPaneInfo::IsBottomDockable,
250 "IsBottomDockable returns ``True`` if the pane can be docked at the
251 bottom of the managed frame.
254 DocStr(wxPaneInfo::IsLeftDockable,
255 "IsLeftDockable returns ``True`` if the pane can be docked on the left
256 of the managed frame.
259 DocStr(wxPaneInfo::IsRightDockable,
260 "IsRightDockable returns ``True`` if the pane can be docked on the
261 right of the managed frame.
264 DocStr(wxPaneInfo::IsFloatable,
265 "IsFloatable returns ``True`` if the pane can be undocked and displayed
266 as a floating window.
269 DocStr(wxPaneInfo::IsMovable,
270 "IsMoveable returns ``True`` if the docked frame can be undocked or moved
271 to another dock position.
274 DocStr(wxPaneInfo::HasCaption,
275 "HasCaption returns ``True`` if the pane displays a caption.
278 DocStr(wxPaneInfo::HasGripper,
279 "HasGripper returns ``True`` if the pane displays a gripper.
282 DocStr(wxPaneInfo::HasBorder,
283 "HasBorder returns ``True`` if the pane displays a border.
286 DocStr(wxPaneInfo::HasCloseButton,
287 "HasCloseButton returns ``True`` if the pane displays a button to close
291 DocStr(wxPaneInfo::HasMaximizeButton,
292 "HasMaximizeButton returns ``True`` if the pane displays a button to
296 DocStr(wxPaneInfo::HasMinimizeButton,
297 "HasMinimizeButton returns ``True`` if the pane displays a button to
301 DocStr(wxPaneInfo::HasPinButton,
302 "HasPinButton returns ``True`` if the pane displays a button to float
306 DocStr(wxPaneInfo::Name,
307 "Name sets the name of the pane so it can be referenced in lookup
311 DocStr(wxPaneInfo::Caption,
312 "Caption sets the caption of the pane.
315 DocStr(wxPaneInfo::Left,
316 "Left sets the pane dock position to the left side of the frame.
319 DocStr(wxPaneInfo::Right,
320 "Right sets the pane dock position to the right side of the frame.
323 DocStr(wxPaneInfo::Top,
324 "Top sets the pane dock position to the top of the frame.
327 DocStr(wxPaneInfo::Bottom,
328 "Bottom sets the pane dock position to the bottom of the frame.
331 DocStr(wxPaneInfo::Centre,
332 "Centre sets the pane to the center position of the frame.
335 DocStr(wxPaneInfo::Center,
336 "Center sets the pane to the center position of the frame.
339 DocStr(wxPaneInfo::Direction,
340 "Direction determines the direction of the docked pane.
343 DocStr(wxPaneInfo::Layer,
344 "Layer determines the layer of the docked pane.
347 DocStr(wxPaneInfo::Row,
348 "Row determines the row of the docked pane.
351 DocStr(wxPaneInfo::Position,
352 "Position determines the position of the docked pane.
357 DocStr(wxPaneInfo::MaxSize,
358 "MaxSize sets the maximum size of the pane.
361 DocStr(wxPaneInfo::BestSize,
362 "BestSize sets the ideal size for the pane.
365 DocStr(wxPaneInfo::MinSize,
366 "MinSize sets the minimum size of the pane.
369 DocStr(wxPaneInfo::FloatingPosition,
370 "FloatingPosition sets the position of the floating pane.
373 DocStr(wxPaneInfo::FloatingSize,
374 "FloatingSize sets the size of the floating pane.
379 DocStr(wxPaneInfo::Fixed,
380 "Fixed forces a pane to be fixed size so that it cannot be resized.
383 DocStr(wxPaneInfo::Resizable,
384 "Resized allows a pane to be resized if resizable is true, and forces
385 it to be a fixed size if resizeable is false.
388 DocStr(wxPaneInfo::Dock,
389 "Dock indicates that a pane should be docked.
392 DocStr(wxPaneInfo::Float,
393 "Float indicates that a pane should be floated.
396 DocStr(wxPaneInfo::Hide,
397 "Hide indicates that a pane should be hidden.
400 DocStr(wxPaneInfo::Show,
401 "Show indicates that a pane should be shown.
404 DocStr(wxPaneInfo::CaptionVisible,
405 "CaptionVisible indicates that a pane caption should be visible.
408 DocStr(wxPaneInfo::PaneBorder,
409 "PaneBorder indicates that a border should be drawn for the pane.
412 DocStr(wxPaneInfo::Gripper,
413 "Gripper indicates that a gripper should be drawn for the pane..
416 DocStr(wxPaneInfo::CloseButton,
417 "CloseButton indicates that a close button should be drawn for the
421 DocStr(wxPaneInfo::MaximizeButton,
422 "MaximizeButton indicates that a maximize button should be drawn for
426 DocStr(wxPaneInfo::MinimizeButton,
427 "MinimizeButton indicates that a minimize button should be drawn for
431 DocStr(wxPaneInfo::PinButton,
432 "PinButton indicates that a pin button should be drawn for the pane.
435 DocStr(wxPaneInfo::DestroyOnClose,
436 "DestroyOnClose indicates whether a pane should be detroyed when it is
440 DocStr(wxPaneInfo::TopDockable,
441 "TopDockable indicates whether a pane can be docked at the top of the
445 DocStr(wxPaneInfo::BottomDockable,
446 "BottomDockable indicates whether a pane can be docked at the bottom of
450 DocStr(wxPaneInfo::LeftDockable,
451 "LeftDockable indicates whether a pane can be docked on the left of the
455 DocStr(wxPaneInfo::RightDockable,
456 "RightDockable indicates whether a pane can be docked on the right of
460 DocStr(wxPaneInfo::Floatable,
461 "Floatable indicates whether a frame can be floated.
464 DocStr(wxPaneInfo::Movable,
465 "Movable indicates whether a frame can be moved.
468 DocStr(wxPaneInfo::Dockable,
469 "Dockable indicates whether a pane can be docked at any position of the
473 DocStr(wxPaneInfo::DefaultPane,
474 "DefaultPane specifies that the pane should adopt the default pane
478 DocStr(wxPaneInfo::CentrePane,
479 "CentrePane specifies that the pane should adopt the default center
483 DocStr(wxPaneInfo::CenterPane,
484 "CenterPane specifies that the pane should adopt the default center
488 DocStr(wxPaneInfo::ToolbarPane,
489 "ToolbarPane specifies that the pane should adopt the default toolbar
493 DocStr(wxPaneInfo::SetFlag,
494 "SetFlag turns the property given by flag on or off with the
495 option_state parameter.
498 DocStr(wxPaneInfo::HasFlag,
499 "HasFlag returns ``True`` if the the property specified by flag is
504 //---------------------------------------------------------------------------
507 "DockArt is an art provider class which does all of the drawing for
508 `FrameManager`. This allows the library caller to customize or replace the
509 dock art and drawing routines by deriving a new class from `PyDockArt`. The
510 active dock art class can be set via `FrameManager.SetArtProvider`.
513 DocStr(wxDefaultDockArt,
514 "DefaultDockArt is the type of art class constructed by default for the
515 `FrameManager`.","");