# HG changeset patch # User claus # Date 800837399 -7200 # Node ID 54d513b45f512c65d773ce72c8223fdeb92cc075 # Parent 33d5e92c4ce76b0bbf8a136e4bd8298f282593af . diff -r 33d5e92c4ce7 -r 54d513b45f51 CCReader.st --- a/CCReader.st Thu May 18 17:33:58 1995 +0200 +++ b/CCReader.st Fri May 19 00:49:59 1995 +0200 @@ -21,7 +21,7 @@ COPYRIGHT (c) 1989 by Claus Gittinger All Rights Reserved -$Header: /cvs/stx/stx/libbasic/Attic/CCReader.st,v 1.14 1995-05-01 21:28:25 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Attic/CCReader.st,v 1.15 1995-05-18 22:49:17 claus Exp $ '! !ClassCategoryReader class methodsFor:'documentation'! @@ -42,7 +42,7 @@ version " -$Header: /cvs/stx/stx/libbasic/Attic/CCReader.st,v 1.14 1995-05-01 21:28:25 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Attic/CCReader.st,v 1.15 1995-05-18 22:49:17 claus Exp $ " ! @@ -114,7 +114,7 @@ and add the methods to the class defined by the class-instance var; errors and notifications are passed to requestor" - |aString done method| + |aString done method compiler| Smalltalk silentLoading ifFalse:[ Transcript show:' '; show:myClass name; show:' -> '; showCr:myCategory. @@ -139,13 +139,29 @@ requestor source:aString ]. - method := myClass compilerClass - compile:aString - forClass:myClass - inCategory:myCategory - notifying:requestor - install:true - skipIfSame:true. + compiler := myClass compilerClass. + + "/ + "/ kludge - have to make ST/X's compiler protocol + "/ be compatible to ST-80's + "/ + (compiler respondsTo:#compile:forClass:inCategory:notifying:install:skipIfSame:) + ifTrue:[ + method :=compiler + compile:aString + forClass:myClass + inCategory:myCategory + notifying:requestor + install:true + skipIfSame:true. + + ] ifFalse:[ + method := compiler new + compile:aString + in:myClass + notifying:requestor + ifFail:nil + ]. privacy notNil ifTrue:[ privacy == #private ifTrue:[ diff -r 33d5e92c4ce7 -r 54d513b45f51 CharArray.st --- a/CharArray.st Thu May 18 17:33:58 1995 +0200 +++ b/CharArray.st Fri May 19 00:49:59 1995 +0200 @@ -21,7 +21,7 @@ COPYRIGHT (c) 1994 by Claus Gittinger All Rights Reserved -$Header: /cvs/stx/stx/libbasic/Attic/CharArray.st,v 1.21 1995-05-16 17:06:01 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Attic/CharArray.st,v 1.22 1995-05-18 22:49:21 claus Exp $ '! !CharacterArray class methodsFor:'documentation'! @@ -42,7 +42,7 @@ version " -$Header: /cvs/stx/stx/libbasic/Attic/CharArray.st,v 1.21 1995-05-16 17:06:01 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Attic/CharArray.st,v 1.22 1995-05-18 22:49:21 claus Exp $ " ! @@ -1829,6 +1829,15 @@ ^ self , string1 , string2 , string3 ! ! +!CharacterArray methodsFor:'displaying'! + +displayOn:aGc x:x y:y + "display the receiver in a graphicsContext - this method allows + strings to be used like DisplayObjects." + + ^ aGc displayString:self x:x y:y. +! ! + !CharacterArray methodsFor:'queries'! isString diff -r 33d5e92c4ce7 -r 54d513b45f51 CharacterArray.st --- a/CharacterArray.st Thu May 18 17:33:58 1995 +0200 +++ b/CharacterArray.st Fri May 19 00:49:59 1995 +0200 @@ -21,7 +21,7 @@ COPYRIGHT (c) 1994 by Claus Gittinger All Rights Reserved -$Header: /cvs/stx/stx/libbasic/CharacterArray.st,v 1.21 1995-05-16 17:06:01 claus Exp $ +$Header: /cvs/stx/stx/libbasic/CharacterArray.st,v 1.22 1995-05-18 22:49:21 claus Exp $ '! !CharacterArray class methodsFor:'documentation'! @@ -42,7 +42,7 @@ version " -$Header: /cvs/stx/stx/libbasic/CharacterArray.st,v 1.21 1995-05-16 17:06:01 claus Exp $ +$Header: /cvs/stx/stx/libbasic/CharacterArray.st,v 1.22 1995-05-18 22:49:21 claus Exp $ " ! @@ -1829,6 +1829,15 @@ ^ self , string1 , string2 , string3 ! ! +!CharacterArray methodsFor:'displaying'! + +displayOn:aGc x:x y:y + "display the receiver in a graphicsContext - this method allows + strings to be used like DisplayObjects." + + ^ aGc displayString:self x:x y:y. +! ! + !CharacterArray methodsFor:'queries'! isString diff -r 33d5e92c4ce7 -r 54d513b45f51 ClassCategoryReader.st --- a/ClassCategoryReader.st Thu May 18 17:33:58 1995 +0200 +++ b/ClassCategoryReader.st Fri May 19 00:49:59 1995 +0200 @@ -21,7 +21,7 @@ COPYRIGHT (c) 1989 by Claus Gittinger All Rights Reserved -$Header: /cvs/stx/stx/libbasic/ClassCategoryReader.st,v 1.14 1995-05-01 21:28:25 claus Exp $ +$Header: /cvs/stx/stx/libbasic/ClassCategoryReader.st,v 1.15 1995-05-18 22:49:17 claus Exp $ '! !ClassCategoryReader class methodsFor:'documentation'! @@ -42,7 +42,7 @@ version " -$Header: /cvs/stx/stx/libbasic/ClassCategoryReader.st,v 1.14 1995-05-01 21:28:25 claus Exp $ +$Header: /cvs/stx/stx/libbasic/ClassCategoryReader.st,v 1.15 1995-05-18 22:49:17 claus Exp $ " ! @@ -114,7 +114,7 @@ and add the methods to the class defined by the class-instance var; errors and notifications are passed to requestor" - |aString done method| + |aString done method compiler| Smalltalk silentLoading ifFalse:[ Transcript show:' '; show:myClass name; show:' -> '; showCr:myCategory. @@ -139,13 +139,29 @@ requestor source:aString ]. - method := myClass compilerClass - compile:aString - forClass:myClass - inCategory:myCategory - notifying:requestor - install:true - skipIfSame:true. + compiler := myClass compilerClass. + + "/ + "/ kludge - have to make ST/X's compiler protocol + "/ be compatible to ST-80's + "/ + (compiler respondsTo:#compile:forClass:inCategory:notifying:install:skipIfSame:) + ifTrue:[ + method :=compiler + compile:aString + forClass:myClass + inCategory:myCategory + notifying:requestor + install:true + skipIfSame:true. + + ] ifFalse:[ + method := compiler new + compile:aString + in:myClass + notifying:requestor + ifFail:nil + ]. privacy notNil ifTrue:[ privacy == #private ifTrue:[ diff -r 33d5e92c4ce7 -r 54d513b45f51 Method.st --- a/Method.st Thu May 18 17:33:58 1995 +0200 +++ b/Method.st Fri May 19 00:49:59 1995 +0200 @@ -23,7 +23,7 @@ COPYRIGHT (c) 1989 by Claus Gittinger All Rights Reserved -$Header: /cvs/stx/stx/libbasic/Method.st,v 1.36 1995-05-16 17:07:40 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Method.st,v 1.37 1995-05-18 22:49:59 claus Exp $ '! !Method class methodsFor:'documentation'! @@ -44,7 +44,7 @@ version " -$Header: /cvs/stx/stx/libbasic/Method.st,v 1.36 1995-05-16 17:07:40 claus Exp $ +$Header: /cvs/stx/stx/libbasic/Method.st,v 1.37 1995-05-18 22:49:59 claus Exp $ " ! @@ -1362,12 +1362,29 @@ lazy := Compiler compileLazy:false. [ - temporaryMethod := cls compilerClass + |compiler| + + compiler := cls compilerClass. + + "/ + "/ kludge - have to make ST/X's compiler protocol + "/ be compatible to ST-80's + "/ + (compiler respondsTo:#compile:forClass:inCategory:notifying:install:skipIfSame:) + ifTrue:[ + temporaryMethod := compiler compile:sourceString forClass:cls inCategory:(self category) notifying:nil install:false. + ] ifFalse:[ + temporaryMethod := compiler new + compile:sourceString + in:cls + notifying:nil + ifFail:nil + ]. ] valueNowOrOnUnwindDo:[ Class updateChanges:upd. Compiler compileLazy:lazy.