Bookmark.st
author Claus Gittinger <cg@exept.de>
Sun, 29 Jul 2018 10:17:00 +0200
changeset 18304 dad155db87ee
parent 18231 770f94b6fab7
child 18310 457667391df2
permissions -rw-r--r--
#REFACTORING by cg class: Bookmark removed: #basicRemoveFromIndex:toIndex: duplicate code
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
10083
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     2
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group, Czech Technical University in Prague
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     3
 Copyright (c) 2009-2010 eXept Software AG
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
10083
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     5
 Permission is hereby granted, free of charge, to any person
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     6
 obtaining a copy of this software and associated documentation
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     7
 files (the 'Software'), to deal in the Software without
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     8
 restriction, including without limitation the rights to use,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
     9
 copy, modify, merge, publish, distribute, sublicense, and/or sell
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    10
 copies of the Software, and to permit persons to whom the
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    11
 Software is furnished to do so, subject to the following
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    12
 conditions:
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    13
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    14
 The above copyright notice and this permission notice shall be
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    15
 included in all copies or substantial portions of the Software.
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    16
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    17
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    18
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    19
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    20
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    21
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    22
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    23
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    24
 OTHER DEALINGS IN THE SOFTWARE.
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
"{ Package: 'stx:libtool' }"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
15226
06b35a514960 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 14181
diff changeset
    28
"{ NameSpace: Smalltalk }"
06b35a514960 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 14181
diff changeset
    29
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
HierarchicalItem subclass:#Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
	instanceVariableNames:'label icon'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	category:'Interface-Bookmarks'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
Bookmark subclass:#Class
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
	instanceVariableNames:'className'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
Bookmark subclass:#File
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
	instanceVariableNames:'path'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
Bookmark subclass:#Folder
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
	instanceVariableNames:'name'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
Bookmark subclass:#Method
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
	instanceVariableNames:'className selector'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
Bookmark::Folder subclass:#Recent
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
	instanceVariableNames:'limit'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
Bookmark subclass:#Separator
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
	instanceVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
Bookmark subclass:#URL
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
	instanceVariableNames:'url'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
	classVariableNames:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
	poolDictionaries:''
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
	privateIn:Bookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
!Bookmark class methodsFor:'documentation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
copyright
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
"
10083
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    90
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group, Czech Technical University in Prague
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    91
 Copyright (c) 2009-2010 eXept Software AG
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    92
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    93
 Permission is hereby granted, free of charge, to any person
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    94
 obtaining a copy of this software and associated documentation
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    95
 files (the 'Software'), to deal in the Software without
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    96
 restriction, including without limitation the rights to use,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    97
 copy, modify, merge, publish, distribute, sublicense, and/or sell
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    98
 copies of the Software, and to permit persons to whom the
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
    99
 Software is furnished to do so, subject to the following
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   100
 conditions:
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
10083
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   102
 The above copyright notice and this permission notice shall be
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   103
 included in all copies or substantial portions of the Software.
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   104
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   105
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   106
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   107
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   108
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   109
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   110
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   111
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
005624cd8065 copyright
Claus Gittinger <cg@exept.de>
parents: 9975
diff changeset
   112
 OTHER DEALINGS IN THE SOFTWARE.
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
!Bookmark class methodsFor:'instance creation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
forClass: aClass
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
    ^Bookmark::Class new className: aClass name
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
        Bookmark forClass: Collection
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
    "Created: / 05-05-2011 / 23:05:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    "Modified: / 23-05-2011 / 13:51:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
forClass: class selector: selector
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
    ^Bookmark::Method new className: class name selector: selector
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
        Bookmark forMethod: Bookmark class >> #forMethod:
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
    "Created: / 02-06-2011 / 23:21:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
forFile: aStringOrFilename
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
    ^Bookmark::File new path: aStringOrFilename asString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
        Bookmark forFile: '/etc/passwd'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
    "Created: / 20-06-2011 / 22:07:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
forFolderNamed: aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    ^Bookmark::Folder new name: aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
        Bookmark forClass: Collection
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
    "Created: / 23-05-2011 / 10:02:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
forMethod: aMethod
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
    ^Bookmark::Method new className: aMethod mclass name selector: aMethod selector
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
        Bookmark forMethod: Bookmark class >> #forMethod:
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
    "Created: / 05-05-2011 / 23:05:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    "Modified: / 23-05-2011 / 13:49:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
