BookmarkBar.st
author Claus Gittinger <cg@exept.de>
Mon, 20 Jan 2020 21:02:47 +0100
changeset 19422 c6ca1c3e0fd7
parent 19084 9921dbc44880
permissions -rw-r--r--
#REFACTORING by exept class: MultiViewToolApplication added: #askForFile:default:forSave:thenDo: changed: #askForFile:default:thenDo: #askForFile:thenDo: #menuSaveAllAs #menuSaveAs
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19084
9921dbc44880 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 17918
diff changeset
     1
"{ Encoding: utf8 }"
9921dbc44880 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 17918
diff changeset
     2
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"
10080
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
     4
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group, Czech Technical University in Prague
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
     5
 Copyright (c) 2009-2010 eXept Software AG
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
10080
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
     7
 Permission is hereby granted, free of charge, to any person
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
     8
 obtaining a copy of this software and associated documentation
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
     9
 files (the 'Software'), to deal in the Software without
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    10
 restriction, including without limitation the rights to use,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    11
 copy, modify, merge, publish, distribute, sublicense, and/or sell
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    12
 copies of the Software, and to permit persons to whom the
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    13
 Software is furnished to do so, subject to the following
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    14
 conditions:
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    15
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    16
 The above copyright notice and this permission notice shall be
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    17
 included in all copies or substantial portions of the Software.
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    18
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    19
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    20
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    21
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    22
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    23
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    24
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    25
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    26
 OTHER DEALINGS IN THE SOFTWARE.
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
"{ Package: 'stx:libtool' }"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
    30
"{ NameSpace: Smalltalk }"
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
    31
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
ApplicationModel subclass:#BookmarkBar
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
	instanceVariableNames:'bookmarkHolder bookmarksHolder menuHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
		bookmarkButtonIconHolder hasBookmarkHolder'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
	classVariableNames:''
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
	poolDictionaries:''
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
	category:'Interface-Bookmarks'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!BookmarkBar class methodsFor:'documentation'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
copyright
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
"
10080
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    44
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group, Czech Technical University in Prague
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    45
 Copyright (c) 2009-2010 eXept Software AG
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    46
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    47
 Permission is hereby granted, free of charge, to any person
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    48
 obtaining a copy of this software and associated documentation
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    49
 files (the 'Software'), to deal in the Software without
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    50
 restriction, including without limitation the rights to use,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    51
 copy, modify, merge, publish, distribute, sublicense, and/or sell
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    52
 copies of the Software, and to permit persons to whom the
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    53
 Software is furnished to do so, subject to the following
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    54
 conditions:
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
10080
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    56
 The above copyright notice and this permission notice shall be
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    57
 included in all copies or substantial portions of the Software.
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    58
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    59
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    60
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    61
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    62
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    63
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    64
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    65
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4aeae0bc937d copyright
Claus Gittinger <cg@exept.de>
parents: 9974
diff changeset
    66
 OTHER DEALINGS IN THE SOFTWARE.
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    70
!BookmarkBar class methodsFor:'help specs'!
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    71
17918
a9043f7695ce #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17424
diff changeset
    72
