UserMessage.st
author Stefan Vogel <sv@exept.de>
Mon, 30 Jul 2018 09:04:37 +0200
changeset 23243 e04d4a19c021
parent 22923 cb7ed00c7904
child 23733 15926165e957
permissions -rw-r--r--
#TUNING by stefan class: Object comment/format in: #split: changed: #split:indicesDo: (send #~~ instead of #>)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21746
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
     1
"{ Encoding: utf8 }"
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
     2
21273
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     3
"
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     4
 COPYRIGHT (c) 2001 by eXept Software AG
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     5
              All Rights Reserved
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     6
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     7
 This software is furnished under a license and may be used
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     8
 only in accordance with the terms of that license and with the
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
     9
 inclusion of the above copyright notice.   This software may not
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    10
 be provided or otherwise made available to, or used by, any
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    11
 other person.  No title to or ownership of the software is
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    12
 hereby transferred.
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    13
"
6117
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
    14
"{ Package: 'stx:libbasic' }"
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
17538
a47a30ea5126 class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 16748
diff changeset
    16
"{ NameSpace: Smalltalk }"
a47a30ea5126 class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 16748
diff changeset
    17
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
Object subclass:#UserMessage
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	instanceVariableNames:'defaultString key catalogID'
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	classVariableNames:''
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	poolDictionaries:''
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
	category:'Interface-Internationalization'
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
6008
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    25
!UserMessage class methodsFor:'documentation'!
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    26
21273
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    27
copyright
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    28
"
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    29
 COPYRIGHT (c) 2001 by eXept Software AG
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    30
              All Rights Reserved
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    31
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    32
 This software is furnished under a license and may be used
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    33
 only in accordance with the terms of that license and with the
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    34
 inclusion of the above copyright notice.   This software may not
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    35
 be provided or otherwise made available to, or used by, any
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    36
 other person.  No title to or ownership of the software is
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    37
 hereby transferred.
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    38
"
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    39
!
747662c2633e #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21254
diff changeset
    40
