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