Tab Folder (PRIM_TAB)
Folder with several tab sheets
Ancestors - Container (PRIM_CPST)Control (PRIM_CTRL)Object (PRIM_OBJT)
Details
Tab folder use one or more Tab Sheets to organise large amounts of information. Typically, each sheet shows a caption in a tab at the top of the Tab Folder. Clicking on the tabs brings the tab to the front.
In its simplest form, a Tab Folder is just a couple of sheets, however it can also be used to create complex application frames with many sheets docked in different positions. Sheets can be dragged from their dock position to a different one and snapped in to place. Dock positions can autohide, showing just the tabs, or be floated and continue to execute in a window.
Example
A simple 2 sheet Tab Folder.
Function Options(*DIRECT)
Begin_Com Role(*EXTENDS #PRIM_FORM) Clientwidth(484) Clientheight(301) Left(188) Top(247) Layoutmanager(#TableLayout1)
Define_Com Class(#PRIM_TBLO) Name(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Column) Name(#Column1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Row) Name(#Row1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Item) Name(#Tab1Item1) Column(#Column1) Manage(#Tab1) Parent(#TableLayout1) Row(#Row1)
Define_Com Class(#PRIM_TAB) Name(#Tab1) Bottomlayoutpriority(4) Componentversion(2) Displayposition(1) Height(301) Left(0) Leftlayoutpriority(1) Parent(#COM_OWNER) Rightlayoutpriority(2) Tabposition(1) Top(0) Toplayoutpriority(3) Width(484)
Define_Com Class(#PRIM_TBSH) Name(#Sheet1) Caption('Page1') Displayposition(1) Height(277) Left(0) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(484)
Define_Com Class(#PRIM_TBSH) Name(#Sheet2) Caption('Page2') Displayposition(2) Height(277) Left(0) Parent(#Tab1) Tabposition(2) Tabstop(False) Top(24) Width(484)
End_Com
This example has 9 sheets using 4 of the available DockPositions.
Begin_Com Role(*EXTENDS #PRIM_FORM) Caption('Docking Framework Sample') Clientheight(416) Clientwidth(785) Height(455) Left(188) Top(205) Width(801) Layoutmanager(#TableLayout1)
Define_Com Class(#PRIM_TBLO) Name(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Column) Name(#Column1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Row) Name(#Row1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Item) Name(#LayoutItem1) Column(#Column1) Manage(#Tab1) Parent(#TableLayout1) Row(#Row1)
Define_Com Class(#PRIM_TAB) Name(#Tab1) Bottomlayoutpriority(4) Componentversion(2) Displayposition(1) Height(416) Left(0) Leftlayoutpriority(1) Parent(#COM_OWNER) Rightlayoutpriority(2) Tabposition(1) Top(0) Toplayoutpriority(3) Width(785) Righttabwidth(197) Lefttabwidth(125) Bottomtabheight(123) Bottomcloseposition(TabHeader) Leftcloseposition(TabHeader) Rightcloseposition(TabHeader) Closeposition(TabHeader)
Define_Com Class(#PRIM_TBSH) Name(#Sheet1) Caption('Page1') Displayposition(1) Height(392) Left(0) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(125) Dockposition(Left) Dockclosebutton(True) Dockallowundock(True) Opened(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet2) Caption('Page2') Displayposition(2) Height(392) Left(0) Parent(#Tab1) Tabposition(2) Tabstop(False) Top(24) Width(125) Dockposition(Left) Dockclosebutton(True) Dockallowundock(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet3) Caption('Page3') Displayposition(1) Height(392) Left(0) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(197) Dockposition(Right) Dockclosebutton(True) Dockallowundock(True) Opened(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet4) Caption('Page4') Displayposition(2) Height(392) Left(0) Parent(#Tab1) Tabposition(2) Tabstop(False) Top(24) Width(197) Dockposition(Right) Dockclosebutton(True) Dockallowundock(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet5) Caption('Page5') Displayposition(1) Height(99) Left(0) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(453) Dockposition(Bottom) Dockallowedpositions(Left+Bottom+Right) Dockclosebutton(True) Dockallowundock(True) Opened(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet6) Caption('Page6') Displayposition(2) Height(99) Left(0) Parent(#Tab1) Tabposition(2) Tabstop(False) Top(24) Width(453) Dockallowedpositions(Left+Bottom+Right) Dockposition(Bottom) Dockclosebutton(True) Dockallowundock(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet7) Caption('Page7') Displayposition(1) Height(264) Left(130) Parent(#Tab1) Tabposition(10) Tabstop(False) Top(24) Width(453) Dockclosebutton(True) Dockallowedpositions(Left+Bottom+Right+Center) Dockallowundock(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet8) Caption('Page8') Displayposition(10) Height(264) Left(130) Parent(#Tab1) Tabposition(11) Tabstop(False) Top(24) Width(453) Dockclosebutton(True) Dockallowedpositions(Left+Bottom+Right+Center) Dockallowundock(True)
Define_Com Class(#PRIM_TBSH) Name(#Sheet9) Caption('Page9') Displayposition(11) Height(264) Left(130) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(453) Dockclosebutton(True) Dockallowedpositions(Left+Bottom+Right+Center) Dockallowundock(True)
End_ComProperties
Name | Description |
|---|---|
Show the autohide icon for the bottom dock area | |
Automatically hide the bottom dock area when not active | |
Location of the close image | |
Controls which of the dock areas takes precedence | |
Show page tabs for the bottom dock area | |
Height of the page tabs in pixels | |
Position of the page tabs | |
Defines the appearance and behaviour of the tabs pages in the bottom dock area | |
BusyUpdates specifies how the control updates itself Inherited from Control (PRIM_CTRL) | |
BusyUpdatesOfParent specifies whether the parent controls updates Inherited from Control (PRIM_CTRL) | |
CanFocus returns a value indicating whether the control can receive keyboard focus Inherited from Control (PRIM_CTRL) | |
Location of the close image | |
ComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT) | |
ComponentControls is a collection of all the controls contained in this component. Inherited from Container (PRIM_CPST) | |
ComponentMembers provides access to all the member components of this component Inherited from Object (PRIM_OBJT) | |
ComponentPatternName is used to qualify the class of the component. Inherited from Object (PRIM_OBJT) | |
Generic space allowing a value to be stored for the instance Inherited from Object (PRIM_OBJT) | |
ComponentType gives you access to the type information about the component Inherited from Object (PRIM_OBJT) | |
ComponentTypeName is the fully qualified name of the component's class. Inherited from Object (PRIM_OBJT) | |
Variant of the control being used | |
Reference to the active tab sheet | |
Cursor sets the cursor image Inherited from Control (PRIM_CTRL) | |
DisplayPosition determines the order in which components are shown Inherited from Control (PRIM_CTRL) | |
DragStyle determines how a component can be dragged Inherited from Control (PRIM_CTRL) | |
Allow tab page to be reorder | |
Show ellipses for truncated text | |
EnableChildren specifies if the parent sets the Enabled property of child components Inherited from Container (PRIM_CPST) | |
Enable activates/deactivates the component Inherited from Control (PRIM_CTRL) | |
Fix the control position so that it does not move if the parent is scrolled Inherited from Control (PRIM_CTRL) | |
FixedWidth specifies that all the tabs should have the same width. | |
Focus tells whether the component has focus Inherited from Control (PRIM_CTRL) | |
Reference to a style to be applied when the control is focus Inherited from Control (PRIM_CTRL) | |
Collection of styles to be applied when the control is focus Inherited from Control (PRIM_CTRL) | |
Reference to the focus tab sheet | |
Behavior when the tab receives focus | |
Returns the Windows handle in desktop applications Inherited from Control (PRIM_CTRL) | |
The height of the control in pixels Inherited from Control (PRIM_CTRL) | |
Caption displayed when the mouse hovers over the control Inherited from Control (PRIM_CTRL) | |
HintPopup allows a PopupPanel instance to be used instead of the default hint text box Inherited from Control (PRIM_CTRL) | |
Enabled or disable the appearance of hints Inherited from Control (PRIM_CTRL) | |
Delegate hints appearance to the parent control Inherited from Control (PRIM_CTRL) | |
HintTitle defines the text shown at the top of the hint window in emphasized text Inherited from Control (PRIM_CTRL) | |
IsAnimating indicates that a control is currently being animated Inherited from Control (PRIM_CTRL) | |
True if the control is currently realized Inherited from Control (PRIM_CTRL) | |
Location of the layout priority button | |
Position of the control relative to the left boundary of its parent Inherited from Control (PRIM_CTRL) | |
Show the autohide icon for the left dock area | |
Automatically hide the left dock area when not active | |
Location of the close image | |
Controls which of the dock areas takes precedence | |
Show page tabs for the left dock area | |
Position of the page tabs | |
Width of the page tabs in pixels | |
Defines the appearance and behaviour of the tabs pages in the left dock area | |
Modified indicates that the contents of the component have changed Inherited from Control (PRIM_CTRL) | |
MouseOver determines whether the mouse is directly over a control Inherited from Control (PRIM_CTRL) | |
True if the cursor is within the bounds of a child component Inherited from Container (PRIM_CPST) | |
MouseOverStyle defines the style to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) | |
MouseOverStyles is a collection of styles to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) | |
Wrap tabs on to another line if there is insufficient space | |
Name identifies the component Inherited from Object (PRIM_OBJT) | |
Menu to be used when showing tab in Navigator style | |
Number of pages | |
Title Menu | |
NotificationStyle controls how events are triggered | |
Opacity denotes the appearance of a control in terms of its interaction with its background Inherited from Control (PRIM_CTRL) | |
OpenPage is the topmost tab sheet in the tab folder | |
Owner owns this component Inherited from Object (PRIM_OBJT) | |
Reference to the control in which this control is visually positioned Inherited from Control (PRIM_CTRL) | |
Popup allows a PopupPanel instance to be used instead of the typical right click popup menu Inherited from Control (PRIM_CTRL) | |
Reference to a PopupMenu to be shown on a right click Inherited from Control (PRIM_CTRL) | |
Style applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) | |
Collection of styles applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) | |
RaggedRight specifies how tab sheets are shown | |
Show the autohide icon for the right dock area | |
Automatically hide the right dock area when not active | |
Location of the close image | |
Controls which of the dock areas takes precedence | |
Show page tabs for the right dock area | |
Position of the page tabs | |
Width of the page tabs in pixels | |
Defines the appearance and behaviour of the tabs pages in the right dock area | |
Rotation allows a control to rotate a number of degrees about a given origin Inherited from Control (PRIM_CTRL) | |
RotationOriginLeft defines the left coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) | |
RotationOriginTop defines the top coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) | |
ScaleHeight is the percentage of the height to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) | |
ScaleOriginLeft defines the left coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) | |
ScaleOriginTop defines the top coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) | |
ScaleWidth is the percentage of the width to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) | |
ScreenLeft sets the distance from the left of the screen Inherited from Control (PRIM_CTRL) | |
ScreenTop sets the distance from the top of the screen Inherited from Control (PRIM_CTRL) | |
Left position of a horizontally scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) | |
Top position of a vertically scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) | |
Navigator default menu options | |
Show page tabs for non-dockable tab pages | |
SkewLeft defines the angle at which to skew the control horizontally Inherited from Control (PRIM_CTRL) | |
SkewOriginLeft defines the left coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) | |
SkewOriginTop defines the top coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) | |
SkewTop defines the angle at which to skew the control vertically Inherited from Control (PRIM_CTRL) | |
Style defines the style to be applied to a control Inherited from Control (PRIM_CTRL) | |
Collection of styles to be applied to the control Inherited from Control (PRIM_CTRL) | |
Height of the page tabs in pixels | |
TabLayout controls the layout of the tab | |
Position of the page tabs | |
TabPosition sets the order of focus when the Tab key is used Inherited from Control (PRIM_CTRL) | |
Set to false to stop focus being given to the control via the Tab key Inherited from Control (PRIM_CTRL) | |
TabStyle controls the style of the tabs | |
TabWidth sets the width of the tab | |
Name of the Theme DrawStyle to be applied to the control | |
Specifies how theme usage is determined | |
Position of the control relative to the top boundary of its parent Inherited from Control (PRIM_CTRL) | |
Show the autohide icon for the top dock area | |
Automatically hide the top dock area when not active | |
Location of the close image | |
Controls which of the dock areas takes precedence | |
Show page tabs for the top dock area | |
Height of the page tabs in pixels | |
Position of the page tabs | |
Defines the appearance and behaviour of the tabs pages in the top dock area | |
Determines how the control will respond to touch move processing Inherited from Control (PRIM_CTRL) | |
Determines how the control will respond to touch rotation Inherited from Control (PRIM_CTRL) | |
Determines how the control will respond to touch scaling Inherited from Control (PRIM_CTRL) | |
Determines whether a control can be resized Inherited from Control (PRIM_CTRL) | |
Defines the appearance and behaviour of the tabs pages | |
Show or hide the control Inherited from Control (PRIM_CTRL) | |
VisualStyle sets the appearance Inherited from Control (PRIM_CTRL) | |
Adopt the Visual style from the parent control Inherited from Control (PRIM_CTRL) | |
Width of the component in pixels Inherited from Control (PRIM_CTRL) |
Events
Name | Description |
|---|---|
Fired when an animation is ended Inherited from Control (PRIM_CTRL) Cancelled | |
CreateInstance is signalled when an instance of a component is created Inherited from Control (PRIM_CTRL) | |
DestroyInstance is signalled when an instance of a component is about to be destroyed Inherited from Control (PRIM_CTRL) | |
Fired on mouse up to signify the end of a drag process Inherited from Control (PRIM_CTRL) PosX, PosY, Source, Payload, AggregatedSource, Origin, Handled, DragResult | |
Fired during the drag and drop process when the cursor moves over the control Inherited from Control (PRIM_CTRL) PosX, PosY, Source, Payload, DragState, AcceptDrop, DragCursor, ShowDropHilight, AggregatedSource, Origin, Handled | |
Fired when the drag and drop process has completed Inherited from Control (PRIM_CTRL) Source, Payload, DragResult, AggregatedSource, Origin, Handled | |
Fired after a component has been realized for the first time Inherited from Control (PRIM_CTRL) | |
The mouse has entered the bounds of the control Inherited from Control (PRIM_CTRL) | |
The mouse has hovered over the control Inherited from Control (PRIM_CTRL) Origin, Handled | |
The mouse has left the bounds of the control Inherited from Control (PRIM_CTRL) | |
Fired when the user starts a drag and drop process Inherited from Control (PRIM_CTRL) Source, Payload, Continue, DragList, AggregatedSource, Origin, Handled | |
TabChanging happens just before a tab is displayed OpenPage, OpeningPage, CanChangePage | |
Fired repeatedly between the TouchStart and TouchEnd boundaries to provide details of the touch events Inherited from Control (PRIM_CTRL) MoveLeft, MoveTop, ScaleWidth, ScaleHeight, Rotation, Continue | |
Fired when the user stops touching the screen Inherited from Control (PRIM_CTRL) | |
Fired when the user first makes physical contact with the screen Inherited from Control (PRIM_CTRL) Origin, TouchMove, TouchRotate, TouchScale, TouchSize |
Methods
Name | Description |
|---|---|
Animate from invisible to visible Inherited from Control (PRIM_CTRL) Duration, Delay | |
Animate from visible to invisible Inherited from Control (PRIM_CTRL) Duration, Delay, Visible | |
Move a control from the specified position to the current position Inherited from Control (PRIM_CTRL) Left, Top, Duration, Delay | |
Animate a move from the specified number of pixels Inherited from Control (PRIM_CTRL) Left, Top, Duration, Delay | |
Creates the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) | |
Animate a change of scale Inherited from Control (PRIM_CTRL) ScaleWidth, ScaleHeight, Duration, Delay | |
Sets the control to be the focus control Inherited from Control (PRIM_CTRL) | |
LANSA Internal Use Inherited from Control (PRIM_CTRL) | |
Changes and animates control size changing Inherited from Control (PRIM_CTRL) Width, Height, Duration, Delay | |
Animate the change from one control to another Inherited from Container (PRIM_CPST) From, To, TransitionType, Duration, Delay | |
Destroys the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) | |
UpdateDisplay updates the display immediately Inherited from Control (PRIM_CTRL) |