ResourceRetriever.st
author Claus Gittinger <cg@exept.de>
Tue, 03 Sep 2013 17:23:55 +0200
changeset 3228 187a4158a51a
parent 2903 f8a9324436cc
child 3306 69517757bffa
permissions -rw-r--r--
class: FlyByHelp changed: #initiateHelpFor:at:now: #showHelp:for: changed the flyBy suppression slightly: if the same text is to be shown again, do not show it except if the help is for another widget. (used to check for the text only previously)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
1397
47ac1d3e1df1 category changes
Claus Gittinger <cg@exept.de>
parents: 1113
diff changeset
    12
"{ Package: 'stx:libview2' }"
47ac1d3e1df1 category changes
Claus Gittinger <cg@exept.de>
parents: 1113
diff changeset
    13
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
Object subclass:#ResourceRetriever
1641
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    15
	instanceVariableNames:'className resourceOwner selector labelText resource'
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	classVariableNames:''
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	poolDictionaries:''
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	category:'Interface-Support-UI'
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
ResourceRetriever class instanceVariableNames:'LabelResources'
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
"
1397
47ac1d3e1df1 category changes
Claus Gittinger <cg@exept.de>
parents: 1113
diff changeset
    24
 No other class instance variables are inherited by this class.
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
!ResourceRetriever class methodsFor:'documentation'!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
copyright
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 COPYRIGHT (c) 1997 by eXept Software AG
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
              All Rights Reserved
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
 This software is furnished under a license and may be used
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
 only in accordance with the terms of that license and with the
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
 inclusion of the above copyright notice.   This software may not
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
 be provided or otherwise made available to, or used by, any
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
 other person.  No title to or ownership of the software is
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
 hereby transferred.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
documentation
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
    ST80 compatibility class.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    The class is not completed yet and certainly not bug free.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
    Also, it is not guaranteed that all winSpecs are understood.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    Notice: 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
        this class was implemented using protocol information
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
        from alpha testers, literature and by reading public domain code
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
        - it may not be complete or compatible to
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
        the corresponding ST-80 class. 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
        If you encounter any incompatibilities, please forward a note 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
        describing the incompatibility verbal (i.e. no code) to the ST/X team.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    [author:]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
        Claus Atzkern
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    [see also:]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
        Application
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
        Menu
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
        MenuItem
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
1641
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    75
!ResourceRetriever class methodsFor:'instance creation'!
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    76
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    77
icon:anIcon
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    78
    ^ self icon:anIcon string:nil
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    79
!
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    80
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    81
icon:anIcon string:aLabelOrNil
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    82
    |resource|
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    83
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    84
    resource := self new.
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    85
    resource icon:anIcon string:aLabelOrNil.
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    86
    ^ resource
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    87
! !
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
    88
2536
a138e96d873b category change
Claus Gittinger <cg@exept.de>
parents: 2124
diff changeset
    89
!ResourceRetriever class methodsFor:'accessing-resources'!
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
    91
