SVN__Browser.st
author convert-repo
Tue, 09 Aug 2016 03:35:30 +0000
changeset 1178 3a6dad9479fd
parent 825 c38783bf0e2f
permissions -rw-r--r--
update tags
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     1
"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     2
 Copyright (c) 2007-2010 Jan Vrany
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     3
 Copyright (c) 2009-2010 eXept Software AG
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     4
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     5
 Permission is hereby granted, free of charge, to any person
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     6
 obtaining a copy of this software and associated documentation
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     7
 files (the 'Software'), to deal in the Software without
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     8
 restriction, including without limitation the rights to use,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
     9
 copy, modify, merge, publish, distribute, sublicense, and/or sell
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    10
 copies of the Software, and to permit persons to whom the
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    11
 Software is furnished to do so, subject to the following
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    12
 conditions:
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    13
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    14
 The above copyright notice and this permission notice shall be
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    15
 included in all copies or substantial portions of the Software.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    16
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    17
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    18
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    19
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    20
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    21
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    22
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    23
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    24
 OTHER DEALINGS IN THE SOFTWARE.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    25
"
388
ac9feca818d0 *** empty log message ***
fm
parents: 267
diff changeset
    26
"{ Package: 'stx:libsvn' }"
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    27
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    28
"{ NameSpace: SVN }"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    29
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    30
ApplicationModel subclass:#Browser
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    31
	instanceVariableNames:'modelHolder selectionHolder singleSelectionHolder listHolder'
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    32
	classVariableNames:''
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    33
	poolDictionaries:''
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    34
	category:'SVN-UI-Browsers'
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    35
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    36
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    37
!Browser class methodsFor:'documentation'!
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    38
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    39
copyright
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    40
"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    41
 Copyright (c) 2007-2010 Jan Vrany
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    42
 Copyright (c) 2009-2010 eXept Software AG
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    43
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    44
 Permission is hereby granted, free of charge, to any person
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    45
 obtaining a copy of this software and associated documentation
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    46
 files (the 'Software'), to deal in the Software without
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    47
 restriction, including without limitation the rights to use,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    48
 copy, modify, merge, publish, distribute, sublicense, and/or sell
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    49
 copies of the Software, and to permit persons to whom the
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    50
 Software is furnished to do so, subject to the following
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    51
 conditions:
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    52
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    53
 The above copyright notice and this permission notice shall be
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    54
 included in all copies or substantial portions of the Software.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    55
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    56
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    57
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    58
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    59
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    60
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    61
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    62
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    63
 OTHER DEALINGS IN THE SOFTWARE.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    64
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    65
"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    66
! !
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    67
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    68
!Browser class methodsFor:'instance creation'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    69
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    70
on: aWorkingCopy
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    71
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    72
    ^self new 
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    73
        model: aWorkingCopy;
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    74
        yourself
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    75
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    76
    "Created: / 14-04-2008 / 11:09:20 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    77
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    78
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    79
!Browser class methodsFor:'interface opening'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    80
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    81
openOn: aWorkingCopy
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    82
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    83
    ^(self on: aWorkingCopy) open
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    84
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    85
    "Created: / 14-04-2008 / 11:09:18 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    86
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    87
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    88
!Browser class methodsFor:'others'!
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    89
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    90
version_CVS
825
c38783bf0e2f checkin to get version methods correct
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 729
diff changeset
    91
    ^ '$Header$'
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    92
! !
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
    93
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    94
!Browser class methodsFor:'plugIn spec'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    95
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    96
aspectSelectors
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    97
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    98
    ^ #(
