BookmarkBar.st
author Stefan Vogel <sv@exept.de>
Fri, 17 May 2019 17:11:44 +0200
changeset 18767 0478d93cdb75
parent 17918 a9043f7695ce
child 19084 9921dbc44880
permissions -rw-r--r--
#REFACTORING by stefan Sanitize BlockValues class: Tools::Inspector2 changed: #toolbarBackgroundHolder
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
17918
a9043f7695ce #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17424
diff changeset
    70
helpSpec
10115
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
17918
a9043f7695ce #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17424
diff changeset
    83
    ^ super helpSpec addPairsFrom:#(
10115
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.
17317
488861319fe0 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16491
diff changeset
   401
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   402
    bh := self bookmarksHolder.
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   403
    bh value isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   404
        bh value: BookmarkList forSystemBrowser
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   405
    ].
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
    self updateMenu.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    "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
   409
    "Modified: / 02-06-2011 / 19:51:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   410
    "Modified: / 18-11-2011 / 14:31:54 / cg"
10115
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   411
!
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   412
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   413
postBuiltStarButton:aButton
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   414
    aButton enterLevel:1.
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   415
    aButton leaveLevel:0.
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   416
Claus Gittinger <cg@exept.de>
parents: 10080
diff changeset
   417
    "Created: / 03-07-2011 / 23:08:01 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
11422
vrany
parents: 11046
diff changeset
   420
!BookmarkBar methodsFor:'initialization & release'!
vrany
parents: 11046
diff changeset
   421
vrany
parents: 11046
diff changeset
   422
release
vrany
parents: 11046
diff changeset
   423
vrany
parents: 11046
diff changeset
   424
    bookmarksHolder notNil ifTrue:[
17424
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   425
        bookmarksHolder removeDependent:self.
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   426
    ].
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   427
    bookmarkHolder notNil ifTrue:[
45e099a2503c #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 17317
diff changeset
   428
        bookmarkHolder removeDependent:self.
11422
vrany
parents: 11046
diff changeset
   429
    ].
14063
236b55c41709 class: BookmarkBar
Claus Gittinger <cg@exept.de>
parents: 13436
diff changeset
   430
    super release
11422
vrany
parents: 11046
diff changeset
   431
vrany
parents: 11046
diff changeset
   432
    "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
   433
    "Modified: / 21-02-2017 / 10:16:31 / stefan"
11422
vrany
parents: 11046
diff changeset
   434
!
vrany
parents: 11046
diff changeset
   435
vrany
parents: 11046
diff changeset
   436
releaseAsSubCanvas
vrany
parents: 11046
diff changeset
   437
    self release.
vrany
parents: 11046
diff changeset
   438
    super releaseAsSubCanvas
vrany
parents: 11046
diff changeset
   439
vrany
parents: 11046
diff changeset
   440
    "Created: / 15-03-2012 / 13:28:48 / Jan Vrany <jan.vrany.fit.cvut.cz>"
vrany
parents: 11046
diff changeset
   441
! !
vrany
parents: 11046
diff changeset
   442
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
!BookmarkBar methodsFor:'menu'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
bookmarkMenuAddSlice
10282
e5a0bd40418a changed:
Claus Gittinger <cg@exept.de>
parents: 10115
diff changeset
   446
    ^ BookmarkAddMenuBuilder new buildMenuFor:self bookmarksHolder value
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
    "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
   449
    "Modified: / 08-07-2011 / 11:38:29 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
!BookmarkBar methodsFor:'menu actions'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
menuAddBookmark
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
    self menuAddBookmarkTo: self bookmarksHolder value root.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    "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
   459
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
menuAddBookmarkTo: folder
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   462
    | bookmark |
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
    bookmark := self bookmarkHolder value.
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   465
    bookmark isNil ifTrue:[^self].
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    folder add: bookmark.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
    self bookmarksHolder value save.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
    "Created: / 02-06-2011 / 22:17:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10863
Claus Gittinger <cg@exept.de>
parents: 10282
diff changeset
   470
    "Modified: / 18-11-2011 / 14:32:07 / cg"
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
menuOpenBookmarkEditor
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
    BookmarkListEditor new
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
        bookmarkList: self bookmarksHolder value;
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
        open.
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
    "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
   480
! !
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
!BookmarkBar class methodsFor:'documentation'!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   484
version
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   485
    ^ '$Header$'
11045
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   486
!
3406500fc0b0 changed: #bookmarkButtonIconHolder
Claus Gittinger <cg@exept.de>
parents: 11043
diff changeset
   487
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
version_CVS
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   489
    ^ '$Header$'
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
!
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
version_SVN
16196
86fe377d9a24 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 14063
diff changeset
   493
    ^ '$Id$'
9974
fb1249834463 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
! !
13436
6e2425d9e6d1 class: BookmarkMenuBuilder
Claus Gittinger <cg@exept.de>
parents: 11784
diff changeset
   495