ModelListEntry.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 02 Sep 2022 11:25:39 +0100
branchjv
changeset 6261 9b7eb7159d29
parent 2656 a239e42de4de
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:
2564
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     1
"
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     2
 COPYRIGHT (c) 2002 by eXept Software AG
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     3
              All Rights Reserved
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     4
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     5
 This software is furnished under a license and may be used
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     6
 only in accordance with the terms of that license and with the
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     8
 be provided or otherwise made available to, or used by, any
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
     9
 other person.  No title to or ownership of the software is
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    10
 hereby transferred.
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    11
"
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    12
2195
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    13
"{ Package: 'stx:libwidg2' }"
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    14
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    15
ListEntry subclass:#ModelListEntry
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    16
	instanceVariableNames:'string model'
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    17
	classVariableNames:''
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    18
	poolDictionaries:''
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    19
	category:'Views-Support'
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    20
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    21
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    22
!ModelListEntry class methodsFor:'documentation'!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    23
2564
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    24
copyright
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    25
"
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    26
 COPYRIGHT (c) 2002 by eXept Software AG
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    27
              All Rights Reserved
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    28
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    29
 This software is furnished under a license and may be used
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    30
 only in accordance with the terms of that license and with the
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    31
 inclusion of the above copyright notice.   This software may not
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    32
 be provided or otherwise made available to, or used by, any
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    33
 other person.  No title to or ownership of the software is
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    34
 hereby transferred.
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    35
"
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    36
!
7fcb30131855 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
    37
2195
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    38
documentation
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    39
"
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    40
    Use this class, if you provide some SelectionInListView, ComboBox, etc. with
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    41
    both a display string, and you want to store some model specific information, too.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    42
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    43
    You can store a class, a selector to perform, a factory object or anything else
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    44
    in model.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    45
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    46
    [author:]
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    47
        Stefan Vogel (stefan@zwerg)
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    48
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    49
    [instance variables:]
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    50
        string          String          string to display
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    51
        model           Object          anything you want to store
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    52
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    53
    [class variables:]
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    54
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    55
    [see also:]
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    56
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    57
"
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    58
! !
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    59
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    60
!ModelListEntry class methodsFor:'instance creation'!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    61
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    62
string:stringArg model:modelArg
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    63
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    64
    ^ self new string:stringArg model:modelArg
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    65
! !
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    66
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    67
!ModelListEntry methodsFor:'accessing'!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    68
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    69
model
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    70
    ^ model
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    71
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    72
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    73
model:something
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    74
    model := something.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    75
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    76
2656
a239e42de4de checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
    77
string
a239e42de4de checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
    78
    ^ string
a239e42de4de checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
    79
!
a239e42de4de checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
    80
2195
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    81
string:something
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    82
    string := something.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    83
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    84
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    85
string:stringArg model:modelArg 
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    86
    string := stringArg.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    87
    model := modelArg.
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    88
! !
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    89
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    90
!ModelListEntry methodsFor:'required protocol'!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    91
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    92
asString
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    93
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    94
    ^ string
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    95
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    96
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    97
displayOn:arg1 x:arg2 y:arg3 opaque:arg4
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    98
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
    99
    ^ string displayOn:arg1 x:arg2 y:arg3 opaque:arg4
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   100
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   101
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   102
sameStringAndEmphasisAs:aStringOrText
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   103
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   104
    aStringOrText class == self class ifTrue:[
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   105
        ^ string sameStringAndEmphasisAs:aStringOrText string
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   106
    ].
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   107
    ^ string sameStringAndEmphasisAs:aStringOrText
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   108
!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   109
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   110
widthOn:arg
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   111
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   112
    ^ string widthOn:arg
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   113
! !
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   114
2570
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   115
!ModelListEntry methodsFor:'string protocol'!
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   116
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   117
expandPlaceholdersWith:argArrayOrDictionary
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   118
    ^ self copy string:(string expandPlaceholdersWith:argArrayOrDictionary)
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   119
! !
c51c31744560 expandPlaceHolders
Claus Gittinger <cg@exept.de>
parents: 2564
diff changeset
   120
2195
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   121
!ModelListEntry class methodsFor:'documentation'!
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   122
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   123
version
2656
a239e42de4de checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
   124
    ^ '$Header: /cvs/stx/stx/libwidg2/ModelListEntry.st,v 1.4 2004-02-25 16:09:56 cg Exp $'
2195
dd542ce8405f initial checkin
Stefan Vogel <sv@exept.de>
parents:
diff changeset
   125
! !