HierarchicalItemWithLabel.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 02 Sep 2022 11:25:39 +0100
branchjv
changeset 6261 9b7eb7159d29
parent 4944 a7083d2ef305
permissions -rw-r--r--
Fix loong standing bug with some menus not being translated / resolved This has happened with browser "View" menu when sometimes it had the slice resolved and sometimes not. It turned out that it was because the code disabled resources (and therefore slices) resolution when processing shortcuts, so the menu was created and cached unresolved. This fixes the issue. eXept apparently run into the same problem.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
4693
67625df32bdc change messages when icon or label changes
Claus Gittinger <cg@exept.de>
parents: 2942
diff changeset
    12
"{ Package: 'stx:libwidg2' }"
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
4693
67625df32bdc change messages when icon or label changes
Claus Gittinger <cg@exept.de>
parents: 2942
diff changeset
    14
"{ NameSpace: Smalltalk }"
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
HierarchicalItem subclass:#HierarchicalItemWithLabel
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	instanceVariableNames:'label'
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	classVariableNames:''
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	poolDictionaries:''
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	category:'Views-Support'
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!HierarchicalItemWithLabel class methodsFor:'documentation'!
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
copyright
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
"
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
 COPYRIGHT (c) 2006 by eXept Software AG
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
              All Rights Reserved
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
 This software is furnished under a license and may be used
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 only in accordance with the terms of that license and with the
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 be provided or otherwise made available to, or used by, any
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
 other person.  No title to or ownership of the software is
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
 hereby transferred.
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
"
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
! !
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
4944
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    39
!HierarchicalItemWithLabel class methodsFor:'instance creation'!
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    40
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    41
label:aLabel
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    42
    ^ self new label:aLabel
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    43
! !
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    44
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!HierarchicalItemWithLabel methodsFor:'accessing'!
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
label
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
    ^ label
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
!
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
4693
67625df32bdc change messages when icon or label changes
Claus Gittinger <cg@exept.de>
parents: 2942
diff changeset
    51
label:aLabel
4698
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    52
    (label isString and:[aLabel isString]) ifTrue:[
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    53
        (label sameStringAndEmphasisAs:aLabel) ifTrue:[^ self].
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    54
    ] ifFalse:[
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    55
        (label = aLabel) ifTrue:[^ self].
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    56
    ].
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    57
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    58
    label := aLabel.
343fabb3def9 class: HierarchicalItemWithLabel
Claus Gittinger <cg@exept.de>
parents: 4693
diff changeset
    59
    self changed.
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
! !
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
!HierarchicalItemWithLabel class methodsFor:'documentation'!
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
version
4944
a7083d2ef305 added instance creation messages label:/label:icon:
Claus Gittinger <cg@exept.de>
parents: 4698
diff changeset
    65
    ^ '$Header$'
2942
71ae03ccdaf2 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
! !
4693
67625df32bdc change messages when icon or label changes
Claus Gittinger <cg@exept.de>
parents: 2942
diff changeset
    67