--- a/TabListEditor.st Fri Jul 09 21:22:29 1999 +0200
+++ b/TabListEditor.st Fri Jul 09 21:26:34 1999 +0200
@@ -119,7 +119,7 @@
'Adds a new tab item.'
#argument
-'An argument not explicitly used by the tab item.'
+'An optional argument stored with the tab item.'
#canSelect
'Turns on/off whether the tab item is selectable.'
@@ -186,83 +186,84 @@
<resource: #canvas>
- ^
-
- #(#FullSpec
- #window:
- #(#WindowSpec
- #name: 'Tab Basic'
- #layout: #(#LayoutFrame 463 0 289 0 825 0 514 0)
- #label: 'Tab Basic'
- #min: #(#Point 10 10)
- #max: #(#Point 1280 1024)
- #bounds: #(#Rectangle 463 289 826 515)
- #usePreferredExtent: false
- )
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#LabelSpec
- #name: 'Label'
- #layout: #(#AlignmentOrigin 98 0 26 0 1 0.5)
- #label: 'Label:'
- #resizeForLabel: true
- )
- #(#InputFieldSpec
- #name: 'LabelField'
- #layout: #(#LayoutFrame 100 0 15 0 -5 1.0 37 0)
- #activeHelpKey: #label
- #model: #label
- #modifiedChannel: #modifiedChannel
- #acceptChannel: #acceptChannel
- #acceptOnLostFocus: true
- )
- #(#CheckBoxSpec
- #name: 'TranslateLabel'
- #layout: #(#LayoutFrame 100 0 40 0 -5 1 66 0)
- #activeHelpKey: #labelDerivesFromApplication
- #model: #translateLabel
- #label: 'Label derives from Application'
- )
- #(#LabelSpec
- #name: 'ArgumentLabel'
- #layout: #(#AlignmentOrigin 98 0 81 0 1 0.5)
- #label: 'Argument:'
- #resizeForLabel: true
- )
- #(#InputFieldSpec
- #name: 'ArgumentField'
- #layout: #(#LayoutFrame 100 0 70 0 -5 1.0 92 0)
- #activeHelpKey: #argument
- #model: #editAgument
- #modifiedChannel: #modifiedChannel
- #acceptChannel: #acceptChannel
- #acceptOnLostFocus: true
- )
- #(#LabelSpec
- #name: 'ForegroundLabel'
- #layout: #(#AlignmentOrigin 98 0 115 0 1 0.5)
- #label: 'Color:'
- #adjust: #right
- #resizeForLabel: true
- )
- #(#ColorMenuSpec
- #name: 'ForegroundColorMenu'
- #layout: #(#LayoutFrame 100 0 103 0 -5 1.0 125 0)
- #activeHelpKey: #color
- #model: #labelForegroundColor
- #labelsAreColored: false
- )
- #(#CheckBoxSpec
- #name: 'CanSelect'
- #layout: #(#LayoutFrame 100 0 135 0 -5 1 157 0)
- #activeHelpKey: #canSelect
- #model: #enabled
- #label: 'Can Select'
- )
- )
- )
+ ^
+ #(#FullSpec
+ #name: #tabSpec
+ #window:
+ #(#WindowSpec
+ #label: 'Tab Basic'
+ #name: 'Tab Basic'
+ #layout: #(#LayoutFrame 220 0 200 0 634 0 425 0)
+ #min: #(#Point 10 10)
+ #max: #(#Point 1280 1024)
+ #bounds: #(#Rectangle 220 200 635 426)
+ )
+ #component:
+ #(#SpecCollection
+ #collection: #(
+ #(#LabelSpec
+ #label: 'Label:'
+ #name: 'Label'
+ #layout: #(#AlignmentOrigin 98 0 26 0 1 0.5)
+ #resizeForLabel: true
+ )
+ #(#InputFieldSpec
+ #name: 'LabelField'
+ #layout: #(#LayoutFrame 100 0 15 0 -5 1.0 37 0)
+ #activeHelpKey: #label
+ #model: #label
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ #acceptOnPointerLeave: false
+ )
+ #(#CheckBoxSpec
+ #label: 'Application provides translation '
+ #name: 'TranslateLabel'
+ #layout: #(#LayoutFrame 59 0 45 0 -8 1 71 0)
+ #activeHelpKey: #labelDerivesFromApplication
+ #model: #translateLabel
+ )
+ #(#LabelSpec
+ #label: 'Argument:'
+ #name: 'ArgumentLabel'
+ #layout: #(#AlignmentOrigin 98 0 182 0 1 0.5)
+ #resizeForLabel: true
+ )
+ #(#InputFieldSpec
+ #name: 'ArgumentField'
+ #layout: #(#LayoutFrame 100 0 171 0 -5 1.0 193 0)
+ #activeHelpKey: #argument
+ #model: #editAgument
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ #acceptOnPointerLeave: false
+ )
+ #(#LabelSpec
+ #label: 'Color:'
+ #name: 'ForegroundLabel'
+ #layout: #(#AlignmentOrigin 98 0 91 0 1 0.5)
+ #resizeForLabel: true
+ #adjust: #right
+ )
+ #(#ColorMenuSpec
+ #name: 'ForegroundColorMenu'
+ #layout: #(#LayoutFrame 100 0 79 0 -5 1.0 101 0)
+ #activeHelpKey: #color
+ #model: #labelForegroundColor
+ #labelsAreColored: false
+ )
+ #(#CheckBoxSpec
+ #label: 'Can Select'
+ #name: 'CanSelect'
+ #layout: #(#LayoutFrame 59 0 110 0 -8 1 132 0)
+ #activeHelpKey: #canSelect
+ #model: #enabled
+ )
+ )
+
+ )
)
!
@@ -281,94 +282,93 @@
<resource: #canvas>
- ^
-
- #(#FullSpec
- #window:
- #(#WindowSpec
- #name: 'Tab List Editor'
- #layout: #(#LayoutFrame 117 0 340 0 586 0 669 0)
- #label: 'Tab List Editor'
- #min: #(#Point 440 280)
- #max: #(#Point 1152 900)
- #bounds: #(#Rectangle 117 340 587 670)
- #menu: #menu
- #usePreferredExtent: false
- )
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#MenuPanelSpec
- #name: 'menuToolbarView'
- #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 34 0)
- #menu: #menuToolbar
- #showSeparatingLines: true
- )
- #(#VariableHorizontalPanelSpec
- #name: 'VariablePanel'
- #layout: #(#LayoutFrame 0 0.0 36 0.0 0 1.0 -26 1.0)
+ ^
+ #(#FullSpec
+ #name: #windowSpec
+ #window:
+ #(#WindowSpec
+ #label: 'Tab List Editor'
+ #name: 'Tab List Editor'
+ #layout: #(#LayoutFrame 58 0 290 0 659 0 707 0)
+ #min: #(#Point 440 280)
+ #max: #(#Point 1152 900)
+ #bounds: #(#Rectangle 58 290 660 708)
+ #menu: #menu
+ )
+ #component:
+ #(#SpecCollection
+ #collection: #(
+ #(#MenuPanelSpec
+ #name: 'menuToolbarView'
+ #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 34 0)
+ #menu: #menuToolbar
+ #showSeparatingLines: true
+ )
+ #(#VariableHorizontalPanelSpec
+ #name: 'VariablePanel'
+ #layout: #(#LayoutFrame 0 0.0 36 0.0 0 1.0 -26 1.0)
+ #handles: #(#Any 0.259875 1.0)
+ #component:
+ #(#SpecCollection
+ #collection: #(
+ #(#SequenceViewSpec
+ #name: 'ColumnView'
+ #model: #selectionHolder
+ #menu: #menuEdit
+ #hasHorizontalScrollBar: true
+ #hasVerticalScrollBar: true
+ #miniScrollerHorizontal: true
+ #useIndex: true
+ #sequenceList: #listOfLabels
+ )
+ #(#ViewSpec
+ #name: 'SpecView'
+ #level: -1
#component:
- #(#SpecCollection
- #collection:
- #(
- #(#SequenceViewSpec
- #name: 'ColumnView'
- #model: #selectionHolder
- #menu: #menuEdit
- #hasHorizontalScrollBar: true
- #hasVerticalScrollBar: true
- #miniScrollerHorizontal: true
- #useIndex: true
- #sequenceList: #listOfLabels
- )
- #(#ViewSpec
- #name: 'SpecView'
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#ViewSpec
- #name: 'TestView'
- #layout: #(#LayoutFrame 1 0.0 0 0.0 0 1.0 0 1.0)
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#TabViewSpec
- #name: 'TestTabsView'
- #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 0.5)
- )
- )
- )
- )
- #(#SubCanvasSpec
- #name: 'specCanvas'
- #layout: #(#LayoutFrame 1 0.0 0 0.0 0 1.0 -30 1.0)
- #specHolder: #specChannel
- )
- #(#UISubSpecification
- #name: 'subSpec'
- #layout: #(#LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1)
- #majorKey: #ToolApplicationModel
- #minorKey: #windowSpecForCommit
- )
- )
+ #(#SpecCollection
+ #collection: #(
+ #(#ViewSpec
+ #name: 'TestView'
+ #layout: #(#LayoutFrame 1 0.0 0 0.0 0 1.0 0 1.0)
+ #component:
+ #(#SpecCollection
+ #collection: #(
+ #(#TabViewSpec
+ #name: 'TestTabsView'
+ #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 0.5)
)
- #level: -1
+ )
+
)
)
+ #(#SubCanvasSpec
+ #name: 'specCanvas'
+ #layout: #(#LayoutFrame 1 0.0 0 0.0 0 1.0 -30 1.0)
+ #specHolder: #specChannel
+ )
+ #(#UISubSpecification
+ #name: 'subSpec'
+ #layout: #(#LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1)
+ #majorKey: #ToolApplicationModel
+ #minorKey: #windowSpecForCommit
+ )
+ )
+
)
- #handles: #(#Any 0.259875 1.0)
- )
- #(#UISubSpecification
- #name: 'infoBarSubSpec'
- #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
- #majorKey: #ToolApplicationModel
- #minorKey: #windowSpecForInfoBar
- )
+ )
+ )
+
)
- )
+ )
+ #(#UISubSpecification
+ #name: 'infoBarSubSpec'
+ #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
+ #majorKey: #ToolApplicationModel
+ #minorKey: #windowSpecForInfoBar
+ )
+ )
+
+ )
)
! !
@@ -739,12 +739,8 @@
listOfLabels
"returns a holder which keeps the list of tab labels
"
- |list|
- (list := builder bindingAt:#listOfLabels) isNil ifTrue:[
- builder aspectAt:#listOfLabels put:(list := List new).
- ].
- ^ list
+ ^ builder listAspectFor:#listOfLabels
!
selectionHolder