VDBTabbingContainer.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 01 Jun 2017 12:23:04 +0100
changeset 40 d766d4c854a2
parent 21 80ad6d72b260
child 49 2ec7f7ed9242
permissions -rw-r--r--
Cleanup in debugger and inferior console applications to catch up changes in `jv:libgdbs` Recent `jv:libgdbs` spawns GDB on a PTY and opening MI channel on another, debugger console has no need to emulate history, command completion and all that stuff. This is now handled by GDB itself.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'jv:vdb' }"
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
40
d766d4c854a2 Cleanup in debugger and inferior console applications to catch up changes in `jv:libgdbs`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 21
diff changeset
     3
"{ NameSpace: Smalltalk }"
d766d4c854a2 Cleanup in debugger and inferior console applications to catch up changes in `jv:libgdbs`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 21
diff changeset
     4
1
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
VDBAbstractContainer subclass:#VDBTabbingContainer
5
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
     6
	instanceVariableNames:'tabSelectionIndexHolder tabSelectionViewHolder'
1
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'VDB-UI-Containers'
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
21
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
    12
1
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!VDBTabbingContainer class methodsFor:'interface specs'!
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
windowSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
    "This resource specification was automatically generated
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
     by the UIPainter of ST/X."
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    "Do not manually edit this!! If it is corrupted,
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
     the UIPainter may not be able to read the specification."
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
    "
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
     UIPainter new openOnClass:VDBTabbingContainer andSelector:#windowSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
     VDBTabbingContainer new openInterface:#windowSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
     VDBTabbingContainer open
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    "
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    <resource: #canvas>
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    ^ 
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
    #(FullSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
       name: windowSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
       window: 
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
      (WindowSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
         label: 'Tabbed Dock'
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
         name: 'Tabbed Dock'
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
         min: (Point 10 10)
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
         bounds: (Rectangle 0 0 733 447)
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
       )
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
       component: 
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
      (SpecCollection
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
         collection: (
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
          (NoteBookViewSpec
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
             name: 'Tabs'
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
             layout: (LayoutFrame 0 0 0 0 0 1 0 1)
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
             model: tabSelectionIndexHolder
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
             menu: tabLabelList
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
             useIndex: true
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
             canvas: tabSelectionViewHolder
5
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    50
             keepCanvasAlive: true
1
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
           )
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
          )
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
        
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
       )
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
     )
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
! !
09b3ef5606e7 Added simple event log application. Initial stub for application containers (docking panels)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
5
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    58
!VDBTabbingContainer class methodsFor:'plugIn spec'!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    59
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    60
aspectSelectors
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    61
    "This resource specification was automatically generated
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    62
     by the UIPainter of ST/X."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    63
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    64
    "Do not manually edit this. If it is corrupted,
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    65
     the UIPainter may not be able to read the specification."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    66
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    67
    "Return a description of exported aspects;
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    68
     these can be connected to aspects of an embedding application
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    69
     (if this app is embedded in a subCanvas)."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    70
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    71
    ^ #(
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    72
        #debuggerHolder
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    73
      ).
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    74
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    75
! !
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    76
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    77
!VDBTabbingContainer methodsFor:'aspects'!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    78
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    79
tabLabelList
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    80
    <resource: #uiAspect>
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    81
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    82
    ^ labels
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    83
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    84
    "Modified: / 10-06-2014 / 17:00:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    85
!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    86
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    87
tabSelectionIndexHolder
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    88
    "return/create the 'tabSelectionIndexHolder' value holder (automatically generated)"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    89
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    90
    tabSelectionIndexHolder isNil ifTrue:[
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    91
        tabSelectionIndexHolder := ValueHolder new.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    92
        tabSelectionIndexHolder addDependent:self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    93
    ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    94
    ^ tabSelectionIndexHolder
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    95
!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    96
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    97
tabSelectionViewHolder
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    98
    <resource: #uiAspect>
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    99
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   100
    "automatically generated by UIPainter ..."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   101
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   102
    "*** the code below creates a default model when invoked."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   103
    "*** (which may not be the one you wanted)"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   104
    "*** Please change as required and accept it in the browser."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   105
    "*** (and replace this comment by something more useful ;-)"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   106
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   107
    tabSelectionViewHolder isNil ifTrue:[
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   108
        tabSelectionViewHolder := ValueHolder new.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   109
"/ if your app needs to be notified of changes, uncomment one of the lines below:
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   110
"/       tabSelectionViewHolder addDependent:self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   111
"/       tabSelectionViewHolder onChangeSend:#tabSelectionViewHolderChanged to:self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   112
    ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   113
    ^ tabSelectionViewHolder.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   114
! !
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   115
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   116
!VDBTabbingContainer methodsFor:'change & update'!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   117
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   118
update:aspect with:param from:changedObject
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   119
    "Invoked when an object that I depend upon sends a change notification."
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   120
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   121
    "stub code automatically generated - please change as required"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   122
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   123
    changedObject == components ifTrue:[
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   124
        self tabSelectionIndexHolder value isNil ifTrue:[ 
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   125
            components notEmpty ifTrue:[ 
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   126
                self tabSelectionIndexHolder value: 1.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   127
            ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   128
        ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   129
        ^ self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   130
    ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   131
    changedObject == tabSelectionIndexHolder ifTrue:[            
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   132
        | i v |
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   133
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   134
        components notEmpty ifTrue:[ 
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   135
            i := self tabSelectionIndexHolder value ? 0.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   136
            i := i max: 1.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   137
            i := i min: components size.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   138
            v := components at: i.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   139
        ] ifFalse:[ 
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   140
            v := nil.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   141
        ].
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   142
        self tabSelectionViewHolder value: v.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   143
        ^ self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   144
    ].   
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   145
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   146
    super update:aspect with:param from:changedObject
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   147
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   148
    "Created: / 10-06-2014 / 15:53:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   149
    "Modified (format): / 10-06-2014 / 17:08:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   150
! !
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   151
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   152
!VDBTabbingContainer methodsFor:'initialization & release'!
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   153
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   154
initialize
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   155
    super initialize.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   156
    components addDependent: self.
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   157
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   158
    "Created: / 10-06-2014 / 17:01:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   159
! !
fac6e83fd5c0 Implemented VDBTabbingContainer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
   160
21
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   161
!VDBTabbingContainer class methodsFor:'documentation'!
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   162
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   163
version_HG
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   164
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   165
    ^ '$Changeset: <not expanded> $'
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   166
! !
80ad6d72b260 Added stx:libtool to prerequisites
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   167