forRecent
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    ^Bookmark::Recent new
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
        Bookmark forRecent
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "Created: / 03-06-2011 / 10:50:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
forUrl: url label: label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    ^Bookmark::URL new url: url; label: label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
        Bookmark forClass: Collection
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
    "Created: / 08-06-2011 / 12:44:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
separator
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    ^Bookmark::Separator new
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
        Bookmark forRecent
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
    "Created: / 03-06-2011 / 13:39:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
!Bookmark methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
/ label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
    self do:[:e|e label = label ifTrue:[^e]].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
    self error:'No child with label ''' , label , ''''.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
    "Created: / 21-06-2011 / 08:49:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
17885
dc02440d1c88 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16785
diff changeset
   218
helpText
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   219
    ^ nil
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   220
!
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   221
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
icon
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
    "superclass BookmarkEntry says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
    
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   225
    icon isNil ifTrue:[ self initializeIcon ].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
    ^ icon
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    "Created: / 05-05-2011 / 22:52:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   229
    "Modified: / 18-11-2011 / 14:30:44 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
    "superclass BookmarkEntry says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
    
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   235
    label isNil ifTrue:[ self initializeLabel ].
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   236
    ^label isNil 
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   237
        ifTrue:[ self defaultLabel ]
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   238
        ifFalse: [ label ].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
    "Created: / 05-05-2011 / 22:56:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    "Modified: / 02-06-2011 / 11:56:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   242
    "Modified (format): / 18-11-2011 / 14:31:05 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   245
label:aStringOrText
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
    label := aStringOrText.
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   248
    self model changed:#label with:self
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    "Created: / 02-06-2011 / 23:13:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
    "Modified: / 03-06-2011 / 10:46:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   252
    "Modified (format): / 20-06-2018 / 12:44:02 / Claus Gittinger"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   255
!Bookmark methodsFor:'accessing-defaults'!
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
defaultLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    self subclassResponsibility
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
    "Created: / 02-06-2011 / 11:56:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
!Bookmark methodsFor:'basic adding & removing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
basicAddAll:aList beforeIndex:anIndex
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
    aList do:[:each|each parent: self].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
    ^super basicAddAll:aList beforeIndex:anIndex
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
    "Created: / 23-05-2011 / 14:10:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
!Bookmark methodsFor:'change & update'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   275
changed:aspect with:param
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
    | model |
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   278
    super changed:aspect with:param.
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   279
    (model := self model) notNil ifTrue:[
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   280
        model changed:aspect with:param
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   281
    ].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
    "Created: / 23-05-2011 / 16:22:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   284
    "Modified (format): / 20-06-2018 / 12:43:54 / Claus Gittinger"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
!Bookmark methodsFor:'converting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
asMenu
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
10280
1c165456a02b changed:
Claus Gittinger <cg@exept.de>
parents: 10260
diff changeset
   291
    ^self asMenuUsingBuilder: BookmarkToolbarMenuBuilder new
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
    "Created: / 23-05-2011 / 10:32:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
    "Modified: / 21-06-2011 / 08:05:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10280
1c165456a02b changed:
Claus Gittinger <cg@exept.de>
parents: 10260
diff changeset
   295
    "Modified: / 08-07-2011 / 11:38:21 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
10280
1c165456a02b changed:
Claus Gittinger <cg@exept.de>
parents: 10260
diff changeset
   298
asMenuUsingBuilder: builder
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
10280
1c165456a02b changed:
Claus Gittinger <cg@exept.de>
parents: 10260
diff changeset
   300
    ^builder buildMenuFor: self
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
    "Created: / 21-06-2011 / 08:04:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10280
1c165456a02b changed:
Claus Gittinger <cg@exept.de>
parents: 10260
diff changeset
   303
    "Modified (format): / 08-07-2011 / 11:37:19 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
!Bookmark methodsFor:'encoding & decoding'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
skippedInLiteralEncoding
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
    ^#(parent isExpanded height width icon)
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
    "Created: / 05-05-2011 / 23:08:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
    "Modified: / 02-06-2011 / 22:56:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
!Bookmark methodsFor:'navigation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
switchToBookmarkIn: application
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
    application switchToBookmarkEntry: application
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
    "Created: / 05-05-2011 / 23:47:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
!Bookmark methodsFor:'printing & storing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
printOn:aStream
16785
c37c8f5a6ddd #OTHER by mawalch
mawalch
parents: 16040
diff changeset
   328
    "append a printed representation of the receiver to the argument, aStream"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
    aStream nextPutAll:'BKM['.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    self label printOn: aStream.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    aStream nextPut: $]
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
    "Modified: / 02-06-2011 / 11:08:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
!Bookmark methodsFor:'private'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
initializeIcon
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
    "Created: / 05-05-2011 / 22:57:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
initializeLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
    label := '--------'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
    "Created: / 05-05-2011 / 22:56:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
    "Modified: / 03-06-2011 / 13:45:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
!Bookmark methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
isClassBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
    "Created: / 05-05-2011 / 23:44:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
isFileBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
    "Created: / 20-06-2011 / 23:40:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
isFolderBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
    "Created: / 23-05-2011 / 09:59:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
isMethodBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
    "Created: / 05-05-2011 / 23:44:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
isRecentBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
    "Created: / 03-06-2011 / 10:50:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
isURLBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
    "Created: / 20-06-2011 / 23:40:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
!Bookmark::Class methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
className
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
    ^className
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
    "Created: / 05-05-2011 / 23:55:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
    "Modified: / 23-05-2011 / 13:36:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
10260
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   405
className: aString
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   406
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    className := aString.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
10260
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   409
    (className endsWith: ' class') ifTrue:[
10827
8b246c32e0d6 Fix for bookamarking class side
vrany
parents: 10280
diff changeset
   410
        className := className copyTo: (className size - 6)"/ ' class' size - 1
10260
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   411
    ].
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   412
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   413
    className := className asSymbol.
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   414
10827
8b246c32e0d6 Fix for bookamarking class side
vrany
parents: 10280
diff changeset
   415
    "Modified: / 18-10-2011 / 13:33:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   416
!
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   417
17885
dc02440d1c88 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16785
diff changeset
   418
helpText
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   419
    ^ 'Goto ',className
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   422
!Bookmark::Class methodsFor:'accessing-defaults'!
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
defaultLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
    "superclass Bookmark says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
    ^ 'Some Class...'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
    "Modified: / 02-06-2011 / 11:59:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
!Bookmark::Class methodsFor:'comparing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
= another
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    ^(self class = another class) 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
        and:[className = another className]
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
    "Created: / 05-05-2011 / 23:33:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
    "Modified: / 23-05-2011 / 13:59:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
hash
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
    ^className hash bitXor: self class hash
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
    "Created: / 05-05-2011 / 23:32:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
    "Modified: / 23-05-2011 / 13:59:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
!Bookmark::Class methodsFor:'navigation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
switchToBookmarkIn: application
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
13869
779d30d584aa merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 10910
diff changeset
   455
    application switchToClass: (Smalltalk at: className asSymbol) selector: nil updateHistory: true
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
    "Created: / 05-05-2011 / 23:49:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13869
779d30d584aa merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 10910
diff changeset
   458
    "Modified: / 06-04-2012 / 10:59:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
!Bookmark::Class methodsFor:'private'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
initializeIcon
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
    | cls |
10260
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   466
    cls :=  Smalltalk at: className asSymbol.
10910
Claus Gittinger <cg@exept.de>
parents: 10866
diff changeset
   467
    cls notNil ifTrue:[icon := SystemBrowser iconForClass: cls].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
    "Created: / 05-05-2011 / 23:01:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10260
e9f7fdd41d3d Merged with JV's branch
vrany
parents: 10116
diff changeset
   470
    "Modified: / 30-06-2011 / 19:10:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10910
Claus Gittinger <cg@exept.de>
parents: 10866
diff changeset
   471
    "Modified: / 29-11-2011 / 11:20:52 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
initializeLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   476
    className isNil ifTrue:[^self].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
    label := className copyFrom: (className lastIndexOf: $:) + 1
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
    "Created: / 05-05-2011 / 23:03:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
    "Modified: / 02-06-2011 / 11:57:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   482
    "Modified: / 18-11-2011 / 14:31:11 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
!Bookmark::Class methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
isClassBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
    "Created: / 05-05-2011 / 23:44:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
!Bookmark::Class methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
    ^ aVisitor visitClass:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
!Bookmark::File methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
17885
dc02440d1c88 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16785
diff changeset
   507
helpText
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   508
    ^ 'Goto "', path , '"'
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   509
!
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   510
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
initializeLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
    label := path asFilename baseName
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
    "Created: / 20-06-2011 / 22:09:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
path
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
    ^ path
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
path:something
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
    path := something.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   526
!Bookmark::File methodsFor:'accessing-defaults'!
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
defaultLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
    "superclass Bookmark says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
    ^ 'Some file...'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
    "Modified: / 20-06-2011 / 22:08:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
!Bookmark::File methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
isFileBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
    "Created: / 20-06-2011 / 23:40:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
!Bookmark::File methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
    ^ aVisitor visitFile:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
!Bookmark::Folder methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
initializeIcon
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   559
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
    ^ icon := ToolbarIconLibrary directoryOpen22x24Icon1
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
    "Created: / 02-06-2011 / 12:10:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
initializeLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
    "superclass Bookmark says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
    ^ label := self name
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
    "Created: / 23-05-2011 / 14:08:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
    "Modified: / 02-06-2011 / 11:52:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
    ^self name
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
    "Created: / 02-06-2011 / 11:51:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
label: aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
    self name: aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
    "Created: / 03-06-2011 / 10:45:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
name
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
    ^name ? 'New Folder...'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
    "Created: / 23-05-2011 / 10:02:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
    "Modified: / 02-06-2011 / 11:52:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   597
name:aString
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
    name := aString.
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   600
    self model changed:#label with:self
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
    "Created: / 23-05-2011 / 10:02:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
    "Modified: / 03-06-2011 / 10:46:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
18231
770f94b6fab7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17885
diff changeset
   604
    "Modified (format): / 20-06-2018 / 12:44:10 / Claus Gittinger"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   607
!Bookmark::Folder methodsFor:'accessing-defaults'!
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
defaultLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
    "superclass Bookmark says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
    ^ 'New Folder...'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
    "Modified: / 02-06-2011 / 11:58:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
!Bookmark::Folder methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
isFolderBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
    "Created: / 23-05-2011 / 10:00:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
!Bookmark::Folder methodsFor:'utilities'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
moveDown: child
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
    | index |
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
    index := children identityIndexOf: child.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   632
    index = children size ifTrue:[^self].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   633
    self removeIndex: index.  
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
    self add: child afterIndex: index.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
    "Created: / 02-06-2011 / 11:04:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
moveIn: child
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   641
    | index folder |
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   642
    index := children identityIndexOf: child.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
    index = children size ifTrue:[^self].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
    folder := children at: index + 1.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
    folder isFolderBookmark ifFalse:[^self].        
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
    self removeIndex: index. 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
    folder addFirst: child
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
    "Created: / 03-06-2011 / 10:30:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
moveOut: child
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
    | index myindex |
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   655
    self parent isNil ifTrue:[^self].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
    index := children identityIndexOf: child.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
    myindex := self parent children identityIndexOf: self.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
    self removeIndex: index. 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
    self parent add: child afterIndex: myindex.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
    "Created: / 03-06-2011 / 10:32:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   662
    "Modified: / 18-11-2011 / 14:31:15 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   665
moveUp: child
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
    | index |
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
    index := children identityIndexOf: child.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    index = 1 ifTrue:[^self].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   670
    self removeIndex: index. 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   671
    self add: child beforeIndex: index - 1.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   672
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
    "Created: / 02-06-2011 / 11:04:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
14181
caed101a1990 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 13869
diff changeset
   674
!
caed101a1990 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 13869
diff changeset
   675
caed101a1990 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 13869
diff changeset
   676
sortChildrenAlphabetically
caed101a1990 class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 13869
diff changeset
   677
    self sort:[:a :b | a label < b label].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   678
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   680
!Bookmark::Folder methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   681
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   682
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
    ^ aVisitor visitFolder:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
!Bookmark::Method methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
className
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   695
    ^className
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   697
    "Created: / 05-05-2011 / 23:55:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   698
    "Modified: / 23-05-2011 / 13:36:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   699
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   700
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
className:aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
    className := aString.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   704
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   705
className:classNameArg selector:selectorArg 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   706
    className := classNameArg.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
    selector := selectorArg.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
17885
dc02440d1c88 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16785
diff changeset
   710
helpText
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   711
    ^ className,' >> ',selector
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   712
!
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   713
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
selector
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
    ^ selector
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
selector: aSymbol
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   720
    selector := aSymbol
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   722
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   723
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   724
!Bookmark::Method methodsFor:'accessing-defaults'!
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   725
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   726
defaultLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   727
    "superclass Bookmark says that I am responsible to implement this method"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   728
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   729
    ^ 'Some Method...'
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   730
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
    "Modified: / 02-06-2011 / 11:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   732
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   733
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
!Bookmark::Method methodsFor:'navigation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
switchToBookmarkIn: application
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
    application 
10116
29988c516594 classnamed
Claus Gittinger <cg@exept.de>
parents: 10083
diff changeset
   739
        switchToClass: (Smalltalk classNamed: className) 
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   740
        selector: selector 
13869
779d30d584aa merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 10910
diff changeset
   741
        updateHistory: true
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
    "Created: / 05-05-2011 / 23:49:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10116
29988c516594 classnamed
Claus Gittinger <cg@exept.de>
parents: 10083
diff changeset
   744
    "Modified: / 03-07-2011 / 23:11:03 / cg"
13869
779d30d584aa merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 10910
diff changeset
   745
    "Modified: / 06-04-2012 / 10:59:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   747
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   748
!Bookmark::Method methodsFor:'private'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   749
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   750
initializeLabel
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   751
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   752
    className isNil ifTrue:[^self].
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   753
    selector  isNil ifTrue:[^self].
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   754
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   755
    label :=
16036
e54e7476bf29 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15340
diff changeset
   756
        (className copyFrom: ((className lastIndexOf: $:) + 1)) allBold ,
18304
dad155db87ee #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 18231
diff changeset
   757
        ' » ' , (selector "asText allItalic")
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   759
    "Created: / 05-05-2011 / 23:04:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   760
    "Modified: / 02-06-2011 / 22:00:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10866
Claus Gittinger <cg@exept.de>
parents: 10827
diff changeset
   761
    "Modified: / 18-11-2011 / 14:31:19 / cg"
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   762
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   763
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
!Bookmark::Method methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   766
isMethodBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   770
    "Created: / 05-05-2011 / 23:44:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   771
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   772
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   773
!Bookmark::Method methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   774
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   775
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   776
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   777
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   778
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   779
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
    ^ aVisitor visitMethod:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   784
!Bookmark::Recent methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   785
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   786
limit
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   787
    ^ limit ? 15
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   788
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
    "Modified: / 03-06-2011 / 10:51:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
limit:something
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
    limit := something.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   795
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
!Bookmark::Recent methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   798
isFolderBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
    ^false
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
    "Created: / 03-06-2011 / 10:51:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
isRecentBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
    "Created: / 03-06-2011 / 10:51:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   810
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   811
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   812
!Bookmark::Recent methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   813
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   814
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   815
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   816
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   817
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   818
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   819
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   820
    ^ aVisitor visitRecent:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   821
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   822
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   823
!Bookmark::Separator methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   824
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   825
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   826
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   827
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   828
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   829
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   830
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   831
    ^ aVisitor visitSeparator:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   834
!Bookmark::URL methodsFor:'accessing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   835
17885
dc02440d1c88 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16785
diff changeset
   836
helpText
15340
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   837
    ^ 'Goto "', url asString , '"'
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   838
!
67f85f29c83d class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15228
diff changeset
   839
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
url
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   841
    ^ url
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   842
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   843
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   844
url:aString
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   845
    url := aString.
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   846
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
!Bookmark::URL methodsFor:'comparing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   849
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   850
= another
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   851
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   852
    ^(self class = another class) 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   853
        and:[label = another label
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   854
            and:[url = another url]].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   855
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   856
    "Created: / 08-06-2011 / 15:11:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   857
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   858
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   859
hash
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   860
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   861
    ^label asString hash bitXor:[url hash].
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
    "Created: / 08-06-2011 / 15:10:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   865
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   866
!Bookmark::URL methodsFor:'testing'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   867
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   868
isURLBookmark
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   869
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   870
    ^true
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   871
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   872
    "Created: / 20-06-2011 / 23:40:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   874
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   875
!Bookmark::URL methodsFor:'visiting'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
acceptVisitor:aVisitor 
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
    "Double dispatch back to the visitor, passing my type encoded in
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
     the selector (visitor pattern)"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   880
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   881
    "stub code automatically generated - please change if required"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
    ^ aVisitor visitURL:self
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   884
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   885
    "Modified: / 16-06-2011 / 16:07:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
! !
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
!Bookmark class methodsFor:'documentation'!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   889
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   890
version
16036
e54e7476bf29 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15340
diff changeset
   891
    ^ '$Header$'
15228
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   892
!
622c88376baf class: Bookmark
Claus Gittinger <cg@exept.de>
parents: 15226
diff changeset
   893
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   894
version_CVS
16036
e54e7476bf29 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15340
diff changeset
   895
    ^ '$Header$'
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   896
!
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   897
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   898
version_SVN
16036
e54e7476bf29 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15340
diff changeset
   899
    ^ '$Id$'
9975
1830dd780813 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   900
! !
13869
779d30d584aa merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 10910
diff changeset
   901