f91fd96ae238 initial checkin
fm
parents:
diff changeset
    99
        #model
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   100
      ).
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   101
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   102
    "Created: / 12-04-2008 / 21:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   103
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   104
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   105
!Browser methodsFor:'accessing'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   106
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   107
model
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   108
    ^self modelHolder value
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   109
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   110
    "Modified: / 20-04-2005 / 18:59:28 / janfrog"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   111
    "Created: / 12-04-2008 / 21:01:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   112
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   113
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   114
model:aModel
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   115
    self modelHolder subjectChannel:aModel
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   116
    "aModel isValueModel 
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   117
        ifTrue:[self modelHolder subjectChannel:aModel]
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   118
        ifFalse:[self modelHolder subject:aModel]."
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   119
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   120
    "Modified: / 20-04-2005 / 18:59:28 / janfrog"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   121
    "Created: / 12-04-2008 / 21:01:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   122
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   123
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   124
selection
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   125
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   126
    ^self selectionHolder value
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   127
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   128
    "Created: / 22-10-2008 / 11:30:03 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   129
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   130
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   131
selection: selection
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   132
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   133
    ^self selectionHolder value: selection
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   134
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   135
    "Created: / 22-10-2008 / 11:30:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   136
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   137
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   138
!Browser methodsFor:'accessing - selection'!
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   139
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   140
theSingleSelectedObject
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   141
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   142
    | sel selSize obj |
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   143
    sel := self selection.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   144
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   145
    (sel isCollection and:[self isString not])
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   146
        ifFalse:[^sel].
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   147
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   148
    selSize := 0.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   149
    obj := nil.        
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   150
    sel do:
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   151
        [:each|
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   152
        selSize := selSize + 1.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   153
        selSize > 1 ifTrue:[^nil].
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   154
        obj := each].
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   155
    ^obj
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   156
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   157
    "Created: / 10-11-2009 / 11:12:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   158
    "Modified: / 20-11-2009 / 19:54:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   159
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   160
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   161
!Browser methodsFor:'aspects'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   162
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   163
hasSelectionHolder
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   164
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   165
    |holder|
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   166
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   167
    (holder := builder bindingAt:#hasSelectionHolder) isNil ifTrue:[
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   168
        holder := (AspectAdaptor forAspect: #notEmptyOrNil)
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   169
            subjectChannel: self selectionHolder.
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   170
        builder aspectAt:#hasSelectionHolder put: holder
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   171
    ].
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   172
    ^ holder.
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   173
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   174
    "Created: / 22-10-2008 / 11:34:36 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   175
    "Modified: / 22-10-2008 / 12:38:47 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   176
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   177
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   178
listHolder
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   179
    "return/create the 'listHolder' value holder (automatically generated)"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   180
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   181
    listHolder isNil ifTrue:[
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   182
        listHolder := ValueHolder new.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   183
    ].
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   184
    ^ listHolder
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   185
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   186
    "Modified: / 01-11-2009 / 16:57:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   187
!
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   188
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   189
modelHolder
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   190
    ^modelHolder ifNil:[
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   191
        modelHolder := (AspectAdaptor subjectChannel:nil)
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   192
                            forAspect:#value
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   193
    ]
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   194
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   195
    "Modified: / 20-04-2005 / 18:59:28 / janfrog"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   196
    "Created: / 12-04-2008 / 21:01:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   197
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   198
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   199
selectionHolder
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   200
    "return/create the 'selectionHolder' value holder (automatically generated)"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   201
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   202
    selectionHolder isNil ifTrue:[
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   203
        selectionHolder := ValueHolder new.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   204
        selectionHolder addDependent:self.
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   205
    ].
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   206
    ^ selectionHolder
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   207
!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   208
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   209
singleSelectionHolder
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   210
    "return/create the 'singleSelectionHolder' value holder (automatically generated)"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   211
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   212
    singleSelectionHolder isNil ifTrue:[
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   213
        singleSelectionHolder := ValueHolder new.
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   214
    ].
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   215
    ^ singleSelectionHolder
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   216
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   217
    "Modified: / 10-11-2009 / 11:09:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   218
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   219
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   220
!Browser methodsFor:'change & update'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   221
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   222
selectionChanged
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   223
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   224
    self singleSelectionHolder value: 
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   225
        self theSingleSelectedObject
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   226
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   227
    "Created: / 22-10-2008 / 11:29:24 / Jan Vrany <vranyj1@fel.cvut.cz>"
729
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   228
    "Modified: / 10-11-2009 / 11:13:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   229
!
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   230
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   231
update: aspect with: param from: sender
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   232
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   233
    sender == selectionHolder ifTrue:[^self selectionChanged].
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   234
    ^super update: aspect with: param from: sender
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   235
4c66faaea16d Updates from SVN
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 388
diff changeset
   236
    "Created: / 10-11-2009 / 11:10:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   237
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   238
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   239
!Browser methodsFor:'initialization'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   240
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   241
initialize
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   242
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   243
    super initialize.
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   244
    self createBuilder
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   245
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   246
    "Created: / 22-10-2008 / 12:37:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   247
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   248
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   249
!Browser methodsFor:'queries'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   250
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   251
hasSelection
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   252
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   253
    ^self selection notEmptyOrNil
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   254
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   255
    "Created: / 22-10-2008 / 12:23:29 / Jan Vrany <vranyj1@fel.cvut.cz>"
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   256
! !
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   257
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   258
!Browser class methodsFor:'documentation'!
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   259
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   260
version
825
c38783bf0e2f checkin to get version methods correct
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 729
diff changeset
   261
    ^ '$Header$'
132
2c0026d2b2bb changed: #version_SVN
fm
parents: 2
diff changeset
   262
!
2c0026d2b2bb changed: #version_SVN
fm
parents: 2
diff changeset
   263
2c0026d2b2bb changed: #version_SVN
fm
parents: 2
diff changeset
   264
version_SVN
825
c38783bf0e2f checkin to get version methods correct
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 729
diff changeset
   265
    ^ '§Id: SVN__Browser.st 363 2011-08-08 13:49:48Z vranyj1 §'
2
f91fd96ae238 initial checkin
fm
parents:
diff changeset
   266
! !