6008
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    41
documentation
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    42
"
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    43
    added for vw5i compatibility, which accesses messageCatalogs
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    44
    via:
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    45
          (#key << #catalogID >> 'defaultMessage')
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    46
    which creates an instance of UserMessage.
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    47
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    48
    Currently, this is a dummy operation in ST/X, however it is mapped onto
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    49
    the resource mechanism, if the given catalogID is the name of a class;
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    50
    i.e.
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    51
        (YesNoBox classResources string:'continue')
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    52
6008
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    53
    can now also be written as:
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    54
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    55
        (#continue << YesNoBox) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    56
        (#continue << #YesNoBox >> 'Continue really') asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    57
"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    58
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    59
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    60
examples
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    61
"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    62
Use a class as catalog:
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    63
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    64
        self warn:(#continue << YesNoBox) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    65
                                                                [exEnd]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    66
Use a class name as catalog:
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    67
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    68
        self warn:(#continue << #YesNoBox) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    69
                                                                [exEnd]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    70
Some default text if the symbol is not present in the catalog:
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    71
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    72
        self warn:(#continue << #YesNoBox >> 'Default for continue') asString.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    73
        self warn:(#continueRRRRRRR << #YesNoBox >> 'Default for continue') asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    74
                                                                [exEnd]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    75
Here we inherit from the top catalog:
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    76
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    77
        self information:(Time now printStringFormat:(#TIMEFORMAT << self >> 'Resolved via default %h:%m:%s') asString)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    78
                                                                [exEnd]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    79
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    80
Can also use a package's catalog:
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    81
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    82
        self information:((#'WARN_RENAME' << #'stx:libtool' ) 
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    83
                          withCRs bindWith:'ARG1' with:'ARG2')
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    84
                                                                [exEnd]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    85
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    86
Lazy resolving the catalog in a block
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    87
(if you generate the messages at startup and want to recognize language changes):
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    88
                                                                [exBegin]
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    89
        self information:((#'WARN_RENAME' << [ Tools::NewSystemBrowser classResources ] ) 
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    90
                          withCRs bindWith:'ARG1' with:'ARG2')
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
    91
                                                                [exEnd]
6008
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    92
"
7ac30515dddc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5996
diff changeset
    93
! !
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
!UserMessage class methodsFor:'instance creation'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
key:aKeySymbol catalogID:aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
     ^ self new key:aKeySymbol catalogID:aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
key:aKeySymbol defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
     ^ self new key:aKeySymbol defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
! !
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   105
!UserMessage methodsFor:'Compatibility-V''Age'!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   106
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   107
bindWith:aString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   108
    "return a copy of the receiver, where a '%1' escape is
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   109
     replaced by aString.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   110
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   111
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   112
    ^ self expandPlaceholdersWith:(Array with:aString)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   113
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   114
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   115
     'do you like %1 ?' bindWith:'smalltalk'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   116
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   117
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   118
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   119
bindWith:string1 with:string2
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   120
    "return a copy of the receiver, where a '%1' escape is
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   121
     replaced by string1 and '%2' is replaced by string2.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   122
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   123
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   124
    ^ self expandPlaceholdersWith:(Array with:string1 with:string2)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   125
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   126
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   127
     'do you prefer %1 or rather %2 ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   128
	bindWith:'smalltalk' with:'c++'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   129
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   130
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   131
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   132
bindWith:str1 with:str2 with:str3
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   133
    "return a copy of the receiver, where a '%1', '%2' and '%3' escapes
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   134
     are replaced by str1, str2 and str3 respectively.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   135
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   136
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   137
    ^ self expandPlaceholdersWith:(Array with:str1 with:str2 with:str3)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   138
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   139
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   140
     'do you prefer %1 or rather %2 (not talking about %3) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   141
	bindWith:'smalltalk' with:'c++' with:'c'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   142
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   143
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   144
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   145
bindWith:str1 with:str2 with:str3 with:str4
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   146
    "return a copy of the receiver, where a '%1', '%2', '%3' and '%4' escapes
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   147
     are replaced by str1, str2, str3 and str4 respectively.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   148
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   149
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   150
    ^ self expandPlaceholdersWith:(Array with:str1 with:str2 with:str3 with:str4)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   151
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   152
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   153
     'do you prefer %1 or rather %2 (not talking about %3 or even %4) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   154
	bindWith:'smalltalk' with:'c++' with:'c' with:'assembler'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   155
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   156
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   157
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   158
bindWith:str1 with:str2 with:str3 with:str4 with:str5
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   159
    "return a copy of the receiver, where a '%1' .. '%5' escapes
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   160
     are replaced by str1 .. str5 respectively.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   161
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   162
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   163
    ^ self expandPlaceholdersWith:(Array with:str1 with:str2 with:str3 with:str4 with:str5)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   164
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   165
    "Created: 31.1.1997 / 16:25:42 / cg"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   166
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   167
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   168
bindWith:str1 with:str2 with:str3 with:str4 with:str5 with:str6
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   169
    "return a copy of the receiver, where a '%1' .. '%6' escapes
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   170
     are replaced by str1 .. str6 respectively.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   171
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   172
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   173
    ^ self expandPlaceholdersWith:(Array with:str1 with:str2
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   174
					 with:str3 with:str4
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   175
					 with:str5 with:str6)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   176
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   177
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   178
bindWith:str1 with:str2 with:str3 with:str4 with:str5 with:str6 with:str7
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   179
    "return a copy of the receiver, where a '%1' .. '%7' escapes
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   180
     are replaced by str1 .. str7 respectively.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   181
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   182
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   183
    ^ self expandPlaceholdersWith:(Array with:str1 with:str2
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   184
					 with:str3 with:str4
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   185
					 with:str5 with:str6
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   186
					 with:str7)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   187
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   188
22923
cb7ed00c7904 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21746
diff changeset
   189
bindWithArguments:argumentsCollection
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   190
    "return a copy of the receiver, where a '%i' escape
21746
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
   191
     is replaced by the corresponding string from the argument array.
22923
cb7ed00c7904 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21746
diff changeset
   192
     'i' may be between 1 and 9 (i.e. a maximum of 9 placeholders is allowed),
cb7ed00c7904 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21746
diff changeset
   193
     or %(key); the argumentsCollection must then be a dictionary.
21254
f73dd4933007 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18683
diff changeset
   194
     To get an integer-indexed placeHolder followed by another digit,
f73dd4933007 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18683
diff changeset
   195
     or an index > 9, you must use %(digit).
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   196
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   197
22923
cb7ed00c7904 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 21746
diff changeset
   198
    ^ self expandPlaceholdersWith:argumentsCollection
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   199
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   200
    "
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   201
     'do you prefer %1 or rather %2 (not talking about %3) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   202
        bindWithArguments:#('smalltalk' 'c++' 'c')
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   203
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   204
     'do you %(what) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   205
        bindWithArguments:(Dictionary new at:#'what' put:'understand'; yourself)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   206
    "
21746
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
   207
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
   208
    "Modified (comment): / 11-05-2017 / 12:42:01 / mawalch"
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   209
! !
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   210
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
!UserMessage methodsFor:'accessing'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
catalogID
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
     ^ catalogID 
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
catalogID:aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
     catalogID := aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
defaultString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
     ^ defaultString 
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
     defaultString := aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
key
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
     ^ key
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
key:aKeySymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
     key := aKeySymbol.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
key:aKeySymbol catalogID:aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
     key := aKeySymbol.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
     catalogID := aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
key:aKeySymbol defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
     key := aKeySymbol.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
     defaultString := aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
! !
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
!UserMessage methodsFor:'converting'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
asString
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   250
    "convert the user message to a string.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   251
     If there us no mapping for the user message -
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   252
        for now: return the defaultString, ignoring the catalogID."
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
    |str|
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
    str := self lookupInMessageCatalog.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
    str notNil ifTrue:[ ^ str ].
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    defaultString notNil ifTrue:[
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
        ^ defaultString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
    ].
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
    ^ key asString
6117
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   262
!
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   263
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   264
string
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   265
    ^ self asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   266
! !
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   267
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   268
!UserMessage methodsFor:'printing & storing'!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   269
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   270
displayOn:aStream
17538
a47a30ea5126 class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 16748
diff changeset
   271
    "/ what a kludge - Dolphin and Squeak mean: printOn: a stream;
21545
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   272
    "/ old ST80 means: draw-yourself on a GC.
16748
47cbbcdcb90a displayOn: cleanup
Claus Gittinger <cg@exept.de>
parents: 13364
diff changeset
   273
    (aStream isStream) ifFalse:[
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   274
        self asString displayOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   275
        ^ self
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   276
    ].
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   277
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   278
    key storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   279
    aStream nextPutAll:' << '.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   280
    catalogID storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   281
    defaultString notNil ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   282
        aStream nextPutAll:' >> '.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   283
        defaultString storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   284
    ].
21545
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   285
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   286
    "Modified (comment): / 22-02-2017 / 16:48:03 / cg"
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   287
!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   288
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   289
printOn:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   290
    aStream nextPutAll:self asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   291
! !
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   292
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   293
!UserMessage methodsFor:'special string converting'!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   294
6117
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   295
expandMacros
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   296
    ^ self asString expandMacros
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   297
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   298
!
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   299
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   300
expandMacrosWith:arg1
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   301
    ^ self asString expandMacrosWith:arg1
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   302
12092
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   303
!
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   304
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   305
expandPlaceholdersWith:argArrayOrDictionary
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   306
    ^ self asString expandPlaceholdersWith:argArrayOrDictionary
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   307
!
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   308
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   309
expandPlaceholdersWith:argArrayOrDictionary on:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   310
    ^ self asString expandPlaceholdersWith:argArrayOrDictionary on:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   311
!
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   312
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   313
withCRs
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   314
   ^ self asString withCRs
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   315
! !
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   316
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
!UserMessage methodsFor:'utilities'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
<< aSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
    "set the catalogID"
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
    self catalogID:aSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
>> aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
    "set the default string"
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
    self defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
    "
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
     (#theFooMessage << #myMessages >> 'cannot read subclass of metaclass') 
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    "
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
lookupInMessageCatalog
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   336
    |messageCatalog resolvedMessageCatalog|
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   338
    "catalogID may be a block"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   339
    messageCatalog := resolvedMessageCatalog :=catalogID value.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   341
    "for now - handle the case that the catalogID is
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   342
     a classes name; in that case, ask its resourcePack."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   343
    messageCatalog isSymbol ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   344
        resolvedMessageCatalog := Smalltalk at:messageCatalog.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   345
        resolvedMessageCatalog isNil ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   346
            "no class, so it is a packageID"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   347
            resolvedMessageCatalog := ResourcePack forPackage:messageCatalog cached:true.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   348
        ].
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   349
    ].
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   350
    resolvedMessageCatalog isBehavior ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   351
        resolvedMessageCatalog := resolvedMessageCatalog classResources.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
    ].
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   353
    (resolvedMessageCatalog isNil) ifTrue:[
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   354
        defaultString isNil ifTrue:[
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   355
            ^ 'Non-existent message: (%1<<%2)' bindWith:key with:catalogID printString.
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   356
        ].
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   357
        ^ defaultString.
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   358
    ].
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   359
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   360
    ^ resolvedMessageCatalog at:key ifAbsent:nil.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
    "
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   363
     (#'WARN_RENAME' << #BrowserView >> 'A class named %1 already exists (in ''%2'')\\that class will no longer be visible (i.e. removed) if you continue.\\Continue ?' ) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   364
     (#'WARN_RENAME' << #BrowserView) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   365
     (#'WARN_RENAME' << BrowserView classResources) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   366
     (#'WARN_RENAME' << [ BrowserView classResources] ) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   367
     (#'WARN_RENAME' << #'stx:libtool' ) asString
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   368
     (#dontKnow << #nonExistantMessageCatalog) asString
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   369
     (#dontKnow << [YesNoBox]) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   370
     (#dontKnow << #nonExistantMessageCatalog >> 'Default text') asString
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
    "
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
! !
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
!UserMessage class methodsFor:'documentation'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
version
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   377
    ^ '$Header$'
12092
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   378
!
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   379
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   380
version_CVS
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   381
    ^ '$Header$'
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
! !
16748
47cbbcdcb90a displayOn: cleanup
Claus Gittinger <cg@exept.de>
parents: 13364
diff changeset
   383