Tab Folder (PRIM_TAB)
Folder with several tab sheets
Ancestors - Container (PRIM_CPST) Control (PRIM_CTRL) Object (PRIM_OBJT)
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.
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_Com
| Name | Description |
|---|---|
| BottomAllowAutoHide | Show the autohide icon for the bottom dock area |
| BottomAutoHide | Automatically hide the bottom dock area when not active |
| BottomClosePosition | Location of the close image |
| BottomLayoutPriority | Controls which of the dock areas takes precedence |
| BottomShowPageTabs | Show page tabs for the bottom dock area |
| BottomTabHeight | Height of the page tabs in pixels |
| BottomTabLocation | Position of the page tabs |
| BottomViewStyle | Defines the appearance and behaviour of the tabs pages in the bottom dock area |
| BusyUpdates | BusyUpdates specifies how the control updates itself Inherited from Control (PRIM_CTRL) |
| BusyUpdatesOfParent | BusyUpdatesOfParent specifies whether the parent controls updates Inherited from Control (PRIM_CTRL) |
| CanFocus | CanFocus returns a value indicating whether the control can receive keyboard focus Inherited from Control (PRIM_CTRL) |
| ClosePosition | Location of the close image |
| ComponentClassName | ComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT) |
| ComponentControls | ComponentControls is a collection of all the controls contained in this component. Inherited from Container (PRIM_CPST) |
| ComponentMembers | ComponentMembers provides access to all the member components of this component Inherited from Object (PRIM_OBJT) |
| ComponentPatternName | ComponentPatternName is used to qualify the class of the component. Inherited from Object (PRIM_OBJT) |
| ComponentTag | Generic space allowing a value to be stored for the instance Inherited from Object (PRIM_OBJT) |
| ComponentType | ComponentType gives you access to the type information about the component Inherited from Object (PRIM_OBJT) |
| ComponentTypeName | ComponentTypeName is the fully qualified name of the component's class. Inherited from Object (PRIM_OBJT) |
| ComponentVersion | Variant of the control being used |
| CurrentPage | Reference to the active tab sheet |
| Cursor | Cursor sets the cursor image Inherited from Control (PRIM_CTRL) |
| DisplayPosition | DisplayPosition determines the order in which components are shown Inherited from Control (PRIM_CTRL) |
| DragStyle | DragStyle determines how a component can be dragged Inherited from Control (PRIM_CTRL) |
| DragTabs | Allow tab page to be reorder |
| Ellipses | Show ellipses for truncated text |
| EnableChildren | EnableChildren specifies if the parent sets the Enabled property of child components Inherited from Container (PRIM_CPST) |
| Enabled | Enable activates/deactivates the component Inherited from Control (PRIM_CTRL) |
| FixedPosition | Fix the control position so that it does not move if the parent is scrolled Inherited from Control (PRIM_CTRL) |
| FixedWidth | FixedWidth specifies that all the tabs should have the same width. |
| Focus | Focus tells whether the component has focus Inherited from Control (PRIM_CTRL) |
| FocusedStyle | Reference to a style to be applied when the control is focus Inherited from Control (PRIM_CTRL) |
| FocusedStyles | Collection of styles to be applied when the control is focus Inherited from Control (PRIM_CTRL) |
| FocusPage | Reference to the focus tab sheet |
| FocusStyle | Behavior when the tab receives focus |
| Handle | Returns the Windows handle in desktop applications Inherited from Control (PRIM_CTRL) |
| Height | The height of the control in pixels Inherited from Control (PRIM_CTRL) |
| Hint | Caption displayed when the mouse hovers over the control Inherited from Control (PRIM_CTRL) |
| HintPopup | HintPopup allows a PopupPanel instance to be used instead of the default hint text box Inherited from Control (PRIM_CTRL) |
| HintShow | Enabled or disable the appearance of hints Inherited from Control (PRIM_CTRL) |
| HintShowOfParent | Delegate hints appearance to the parent control Inherited from Control (PRIM_CTRL) |
| HintTitle | HintTitle defines the text shown at the top of the hint window in emphasized text Inherited from Control (PRIM_CTRL) |
| IsAnimating | IsAnimating indicates that a control is currently being animated Inherited from Control (PRIM_CTRL) |
| IsRealized | True if the control is currently realized Inherited from Control (PRIM_CTRL) |
| LayoutPriorityButton | Location of the layout priority button |
| Left | Position of the control relative to the left boundary of its parent Inherited from Control (PRIM_CTRL) |
| LeftAllowAutoHide | Show the autohide icon for the left dock area |
| LeftAutoHide | Automatically hide the left dock area when not active |
| LeftClosePosition | Location of the close image |
| LeftLayoutPriority | Controls which of the dock areas takes precedence |
| LeftShowPageTabs | Show page tabs for the left dock area |
| LeftTabLocation | Position of the page tabs |
| LeftTabWidth | Width of the page tabs in pixels |
| LeftViewStyle | Defines the appearance and behaviour of the tabs pages in the left dock area |
| Modified | Modified indicates that the contents of the component have changed Inherited from Control (PRIM_CTRL) |
| MouseOver | MouseOver determines whether the mouse is directly over a control Inherited from Control (PRIM_CTRL) |
| MouseOverPart | True if the cursor is within the bounds of a child component Inherited from Container (PRIM_CPST) |
| MouseOverStyle | MouseOverStyle defines the style to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) |
| MouseOverStyles | MouseOverStyles is a collection of styles to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) |
| MultiLine | Wrap tabs on to another line if there is insufficient space |
| Name | Name identifies the component Inherited from Object (PRIM_OBJT) |
| NavigatorButtonsMenu | Menu to be used when showing tab in Navigator style |
| NavigatorPagesCount | Number of pages |
| NavigatorTitleMenu | Title Menu |
| NotificationStyle | NotificationStyle controls how events are triggered |
| Opacity | Opacity denotes the appearance of a control in terms of its interaction with its background Inherited from Control (PRIM_CTRL) |
| OpenPage | OpenPage is the topmost tab sheet in the tab folder |
| Owner | Owner owns this component Inherited from Object (PRIM_OBJT) |
| Parent | Reference to the control in which this control is visually positioned Inherited from Control (PRIM_CTRL) |
| Popup | Popup allows a PopupPanel instance to be used instead of the typical right click popup menu Inherited from Control (PRIM_CTRL) |
| PopupMenu | Reference to a PopupMenu to be shown on a right click Inherited from Control (PRIM_CTRL) |
| PrivateStyle | Style applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) |
| PrivateStyles | Collection of styles applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) |
| RaggedRight | RaggedRight specifies how tab sheets are shown |
| RightAllowAutoHide | Show the autohide icon for the right dock area |
| RightAutoHide | Automatically hide the right dock area when not active |
| RightClosePosition | Location of the close image |
| RightLayoutPriority | Controls which of the dock areas takes precedence |
| RightShowPageTabs | Show page tabs for the right dock area |
| RightTabLocation | Position of the page tabs |
| RightTabWidth | Width of the page tabs in pixels |
| RightViewStyle | Defines the appearance and behaviour of the tabs pages in the right dock area |
| Rotation | Rotation allows a control to rotate a number of degrees about a given origin Inherited from Control (PRIM_CTRL) |
| RotationOriginLeft | RotationOriginLeft defines the left coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) |
| RotationOriginTop | RotationOriginTop defines the top coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) |
| ScaleHeight | ScaleHeight is the percentage of the height to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) |
| ScaleOriginLeft | ScaleOriginLeft defines the left coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) |
| ScaleOriginTop | ScaleOriginTop defines the top coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) |
| ScaleWidth | ScaleWidth is the percentage of the width to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) |
| ScreenLeft | ScreenLeft sets the distance from the left of the screen Inherited from Control (PRIM_CTRL) |
| ScreenTop | ScreenTop sets the distance from the top of the screen Inherited from Control (PRIM_CTRL) |
| ScrollLeft | Left position of a horizontally scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) |
| ScrollTop | Top position of a vertically scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) |
| ShowMenus | Navigator default menu options |
| ShowPageTabs | Show page tabs for non-dockable tab pages |
| SkewLeft | SkewLeft defines the angle at which to skew the control horizontally Inherited from Control (PRIM_CTRL) |
| SkewOriginLeft | SkewOriginLeft defines the left coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) |
| SkewOriginTop | SkewOriginTop defines the top coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) |
| SkewTop | SkewTop defines the angle at which to skew the control vertically Inherited from Control (PRIM_CTRL) |
| Style | Style defines the style to be applied to a control Inherited from Control (PRIM_CTRL) |
| Styles | Collection of styles to be applied to the control Inherited from Control (PRIM_CTRL) |
| TabHeight | Height of the page tabs in pixels |
| TabLayout | TabLayout controls the layout of the tab |
| TabLocation | Position of the page tabs |
| TabPosition | TabPosition sets the order of focus when the Tab key is used Inherited from Control (PRIM_CTRL) |
| TabStop | Set to false to stop focus being given to the control via the Tab key Inherited from Control (PRIM_CTRL) |
| TabStyle | TabStyle controls the style of the tabs |
| TabWidth | TabWidth sets the width of the tab |
| ThemeDrawStyle | Name of the Theme DrawStyle to be applied to the control |
| ThemeStyle | Specifies how theme usage is determined |
| Top | Position of the control relative to the top boundary of its parent Inherited from Control (PRIM_CTRL) |
| TopAllowAutoHide | Show the autohide icon for the top dock area |
| TopAutoHide | Automatically hide the top dock area when not active |
| TopClosePosition | Location of the close image |
| TopLayoutPriority | Controls which of the dock areas takes precedence |
| TopShowPageTabs | Show page tabs for the top dock area |
| TopTabHeight | Height of the page tabs in pixels |
| TopTabLocation | Position of the page tabs |
| TopViewStyle | Defines the appearance and behaviour of the tabs pages in the top dock area |
| TouchMove | Determines how the control will respond to touch move processing Inherited from Control (PRIM_CTRL) |
| TouchRotate | Determines how the control will respond to touch rotation Inherited from Control (PRIM_CTRL) |
| TouchScale | Determines how the control will respond to touch scaling Inherited from Control (PRIM_CTRL) |
| TouchSize | Determines whether a control can be resized Inherited from Control (PRIM_CTRL) |
| ViewStyle | Defines the appearance and behaviour of the tabs pages |
| Visible | Show or hide the control Inherited from Control (PRIM_CTRL) |
| VisualStyle | VisualStyle sets the appearance Inherited from Control (PRIM_CTRL) |
| VisualStyleOfParent | Adopt the Visual style from the parent control Inherited from Control (PRIM_CTRL) |
| Width | Width of the component in pixels Inherited from Control (PRIM_CTRL) |
| Name | Description |
|---|---|
| AnimationEnded | Fired when an animation is ended Inherited from Control (PRIM_CTRL)
Cancelled |
| CreateInstance | CreateInstance is signalled when an instance of a component is created Inherited from Control (PRIM_CTRL) |
| DestroyInstance | DestroyInstance is signalled when an instance of a component is about to be destroyed Inherited from Control (PRIM_CTRL) |
| DragDrop | 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 |
| DragOver | 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 |
| EndDrag | Fired when the drag and drop process has completed Inherited from Control (PRIM_CTRL)
Source, Payload, DragResult, AggregatedSource, Origin, Handled |
| Initialize | Fired after a component has been realized for the first time Inherited from Control (PRIM_CTRL) |
| MouseEnter | The mouse has entered the bounds of the control Inherited from Control (PRIM_CTRL) |
| MouseHover | The mouse has hovered over the control Inherited from Control (PRIM_CTRL)
Origin, Handled |
| MouseLeave | The mouse has left the bounds of the control Inherited from Control (PRIM_CTRL) |
| StartDrag | Fired when the user starts a drag and drop process Inherited from Control (PRIM_CTRL)
Source, Payload, Continue, DragList, AggregatedSource, Origin, Handled |
| TabChanging | TabChanging happens just before a tab is displayed
OpenPage, OpeningPage, CanChangePage |
| TouchChange | 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 |
| TouchEnd | Fired when the user stops touching the screen Inherited from Control (PRIM_CTRL) |
| TouchStart | Fired when the user first makes physical contact with the screen Inherited from Control (PRIM_CTRL)
Origin, TouchMove, TouchRotate, TouchScale, TouchSize |
| Name | Description |
|---|---|
| FadeIn | Animate from invisible to visible Inherited from Control (PRIM_CTRL)
Duration, Delay |
| FadeOut | Animate from visible to invisible Inherited from Control (PRIM_CTRL)
Duration, Delay, Visible |
| MoveFrom | Move a control from the specified position to the current position Inherited from Control (PRIM_CTRL)
Left, Top, Duration, Delay |
| MoveTo | Animate a move from the specified number of pixels Inherited from Control (PRIM_CTRL)
Left, Top, Duration, Delay |
| Realize | Creates the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) |
| Scale | Animate a change of scale Inherited from Control (PRIM_CTRL)
ScaleWidth, ScaleHeight, Duration, Delay |
| SetFocus | Sets the control to be the focus control Inherited from Control (PRIM_CTRL) |
| ShowMessages | LANSA Internal Use Inherited from Control (PRIM_CTRL) |
| Transition | Animate the change from one control to another Inherited from Container (PRIM_CPST)
From, To, TransitionType, Duration, Delay |
| Unrealize | Destroys the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) |
| UpdateDisplay | UpdateDisplay updates the display immediately Inherited from Control (PRIM_CTRL) |
Febuary 18 V14SP2