findResourceLabel:label in:aResourceOwner
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
    "look for a string 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
        in aResourceOwner, 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
        in class of aResourceOwner,
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
        in resources of class of aResourceOwner,
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
        and finally in my label resources
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
    "
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
    99
    |resources|
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   100
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
    aResourceOwner isNil ifTrue: [^label].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   103
    label isSymbol ifTrue:[
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   104
        (aResourceOwner respondsTo: label) ifTrue:[           
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   105
            ^ aResourceOwner perform:label
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
        ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   108
        (aResourceOwner isClass not 
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   109
        and: [aResourceOwner class respondsTo: label])
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   110
        ifTrue:[            
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   111
            ^ aResourceOwner perform:label
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
        ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   115
    resources := aResourceOwner perform:#resources ifNotUnderstood:nil.
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   116
    resources notNil ifTrue:[
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   117
        ^ resources string:label
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
1113
ac90f3c50701 eliminated #isKindOf:
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   120
    ^ self labelResources string:label
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
  
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
1401
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   124
findResourceLabel:label in:aResourceOwner rememberResourcesIn:aValueHolderOrNil
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   125
    "look for a string 
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   126
        in aResourceOwner, 
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   127
        in class of aResourceOwner,
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   128
        in resources of class of aResourceOwner,
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   129
        and finally in my label resources
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   130
    "
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   131
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   132
    |resources|
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   133
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   134
    aResourceOwner isNil ifTrue: [^label].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   135
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   136
    label isSymbol ifTrue:[
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   137
        (aResourceOwner respondsTo: label) ifTrue:[           
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   138
            ^ aResourceOwner perform:label
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   139
        ].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   140
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   141
        (aResourceOwner isClass not 
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   142
        and: [aResourceOwner class respondsTo: label])
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   143
        ifTrue:[            
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   144
            ^ aResourceOwner perform:label
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   145
        ].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   146
    ].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   147
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   148
    resources := aValueHolderOrNil value.
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   149
    resources isNil ifTrue:[
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   150
        resources := aResourceOwner perform:#resources ifNotUnderstood:nil.
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   151
        resources notNil ifTrue:[
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   152
            aValueHolderOrNil notNil ifTrue:[
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   153
                aValueHolderOrNil value:resources
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   154
            ]
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   155
        ]
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   156
    ].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   157
    resources notNil ifTrue:[
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   158
        ^ resources string:label
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   159
    ].
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   160
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   161
    ^ self labelResources string:label
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   162
  
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   163
!
0fda9891ba4a only ask once for resources (remember locally)
Claus Gittinger <cg@exept.de>
parents: 1397
diff changeset
   164
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
labelResources
1956
7bfc5c973c1b classResources now understood by all classes
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
   166
    "if not already loaded, get the common label resourcePack and return it"
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
    LabelResources isNil ifTrue:[
1956
7bfc5c973c1b classResources now understood by all classes
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
   169
        LabelResources := self classResources.
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
    ^ LabelResources
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
!ResourceRetriever methodsFor:'accessing'!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
className
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    "return the value of the instance variable 'className' (automatically generated)"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
1447
879dc0a647c2 checkin from browser
ps
parents: 1401
diff changeset
   179
    ^ className
879dc0a647c2 checkin from browser
ps
parents: 1401
diff changeset
   180
!
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
className:something
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "set the class which provides the resources
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
    "
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
    className     := something.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    resourceOwner := nil.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
1641
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   189
icon:anIcon string:aLabelOrNil
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   190
    resource  := anIcon.
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   191
    labelText := aLabelOrNil.
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   192
!
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   193
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
labelText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    ^ labelText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
labelText:aText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    labelText := aText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
selector
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "return the value of the instance variable 'selector' (automatically generated)"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
1447
879dc0a647c2 checkin from browser
ps
parents: 1401
diff changeset
   205
    ^ selector
879dc0a647c2 checkin from browser
ps
parents: 1401
diff changeset
   206
!
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
selector:something
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
    "set the value of the instance variable 'selector' (automatically generated)"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
    selector := something.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
value
2124
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   215
    "returns the value assigned to resource or nil"
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   216
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
    |resource|
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
2021
e5b13637d00a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1956
diff changeset
   219
    (resource := self resource value) isNil ifTrue:[
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
        ^ labelText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
    (labelText notNil and:[resource isImage]) ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
        ^ LabelAndIcon icon:resource string:labelText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
    ].
2021
e5b13637d00a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1956
diff changeset
   226
    ^ resource
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    "Modified: / 31.10.1997 / 12:10:05 / cg"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
1397
47ac1d3e1df1 category changes
Claus Gittinger <cg@exept.de>
parents: 1113
diff changeset
   231
!ResourceRetriever methodsFor:'accessing-resource'!
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
findGuiResourcesIn:aResourceContainer
2124
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   234
    "setup a resource owner"
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   235
1932
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   236
    |ns cls|
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   237
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
    className isNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
        resourceOwner := aResourceContainer
1932
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   240
    ] ifFalse:[
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   241
        ns := aResourceContainer class nameSpace.
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   242
        ns ~~ Smalltalk ifTrue:[
1934
c069a501a14c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
   243
            ns isNameSpace ifTrue:[
1933
4edab094fc11 care for private classes
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
   244
                cls := ns at:className asSymbol.
4edab094fc11 care for private classes
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
   245
            ] ifFalse:[
4edab094fc11 care for private classes
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
   246
                cls := ns privateClassesAt:className asSymbol.
4edab094fc11 care for private classes
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
   247
            ].
1932
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   248
            cls notNil ifTrue:[
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   249
                className := cls name.
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   250
            ]
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   251
        ].
2e8748cc844b care for nameSpace when accessing resources from a class
Claus Gittinger <cg@exept.de>
parents: 1641
diff changeset
   252
    ]
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
resource
2124
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   256
    "returns a form assigned to resource or nil"
cd256d18f5cc comments
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   257
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    |img cls|
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   260
    resource notNil ifTrue:[
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   261
        ^ resource
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   262
    ].
1641
393504c99259 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1447
diff changeset
   263
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
    selector isNil ifTrue:[
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   265
        ^ nil
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
    resourceOwner isNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
        (resourceOwner := Smalltalk resolveName:className inClass:self class) isNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
            ^ nil
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
        ]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
    (resourceOwner respondsTo:#visualFor:) ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
        (img := resourceOwner visualFor:selector) notNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
            ^ img
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
        ]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
    (resourceOwner respondsTo:selector) ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
        ^ resourceOwner perform:selector
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
    resourceOwner isClass ifFalse:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
        cls := resourceOwner class.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   287
        (cls respondsTo:#visualFor:) ifTrue:[
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   288
            (img := cls visualFor:selector) notNil ifTrue:[
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   289
                ^ img
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   290
            ]
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   291
        ].
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
        (cls respondsTo:selector) ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
            ^ cls perform:selector
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   294
        ].
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
    ^ nil
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
    "Modified: / 31.10.1997 / 12:09:52 / cg"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
!ResourceRetriever methodsFor:'converting'!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
fromLiteralArrayEncoding:anArray
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   304
    "read my values from an encoding."
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   305
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
    className     := anArray at: 2.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    selector      := anArray at: 3.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
    anArray size == 4 ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
        labelText := anArray at:4
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
    resourceOwner := nil.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
literalArrayEncoding
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
    "encode myself as an array, from which a copy of the receiver can be
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
     reconstructed with #decodeAsLiteralArray.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
     The encoding is: 
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
        (#ResourceRetriever className selector)
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
     or if labelText not nil:
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
        (#ResourceRetriever className selector labelText)
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
    "
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    |myClassName|
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
    myClassName := self class name.
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
    labelText isNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
        ^ Array with:myClassName with:className with:selector
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
    ] ifFalse:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
        ^ Array with:myClassName with:className with:selector with:labelText
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
    "Modified: / 26.1.1998 / 13:52:43 / cg"
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
!ResourceRetriever methodsFor:'testing'!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
isDefined
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
    "returns true if resource exists
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
    "
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
    selector notNil ifTrue:[
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
        ^ (resourceOwner notNil or:[className notNil])
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
    ].
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
  ^ false
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
notDefined
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
    "returns false if resource is not defined
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
    "
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
    self isDefined ifTrue:[^ false ]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
                  ifFalse:[^ true  ]
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
! !
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
!ResourceRetriever class methodsFor:'documentation'!
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
version
2903
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   358
    ^ '$Header: /cvs/stx/stx/libview2/ResourceRetriever.st,v 1.14 2011-03-24 15:55:44 stefan Exp $'
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   359
!
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   360
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   361
version_CVS
f8a9324436cc changed:
Stefan Vogel <sv@exept.de>
parents: 2536
diff changeset
   362
    ^ '$Header: /cvs/stx/stx/libview2/ResourceRetriever.st,v 1.14 2011-03-24 15:55:44 stefan Exp $'
1058
b2c92c42d129 ResourceRetriever moved
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
! !