Tab Sheet - Dock Method
Dock the sheet
Member of Tab Sheet (PRIM_TBSH)
Details
The Dock method is used to programmatically dock a tab that has been undocked.
Example
In this example, the sheets can be undocked by dragging or double clicking on the dotted grabbers. The doc button will reattach the undocked sheets.
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) Height(38) Units(Pixels)
Define_Com Class(#PRIM_TBLO.Row) Name(#Row2) Displayposition(2) Parent(#TableLayout1) Height(1.82)
Define_Com Class(#PRIM_TBLO.Item) Name(#LayoutItem1) Column(#Column1) Manage(#Tab1) Parent(#TableLayout1) Row(#Row2)
Define_Com Class(#PRIM_TBLO.Item) Name(#LayoutItem2) Alignment(CenterLeft) Column(#Column1) Flow(Right) Manage(#Dock) Parent(#TableLayout1) Row(#Row1) Sizing(None) Marginleft(8)
Define_Com Class(#PRIM_TBLO.Item) Name(#LayoutItem3) Alignment(CenterLeft) Column(#Column1) Flow(Right) Parent(#TableLayout1) Row(#Row1) Sizing(None) Marginleft(8)
Define_Com Class(#PRIM_TAB) Name(#Tab1) Bottomlayoutpriority(4) Componentversion(2) Displayposition(1) Height(378) Left(0) Leftlayoutpriority(1) Parent(#COM_OWNER) Rightlayoutpriority(2) Tabposition(1) Top(38) 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(354) 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(354) 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(354) 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(354) 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(226) 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(226) 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(226) Left(130) Parent(#Tab1) Tabposition(1) Tabstop(False) Top(24) Width(453) Dockclosebutton(True) Dockallowedpositions(Left+Bottom+Right+Center) Dockallowundock(True)
Define_Com Class(#PRIM_PHBN) Name(#Dock) Caption('Dock') Displayposition(2) Left(8) Parent(#COM_OWNER) Tabposition(2) Top(7)
Evtroutine Handling(#Dock.Click)
For Each(#Member) In(#Com_owner.ComponentMembers)
Continue If(#Member *IsNot #prim_tbsh)
(#Member *As #prim_tbsh).Dock
Endfor
Endroutine
End_Com