InterestConverter.st
author Claus Gittinger <cg@exept.de>
Wed, 15 Mar 2006 11:23:43 +0100
changeset 9281 9f05718319a0
parent 8436 4a9e5fbe67e5
child 11715 03f0d5aee2fd
permissions -rw-r--r--
interest stuff
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5272
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     1
"
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     2
 COPYRIGHT (c) 1996 by Claus Gittinger / eXept Software AG
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     3
              All Rights Reserved
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     4
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     5
 This software is furnished under a license and may be used
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     6
 only in accordance with the terms of that license and with the
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     8
 be provided or otherwise made available to, or used by, any
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
     9
 other person.  No title to or ownership of the software is
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    10
 hereby transferred.
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    11
"
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    12
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    13
6056
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
    14
"{ Package: 'stx:libbasic' }"
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
    15
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
Object subclass:#InterestConverter
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    17
	instanceVariableNames:'destination selector aspect'
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	classVariableNames:''
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	poolDictionaries:''
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	category:'Interface-Support-Models'
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!InterestConverter class methodsFor:'documentation'!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
5272
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    25
copyright
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    26
"
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    27
 COPYRIGHT (c) 1996 by Claus Gittinger / eXept Software AG
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    28
              All Rights Reserved
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    29
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    30
 This software is furnished under a license and may be used
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    31
 only in accordance with the terms of that license and with the
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    33
 be provided or otherwise made available to, or used by, any
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    34
 other person.  No title to or ownership of the software is
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    35
 hereby transferred.
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    36
"
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    37
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    38
!
1dad283c5256 copyrights
Claus Gittinger <cg@exept.de>
parents: 2717
diff changeset
    39
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
documentation
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
"
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    instances convert update messages into messages as setup via
8436
4a9e5fbe67e5 Fix typo in comment
Stefan Vogel <sv@exept.de>
parents: 7347
diff changeset
    43
    #onChangeSend:to:.
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    This is a temporary kludge and will be replaced by a more intelligent
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
    DependencyCollection class in the future.
1291
74d61fd64c4a documentation
Claus Gittinger <cg@exept.de>
parents: 1098
diff changeset
    46
74d61fd64c4a documentation
Claus Gittinger <cg@exept.de>
parents: 1098
diff changeset
    47
    [author:]
74d61fd64c4a documentation
Claus Gittinger <cg@exept.de>
parents: 1098
diff changeset
    48
        Claus Gittinger
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
"
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
examples
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
"
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    54
  #onChangeSend:to / #retractInterestsIn:
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    55
  interested in any change:
1315
85a27a31a690 examples
Claus Gittinger <cg@exept.de>
parents: 1291
diff changeset
    56
                                                                        [exBegin]
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    |p b|
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    59
    b := [Transcript showCR:'--> notification: point has changed'].
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    p := Point new.
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    p onChangeSend:#value to:b.
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
    Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    64
    Transcript showCR:'sending change ...'.
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    p changed.
2716
08cf98cf1a53 comment
Claus Gittinger <cg@exept.de>
parents: 1801
diff changeset
    66
    Transcript showCR:'retracting ...'.
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    p retractInterestsFor:b.
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    69
    Transcript showCR:'sending change ...'.
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
    p changed.
1315
85a27a31a690 examples
Claus Gittinger <cg@exept.de>
parents: 1291
diff changeset
    71
                                                                        [exEnd]
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    72
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    73
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    74
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    75
  #expressInterestIn:for:sendBack / #retractInterestIn:for:
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    76
  interested in a specific change:
1315
85a27a31a690 examples
Claus Gittinger <cg@exept.de>
parents: 1291
diff changeset
    77
                                                                        [exBegin]
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    78
     |p b|
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    79
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    80
     b := [Transcript showCR:'the point changed'].
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    81
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    82
     p := Point new.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    83
     Transcript showCR:'interest in #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    84
     p expressInterestIn:#foo for:b sendBack:#value.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    85
     p x:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    86
     Transcript showCR:'now changing #bar'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    87
     p changed:#bar.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    88
     Transcript cr.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    89
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    90
     Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    91
     Transcript showCR:'now changing #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    92
     p changed:#foo.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    93
     Transcript cr.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    94
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    95
     Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    96
     Transcript showCR:'no more interest in #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    97
     p retractInterestIn:#foo for:b.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
    98
     Transcript showCR:'now changing #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
    99
     p changed:#foo.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   100
     Transcript cr.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   101
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   102
     Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   103
     Transcript showCR:'interest in #bar now'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   104
     p expressInterestIn:#bar for:b sendBack:#value.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   105
     Transcript showCR:'now changing #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   106
     p changed:#foo.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   107
     Transcript showCR:'now changing #bar'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   108
     p changed:#bar.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   109
     Transcript cr.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   110
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   111
     Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   112
     Transcript showCR:'interest in #foo now'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   113
     p expressInterestIn:#foo for:b sendBack:#value.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   114
     Transcript showCR:'now changing #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   115
     p changed:#foo.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   116
     Transcript showCR:'now changing #bar'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   117
     p changed:#bar.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   118
     Transcript cr.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   119
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   120
     Delay waitForSeconds:1.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   121
     Transcript showCR:'no more interests'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   122
     p retractInterestsFor:b.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   123
     Transcript showCR:'now changing #foo'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   124
     p changed:#foo.
