UserMessage.st
author Stefan Vogel <sv@exept.de>
Fri, 19 Jan 2018 10:40:38 +0100
changeset 22458 fc3246d004fa
parent 21746 73d0cc4cb23c
child 22923 cb7ed00c7904
permissions -rw-r--r--
add class: CharacterEncoderImplementations::VariableBytesEncoder
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
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   189
bindWithArguments:anArrayOfStrings
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.
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   192
     'i' may be between 1 and 9 (i.e. a maximum of 9 placeholders is allowed).
21254
f73dd4933007 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18683
diff changeset
   193
     To get an integer-indexed placeHolder followed by another digit,
f73dd4933007 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18683
diff changeset
   194
     or an index > 9, you must use %(digit).
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   195
     This has been added for VisualAge compatibility."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   196
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   197
    ^ self expandPlaceholdersWith:anArrayOfStrings
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   198
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
     'do you prefer %1 or rather %2 (not talking about %3) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   201
        bindWithArguments:#('smalltalk' 'c++' 'c')
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   202
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   203
     'do you %(what) ?'
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   204
        bindWithArguments:(Dictionary new at:#'what' put:'understand'; yourself)
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   205
    "
21746
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
   206
73d0cc4cb23c #OTHER by mawalch
mawalch
parents: 21545
diff changeset
   207
    "Modified (comment): / 11-05-2017 / 12:42:01 / mawalch"
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   208
! !
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   209
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
!UserMessage methodsFor:'accessing'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
catalogID
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
catalogID:aCatalogSymbol
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
defaultString
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
defaultString:aString
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
key
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
key:aKeySymbol
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
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
key:aKeySymbol catalogID:aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
     key := aKeySymbol.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
     catalogID := aCatalogSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
key:aKeySymbol defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
     key := aKeySymbol.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
     defaultString := aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
! !
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
!UserMessage methodsFor:'converting'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
asString
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   249
    "convert the user message to a string.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   250
     If there us no mapping for the user message -
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   251
        for now: return the defaultString, ignoring the catalogID."
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    |str|
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    str := self lookupInMessageCatalog.
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
    str notNil ifTrue:[ ^ str ].
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
    defaultString notNil ifTrue:[
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
        ^ defaultString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
    ].
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
    ^ key asString
6117
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   261
!
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   262
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   263
string
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   264
    ^ self asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   265
! !
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
!UserMessage methodsFor:'printing & storing'!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   268
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   269
displayOn:aStream
17538
a47a30ea5126 class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 16748
diff changeset
   270
    "/ what a kludge - Dolphin and Squeak mean: printOn: a stream;
21545
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   271
    "/ old ST80 means: draw-yourself on a GC.
16748
47cbbcdcb90a displayOn: cleanup
Claus Gittinger <cg@exept.de>
parents: 13364
diff changeset
   272
    (aStream isStream) ifFalse:[
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   273
        self asString displayOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   274
        ^ self
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   275
    ].
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
    key storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   278
    aStream nextPutAll:' << '.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   279
    catalogID storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   280
    defaultString notNil ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   281
        aStream nextPutAll:' >> '.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   282
        defaultString storeOn:aStream.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   283
    ].
21545
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   284
aaa72feed755 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 21273
diff changeset
   285
    "Modified (comment): / 22-02-2017 / 16:48:03 / cg"
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   286
!
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
printOn:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   289
    aStream nextPutAll:self asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   290
! !
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
!UserMessage methodsFor:'special string converting'!
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   293
6117
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   294
expandMacros
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   295
    ^ self asString expandMacros
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   296
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
expandMacrosWith:arg1
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   300
    ^ self asString expandMacrosWith:arg1
013cab950016 +expandMacros
Claus Gittinger <cg@exept.de>
parents: 6008
diff changeset
   301
12092
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   302
!
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   303
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   304
expandPlaceholdersWith:argArrayOrDictionary
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   305
    ^ self asString expandPlaceholdersWith:argArrayOrDictionary
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   306
!
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   307
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   308
expandPlaceholdersWith:argArrayOrDictionary on:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   309
    ^ self asString expandPlaceholdersWith:argArrayOrDictionary on:aStream
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   310
!
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   311
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   312
withCRs
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   313
   ^ self asString withCRs
6591
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   314
! !
586fb5c604ba #displayString
Stefan Vogel <sv@exept.de>
parents: 6117
diff changeset
   315
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
!UserMessage methodsFor:'utilities'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
<< aSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
    "set the catalogID"
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
    self catalogID:aSymbol
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
>> aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    "set the default string"
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
    self defaultString:aString
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
    "
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
     (#theFooMessage << #myMessages >> 'cannot read subclass of metaclass') 
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    "
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
lookupInMessageCatalog
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   335
    |messageCatalog resolvedMessageCatalog|
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   337
    "catalogID may be a block"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   338
    messageCatalog := resolvedMessageCatalog :=catalogID value.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   340
    "for now - handle the case that the catalogID is
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   341
     a classes name; in that case, ask its resourcePack."
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   342
    messageCatalog isSymbol ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   343
        resolvedMessageCatalog := Smalltalk at:messageCatalog.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   344
        resolvedMessageCatalog isNil ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   345
            "no class, so it is a packageID"
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   346
            resolvedMessageCatalog := ResourcePack forPackage:messageCatalog cached:true.
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   347
        ].
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   348
    ].
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   349
    resolvedMessageCatalog isBehavior ifTrue:[
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   350
        resolvedMessageCatalog := resolvedMessageCatalog classResources.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
    ].
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   352
    (resolvedMessageCatalog isNil) ifTrue:[
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   353
        defaultString isNil ifTrue:[
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   354
            ^ 'Non-existent message: (%1<<%2)' bindWith:key with:catalogID printString.
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   355
        ].
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   356
        ^ defaultString.
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   357
    ].
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   358
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   359
    ^ resolvedMessageCatalog at:key ifAbsent:nil.
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
    "
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   362
     (#'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
   363
     (#'WARN_RENAME' << #BrowserView) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   364
     (#'WARN_RENAME' << BrowserView classResources) 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' << #'stx:libtool' ) asString
6887
d01c2201398e *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6591
diff changeset
   367
     (#dontKnow << #nonExistantMessageCatalog) asString
13364
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   368
     (#dontKnow << [YesNoBox]) asString
ca7da07b8bb2 added:14 methods
Stefan Vogel <sv@exept.de>
parents: 12092
diff changeset
   369
     (#dontKnow << #nonExistantMessageCatalog >> 'Default text') asString
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    "
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
!UserMessage class methodsFor:'documentation'!
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
version
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   376
    ^ '$Header$'
12092
4e065b823c40 added: #string
Claus Gittinger <cg@exept.de>
parents: 6887
diff changeset
   377
!
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
version_CVS
18683
4ee8e684946d class: UserMessage
Claus Gittinger <cg@exept.de>
parents: 17538
diff changeset
   380
    ^ '$Header$'
5996
df75959d85f3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
! !
16748
47cbbcdcb90a displayOn: cleanup
Claus Gittinger <cg@exept.de>
parents: 13364
diff changeset
   382