helpSpec
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    73
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    74
     by the UIHelpTool of ST/X."
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    75
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    76
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    77
     the UIHelpTool may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    78
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    79
    "
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    80
     UIHelpTool openOnClass:BookmarkBar    
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    81
    "
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    82
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    83
    <resource: #help>
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    84
17918
a9043f7695ce #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17424
diff changeset
    85
    ^ super helpSpec addPairsFrom:#(
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    86
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    87
#starButton
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    88
'Click for bookmark menu'
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    89
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    90
)
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    91
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    92
    "Created: / 03-07-2011 / 23:09:48 / cg"
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    93
! !
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
    94
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
!BookmarkBar class methodsFor:'interface specs'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
windowSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
    "This resource specification was automatically generated
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
     by the UIPainter of ST/X."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
    "Do not manually edit this!! If it is corrupted,
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
     the UIPainter may not be able to read the specification."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
    "
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
     UIPainter new openOnClass:BookmarkBar andSelector:#windowSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
     BookmarkBar new openInterface:#windowSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
     BookmarkBar open
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    "
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
    <resource: #canvas>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
    ^ 
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
     #(FullSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
        name: windowSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
        window: 
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
       (WindowSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
          label: 'Bookmark bar'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
          name: 'Bookmark bar'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
          min: (Point 10 10)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
          bounds: (Rectangle 0 0 600 25)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
        )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
        component: 
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
       (SpecCollection
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
          collection: (
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
           (MenuPanelSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
              name: 'Bookmarks'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
              layout: (LayoutFrame 0 0 0 0 -40 1 0 1)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
              level: 0
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
              menu: menuHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
              textDefault: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
            )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
           (ActionButtonSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
              name: 'BookmarkButton'
11046
b6146a44fe1f changed: #windowSpec
Claus Gittinger <cg@exept.de>
parents: 11045
diff changeset
   134
              layout: (LayoutFrame -25 1 1 0 0 1 22 0)
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   135
              activeHelpKey: starButton
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
              level: 0
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
              hasCharacterOrientedLabel: false
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
              labelChannel: bookmarkButtonIconHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
              model: bookmarkMenu
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   140
              postBuildCallback: postBuiltStarButton:
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
            )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
           (ActionButtonSpec
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
              label: 'OK'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
              name: 'menu'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
              layout: (LayoutFrame -13 1 0 0 -3 1 0 1)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
              initiallyInvisible: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
              hasCharacterOrientedLabel: false
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
              translateLabel: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
              labelChannel: menuButtonIcon
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
              model: bookmarkMenu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
            )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
           )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
         
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
        )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
      )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
!BookmarkBar class methodsFor:'menu specs'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
bookmarkMenu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
    "This resource specification was automatically generated
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
     by the MenuEditor of ST/X."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    "Do not manually edit this!! If it is corrupted,
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
     the MenuEditor may not be able to read the specification."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    "
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
     MenuEditor new openOnClass:BookmarkBar andSelector:#bookmarkMenu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
     (Menu new fromLiteralArrayEncoding:(BookmarkBar bookmarkMenu)) startUp
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    "
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    <resource: #menu>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
    ^ 
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
     #(Menu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
        (
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
         (MenuItem
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
            label: 'Add'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
            translateLabel: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
            submenuChannel: bookmarkMenuAddSlice
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
            isMenuSlice: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
          )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
         (MenuItem
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
            label: '-'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
          )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
         (MenuItem
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
            label: 'Bookmark Editor'
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
            itemValue: menuOpenBookmarkEditor
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
            translateLabel: true
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
          )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
         )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
        nil
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
        nil
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
      )
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
!BookmarkBar class methodsFor:'plugIn spec'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
aspectSelectors
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    "This resource specification was automatically generated
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
     by the UIPainter of ST/X."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "Do not manually edit this. If it is corrupted,
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
     the UIPainter may not be able to read the specification."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
    "Return a description of exported aspects;
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
     these can be connected to aspects of an embedding application
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
     (if this app is embedded in a subCanvas)."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
    ^ #(
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   211
        #bookmarkHolder
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
        #bookmarksHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
      ).
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
!BookmarkBar methodsFor:'actions'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
bookmark
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
    <resource: #uiCallback>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
    self menuAddBookmark
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
    "Modified: / 02-06-2011 / 21:39:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
bookmarkMenu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    <resource: #uiCallback>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
    |menu|
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
    menu := self class bookmarkMenu decodeAsLiteralArray.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
    menu findGuiResourcesIn:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
    menu startUp
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
    "Modified: / 02-06-2011 / 20:05:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