1422
9a0b792f2953 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 1315
diff changeset
   125
     Transcript showCR:'now changing #bar'.
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   126
     p changed:#bar.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   127
     Transcript cr.
1315
85a27a31a690 examples
Claus Gittinger <cg@exept.de>
parents: 1291
diff changeset
   128
                                                                        [exEnd]
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
"
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
! !
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
!InterestConverter class methodsFor:'instance creation'!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
destination:anObject selector:aSelector
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   135
    "create & return an interestConverter, which sends aSelector
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   136
     to anObject when a change notification arrives"
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   137
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
    ^ self basicNew destination:anObject selector:aSelector
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   139
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   140
    "Modified: 21.5.1997 / 11:59:08 / cg"
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   141
!
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   142
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   143
destination:anObject selector:aSelector aspect:aspect
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   144
    "create & return an interestConverter, which sends aSelector
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   145
     to anObject when a change notification for aspect arrives"
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   146
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   147
    ^ self basicNew destination:anObject selector:aSelector aspect:aspect
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   148
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   149
    "Modified: 21.5.1997 / 11:59:26 / cg"
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
! !
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
!InterestConverter methodsFor:'accessing'!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   154
aspect
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   155
    "return my aspect (if any)"
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   156
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   157
    ^ aspect
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   158
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   159
    "Created: 8.3.1996 / 23:00:37 / cg"
2717
c1cd0f1920a4 comments
Claus Gittinger <cg@exept.de>
parents: 2716
diff changeset
   160
    "Modified: 21.5.1997 / 11:59:43 / cg"
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   161
!
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   162
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
destination
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    ^ destination
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
    "Created: 7.3.1996 / 10:57:01 / cg"
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
destination:dest selector:sel
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    destination := dest.
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
    selector := sel
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    "Created: 7.3.1996 / 10:49:13 / cg"
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   174
!
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   175
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   176
destination:dest selector:sel aspect:a
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   177
    destination := dest.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   178
    selector := sel.
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   179
    aspect := a
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   180
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   181
    "Created: 8.3.1996 / 22:42:03 / cg"
7347
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   182
!
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   183
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   184
selector
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   185
    ^ selector
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   186
1c4e0be2c4f0 add access method for selector
penk
parents: 6056
diff changeset
   187
    "Created: 7.3.1996 / 10:57:01 / cg"
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
! !
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
!InterestConverter methodsFor:'change & update'!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
update:something with:aParameter from:someObject
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   193
    (aspect isNil or:[aspect == something]) ifTrue:[
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   194
        destination perform:selector
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   195
    ]
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
    "Created: 7.3.1996 / 10:14:30 / cg"
1098
e8543399e2a0 support aspect-specific interests
Claus Gittinger <cg@exept.de>
parents: 1074
diff changeset
   198
    "Modified: 8.3.1996 / 22:41:53 / cg"
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
! !
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
6056
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   201
!InterestConverter methodsFor:'printing'!
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   202
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   203
displayString
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   204
    ^ self className , '(sending ' , selector storeString , ' to ' , destination printString , ')'
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   205
! !
5406d407a9bb better displayString
Claus Gittinger <cg@exept.de>
parents: 5272
diff changeset
   206
9281
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   207
!InterestConverter methodsFor:'testing'!
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   208
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   209
isInterestConverter
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   210
    ^ true
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   211
! !
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   212
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
!InterestConverter class methodsFor:'documentation'!
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
version
9281
9f05718319a0 interest stuff
Claus Gittinger <cg@exept.de>
parents: 8436
diff changeset
   216
    ^ '$Header: /cvs/stx/stx/libbasic/InterestConverter.st,v 1.13 2006-03-15 10:23:43 cg Exp $'
1074
e20967eee4bd renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
! !