This reference page is linked to from the following overview topics: Layouts.
Used to build the user interface.
Layouts manage areas of the screen called regions. Regions contain UI components such as buttons, viewers, and edit boxes. Regions are added to layouts. When a UI component is bound to a region, the region defines how big it is and how it behaves when the layout is resized.
Types of Layouts
A region is first defined using the FBLayout::AddRegion() function. Once a region is defined and the corresponding UI component is created, and the component is bound to its region with FBLayout::SetControl(). You can use the FBSystem::OnUIIdle() in your layout to update real-time UI components such as guages and status indicators. In Python, FBBoxLayout and FBGridLayout take care of most of the region handling. They are used to create basic control layouts for simple tools. If you have a lot of content you can use FBScrollBox to manage it. For an example, see the Python sample Scrollbox.py.* Also see the Python sample Layout.py, and the C++ sample ortooluidemo.
Definition at line 765 of file fbcontrols.h.
#include <fbcontrols.h>
Public Types |
|
enum | FBSplitStyle { kFBNoSplit = 0, kFBHSplit = 1, kFBVSplit = 2, kFBHVSplit = 3 } |
Type of split style (sub-division) for layout. More... |
|
Public Member Functions |
|
FBLayout (HIObject pObject=NULL) | |
Constructor. |
|
virtual bool | AddRegion (char *pName, char *pTitle, int pX, FBAttachType pXType, char *pXRelative, float pMultX, int pY, FBAttachType pYType, char *pYRelative, float pMultY, int pW, FBAttachType pWType, char *pWRelative, float pMultW, int pH, FBAttachType pHType, char *pHRelative, float pMultH) |
Add a region to the layout. |
|
virtual bool | MoveRegion (char *pName, int pX, int pY) |
Move a region. |
|
virtual bool | SizeRegion (char *pName, int pW, int pH) |
Change a region's size. |
|
virtual bool | RemoveRegion (char *pName) |
Remove a region. |
|
virtual bool | RenameRegion (char *pOldName, char *pNewName) |
Rename a region. |
|
virtual bool | GetRegion (char *pName) |
Verify if a region with pName exists.
|
|
virtual bool | GetRegionPositions (char *pName, bool pComputed, int *pX, int *pY, int *pW=NULL, int *pH=NULL) |
Get region pName information
(position and size) |
|
virtual void | ClearControl (char *pName) |
Remove a control from a region in a visual
component. |
|
virtual FBVisualComponent * | GetControl (char *pName) |
Get control of a region in a visual
component. |
|
virtual HIKtObject | GetHIKtObject (char *pName) |
Set or Get internal toolkit: object.
|
|
virtual bool | SetHIKtView (char *pName, HIKtView pView) |
Set internal toolkit view. |
|
virtual HIKtView | GetHIKtView (char *pName) |
Get internal toolkit view. |
|
virtual bool | SetBorder (char *pName, FBBorderStyle pType, bool pShowTitle, bool pInSet, int pWidth, int pSpacing, float pMaxAngle, int pCornerRadius) |
Set border properties for a region. |
|
virtual bool | SetSplitStyle (char *pName, FBSplitStyle pRegionType) |
Set a region's splitstyle. |
|
virtual FBSplitStyle | GetSplitStyle (char *pName) |
Get a region's splitstyle. |
|
virtual bool | SetRegionTitle (char *pName, char *pTitle) |
Set a region's title. |
|
void | SetAutoRestructure (bool pAutoRestructure) |
Suspend all automatic layout recomputation.
|
|
void | Restructure (bool pNoMove) |
Force a recomputation of all region
placements in the layout. |
|
IObject_Declare (Implementation) | |
virtual bool | SetControl (char *pName, HFBVisualComponent pComponent) |
Set control of a region to a visual
component. |
|
virtual bool | SetControl (char *pName, FBVisualComponent &pComponent) |
virtual bool | SetView (char *pName, HFBVisualComponent pComponent) |
Set view. |
|
virtual bool | SetView (char *pName, FBVisualComponent &pComponent) |
Public Attributes |
|
FBPropertyEvent | OnInput |
Event: Input. |
|
FBPropertyEvent | OnPaint |
Event: Paint layout. |
|
FBPropertyEvent | OnIdle |
Event: Idle. |
|
FBPropertyEvent | OnShow |
Event: Show layout. |
|
FBPropertyEvent | OnResize |
Event: Resize layout. |
enum FBSplitStyle |
Type of split style (sub-division) for layout.
kFBNoSplit |
No split. |
kFBHSplit |
Horizontal split. |
kFBVSplit |
Vertical split. |
kFBHVSplit |
Horizontal and Vertical split. |
Definition at line 770 of file fbcontrols.h.
{ kFBNoSplit = 0, kFBHSplit = 1, kFBVSplit = 2, kFBHVSplit = 3 };
FBLayout | ( | HIObject | pObject = NULL |
) |
Constructor.
virtual bool AddRegion | ( | char * | pName, |
char * | pTitle, | ||
int | pX, | ||
FBAttachType | pXType, | ||
char * | pXRelative, | ||
float | pMultX, | ||
int | pY, | ||
FBAttachType | pYType, | ||
char * | pYRelative, | ||
float | pMultY, | ||
int | pW, | ||
FBAttachType | pWType, | ||
char * | pWRelative, | ||
float | pMultW, | ||
int | pH, | ||
FBAttachType | pHType, | ||
char * | pHRelative, | ||
float | pMultH | ||
) | [virtual] |
Add a region to the layout.
pName | Name of region. |
pTitle | Title to display. |
pX | X: Position. |
pXType | X: Type of attachment. |
pXRelative | X: Item to attach to. |
pMultX | X: Multiplier of relative value. |
pY | Y: Position. |
pYType | Y: Type of attachment. |
pYRelative | Y: Item to attach to. |
pMultY | Y: Multiplier of relative value. |
pW | W: Width of region. |
pWType | W: Type of attachment. |
pWRelative | W: Item to attach to. |
pMultW | W: Multiplier of relative value. |
pH | H: Height of region. |
pHType | H: Type of attachment. |
pHRelative | H: Item to attach to. |
pMultH | H: Multiplier of relative value. |
virtual bool MoveRegion | ( | char * | pName, |
int | pX, | ||
int | pY | ||
) | [virtual] |
Move a region.
pName | Name of region to move. |
pX | New X position. |
pY | New Y position. |
virtual bool SizeRegion | ( | char * | pName, |
int | pW, | ||
int | pH | ||
) | [virtual] |
Change a region's size.
pName | Name of region to resize. |
pW | New region width. |
pH | New region height. |
virtual bool RemoveRegion | ( | char * | pName | ) | [virtual] |
Remove a region.
pName | Name of region to remove. |
virtual bool RenameRegion | ( | char * | pOldName, |
char * | pNewName | ||
) | [virtual] |
Rename a region.
pOldName | Region's old name. |
pNewName | Region's new name. |
virtual bool GetRegion | ( | char * | pName | ) | [virtual] |
Verify if a region with pName exists.
pName | Name of region to check. |
virtual bool GetRegionPositions | ( | char * | pName, |
bool | pComputed, | ||
int * | pX, | ||
int * | pY, | ||
int * | pW = NULL , |
||
int * | pH = NULL |
||
) | [virtual] |
Get region pName information (position and size)
pName | Name of region. |
pComputed | Is the information retrieved relative or absolute? |
pX | Position in X of the region. |
pY | Position in Y of the region. |
pW | Width of the region. |
pH | Height of the region. |
virtual bool SetControl | ( | char * | pName, |
HFBVisualComponent | pComponent | ||
) | [virtual] |
Set control of a region to a visual component.
pName | Name of region to affect. |
pComponent | Component to control region. |
virtual bool SetControl | ( | char * | pName, |
FBVisualComponent & | pComponent | ||
) | [virtual] |
virtual void ClearControl | ( | char * | pName | ) | [virtual] |
Remove a control from a region in a visual component.
pName | Name of region to remove control. |
virtual FBVisualComponent* GetControl | ( | char * | pName | ) | [virtual] |
Get control of a region in a visual component.
pName | Name of region to find. |
virtual HIKtObject GetHIKtObject | ( | char * | pName | ) | [virtual] |
Set or Get internal toolkit: object.
pName | Name of region. |
virtual bool SetHIKtView | ( | char * | pName, |
HIKtView | pView | ||
) | [virtual] |
Set internal toolkit view.
pName | Name of region. |
pView | View to set as view for region. |
virtual HIKtView GetHIKtView | ( | char * | pName | ) | [virtual] |
Get internal toolkit view.
pName | Name of region. |
virtual bool SetView | ( | char * | pName, |
HFBVisualComponent | pComponent | ||
) | [virtual] |
Set view.
pName | Name of Region. |
pComponent | Component to set as view. |
virtual bool SetView | ( | char * | pName, |
FBVisualComponent & | pComponent | ||
) | [virtual] |
virtual bool SetBorder | ( | char * | pName, |
FBBorderStyle | pType, | ||
bool | pShowTitle, | ||
bool | pInSet, | ||
int | pWidth, | ||
int | pSpacing, | ||
float | pMaxAngle, | ||
int | pCornerRadius | ||
) | [virtual] |
Set border properties for a region.
pName | Name of Region to change border properties. |
pType | Border style to use. |
pShowTitle | Show region title? |
pInSet | Is region inset? |
pWidth | Border width. |
pSpacing | Border spacing. |
pMaxAngle | Max angle for rounding. |
pCornerRadius | Corner radius for rounding. |
virtual bool SetSplitStyle | ( | char * | pName, |
FBSplitStyle | pRegionType | ||
) | [virtual] |
Set a region's splitstyle.
pName | Name of Region to set splitstyle. |
pRegionType | Split style give to region. |
virtual FBSplitStyle GetSplitStyle | ( | char * | pName | ) | [virtual] |
Get a region's splitstyle.
pName | Name of Region to get splitstyle from. |
virtual bool SetRegionTitle | ( | char * | pName, |
char * | pTitle | ||
) | [virtual] |
Set a region's title.
pName | Name of region to change title. |
pTitle | New title for region. |
void SetAutoRestructure | ( | bool | pAutoRestructure | ) |
Suspend all automatic layout recomputation.
pAutoRestructure | If true, Suspend all automatic layout recomputation, else restore it. |
void Restructure | ( | bool | pNoMove | ) |
Force a recomputation of all region placements in the layout.
IObject_Declare | ( | Implementation | ) |
Reimplemented from FBVisualComponent.