!BookmarkBar methodsFor:'aspects'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
bookmarkButtonIconHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    <resource: #uiAspect>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
    bookmarkButtonIconHolder isNil ifTrue:[
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   244
        bookmarkButtonIconHolder := ToolbarIconLibrary bookmarks14x14 asValue.
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
    ^ bookmarkButtonIconHolder.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
    "Modified: / 18-05-2011 / 18:22:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   249
    "Modified: / 31-12-2011 / 15:47:13 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
bookmarkHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    "return/create the 'bookmarkHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    bookmarkHolder isNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
        bookmarkHolder := ValueHolder new.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
        bookmarkHolder addDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
    ^ bookmarkHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
bookmarkHolder:something
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
    "set the 'bookmarkHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
    |oldValue newValue|
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
    bookmarkHolder notNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
        oldValue := bookmarkHolder value.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
        bookmarkHolder removeDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
    bookmarkHolder := something.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
    bookmarkHolder notNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
        bookmarkHolder addDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
    newValue := bookmarkHolder value.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
    oldValue ~~ newValue ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
        self update:#value with:newValue from:bookmarkHolder.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
bookmarksHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
    "return/create the 'bookmarksHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
    bookmarksHolder isNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
        bookmarksHolder := ValueHolder new.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
        bookmarksHolder addDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
    ^ bookmarksHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
bookmarksHolder:something
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
    "set the 'bookmarksHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
    |oldValue newValue|
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
    bookmarksHolder notNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
        oldValue := bookmarksHolder value.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
        bookmarksHolder removeDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
    bookmarksHolder := something.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
    bookmarksHolder notNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
        bookmarksHolder addDependent:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
    newValue := bookmarksHolder value.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
    oldValue ~~ newValue ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
        self update:#value with:newValue from:bookmarksHolder.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
hasBookmarkHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    "return/create the 'bookmarkHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
    hasBookmarkHolder isNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
        hasBookmarkHolder := (AspectAdaptor forAspect:#notNil)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
                                subjectChannel: (self bookmarkHolder)
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
    ^ hasBookmarkHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
    "Created: / 08-06-2011 / 12:39:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
menuButtonIcon
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
    <resource: #uiAspect>
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    ^ToolbarIconLibrary sortIndicatorIcon
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
    "Created: / 02-06-2011 / 19:55:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
menuHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    "return/create the 'menuHolder' value holder (automatically generated)"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
    menuHolder isNil ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
        menuHolder := ValueHolder new.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
    ^ menuHolder
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
    "Modified: / 18-05-2011 / 18:57:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
!BookmarkBar methodsFor:'change & update'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
update:something with:aParameter from:changedObject
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
    "Invoked when an object that I depend upon sends a change notification."
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
    changedObject == bookmarksHolder ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
        self updateMenu.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
        ^ self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
    changedObject == bookmarkHolder ifTrue:[
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
        self updateBookmarkButton.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
        ^ self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
    super update:something with:aParameter from:changedObject
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
    "Modified: / 02-06-2011 / 22:47:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
updateBookmarkButton
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
    "Created: / 02-06-2011 / 22:47:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
updateMenu
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
    | menu item |
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    self window isVisible ifFalse:[^self].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
    menu := self bookmarksHolder value asMenu.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
    menu hasItems ifFalse:[
13436
6e2425d9e6d1 class: BookmarkMenuBuilder
Claus Gittinger <cg@exept.de>
parents: 11784
diff changeset
   373
        item := MenuItem 
19084
9921dbc44880 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 17918
diff changeset
   374
                    label: ('No bookmarks yet, click here or on star to add one' allGray)
13436
6e2425d9e6d1 class: BookmarkMenuBuilder
Claus Gittinger <cg@exept.de>
parents: 11784
diff changeset
   375
                    itemValue: #bookmarkMenu
6e2425d9e6d1 class: BookmarkMenuBuilder
Claus Gittinger <cg@exept.de>
parents: 11784
diff changeset
   376
                    enabled: self hasBookmarkHolder.
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
        item isButton: true.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
        menu addItem: item.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
    ].
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
    
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    menu findGuiResourcesIn:self.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
    menuHolder value: menu.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
    "Created: / 18-05-2011 / 18:00:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
    "Modified: / 08-06-2011 / 12:40:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11784
9dd1dd724f3e menuitem protocol
Claus Gittinger <cg@exept.de>
parents: 11422
diff changeset
   387
    "Modified: / 09-09-2012 / 13:07:51 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
!BookmarkBar methodsFor:'hooks'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
11422
vrany
parents: 11046
diff changeset
   392
closeDownViews
vrany
parents: 11046
diff changeset
   393
    self release.
vrany
parents: 11046
diff changeset
   394
    super closeDownViews
vrany
parents: 11046
diff changeset
   395
vrany
parents: 11046
diff changeset
   396
    "Created: / 15-03-2012 / 13:26:54 / Jan Vrany <jan.vrany.fit.cvut.cz>"
vrany
parents: 11046
diff changeset
   397
!
vrany
parents: 11046
diff changeset
   398
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
commonPostOpen
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   400
    |bh|
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
    super commonPostOpen.
17317
488861319fe0 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16491
diff changeset
   403
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   404
    bh := self bookmarksHolder.
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   405
    bh value isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   406
        bh value: BookmarkList forSystemBrowser
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   407
    ].
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    self updateMenu.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
    "Created: / 18-05-2011 / 18:58:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
    "Modified: / 02-06-2011 / 19:51:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   412
    "Modified: / 18-11-2011 / 14:31:54 / cg"
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   413
!
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   414
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   415
postBuiltStarButton:aButton
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   416
    aButton enterLevel:1.
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   417
    aButton leaveLevel:0.
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   418
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   419
    "Created: / 03-07-2011 / 23:08:01 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
11422
vrany
parents: 11046
diff changeset
   422
!BookmarkBar methodsFor:'initialization & release'!
vrany
parents: 11046
diff changeset
   423
vrany
parents: 11046
diff changeset
   424
release
vrany
parents: 11046
diff changeset
   425
vrany
parents: 11046
diff changeset
   426
    bookmarksHolder notNil ifTrue:[
17424
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   427
        bookmarksHolder removeDependent:self.
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   428
    ].
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   429
    bookmarkHolder notNil ifTrue:[
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   430
        bookmarkHolder removeDependent:self.
11422
vrany
parents: 11046
diff changeset
   431
    ].
14063
236b55c41709 class: BookmarkBar
Claus Gittinger <cg@exept.de>
parents: 13436
diff changeset
   432
    super release
11422
vrany
parents: 11046
diff changeset
   433
vrany
parents: 11046
diff changeset
   434
    "Created: / 15-03-2012 / 13:30:56 / Jan Vrany <jan.vrany.fit.cvut.cz>"
17424
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   435
    "Modified: / 21-02-2017 / 10:16:31 / stefan"
11422
vrany
parents: 11046
diff changeset
   436
!
vrany
parents: 11046
diff changeset
   437
vrany
parents: 11046
diff changeset
   438
releaseAsSubCanvas
vrany
parents: 11046
diff changeset
   439
    self release.
vrany
parents: 11046
diff changeset
   440
    super releaseAsSubCanvas
vrany
parents: 11046
diff changeset
   441
vrany
parents: 11046
diff changeset
   442
    "Created: / 15-03-2012 / 13:28:48 / Jan Vrany <jan.vrany.fit.cvut.cz>"
vrany
parents: 11046
diff changeset
   443
! !
vrany
parents: 11046
diff changeset
   444
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
!BookmarkBar methodsFor:'menu'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
bookmarkMenuAddSlice
10282
e5a0bd40418a changed:
Claus Gittinger <cg@exept.de>
parents: 10115
diff changeset
   448
    ^ BookmarkAddMenuBuilder new buildMenuFor:self bookmarksHolder value
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
    "Created: / 02-06-2011 / 21:54:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10282
e5a0bd40418a changed:
Claus Gittinger <cg@exept.de>
parents: 10115
diff changeset
   451
    "Modified: / 08-07-2011 / 11:38:29 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
!BookmarkBar methodsFor:'menu actions'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
menuAddBookmark
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    self menuAddBookmarkTo: self bookmarksHolder value root.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    "Created: / 02-06-2011 / 21:36:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
menuAddBookmarkTo: folder
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   464
    | bookmark |
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    bookmark := self bookmarkHolder value.
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   467
    bookmark isNil ifTrue:[^self].
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
    folder add: bookmark.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
    self bookmarksHolder value save.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
    "Created: / 02-06-2011 / 22:17:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   472
    "Modified: / 18-11-2011 / 14:32:07 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
menuOpenBookmarkEditor
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
    BookmarkListEditor new
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
        bookmarkList: self bookmarksHolder value;
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
        open.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
    "Modified: / 02-06-2011 / 20:02:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
!BookmarkBar class methodsFor:'documentation'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   486
version
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   487
    ^ '$Header$'
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   488
!
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   489
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
version_CVS
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   491
    ^ '$Header$'
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
version_SVN
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   495
    ^ '$Id$'
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
! !
13436
6e2425d9e6d1 class: BookmarkMenuBuilder
Claus Gittinger <cg@exept.de>
parents: 11784
diff changeset
   497