[Sc-devel] *** Refactoring of "Document" class *** now committed
[cross-platform implications]
Dan Stowell
danstowell at gmail.com
Sun Nov 18 22:54:36 PST 2007
Excellent Tom, you get a lollipop for spotting that one.
I forgot to add a file - oops - now added (svn rev 6648). Should fix that.
Dan
2007/11/18, Tom Hall <scth at ludions.com>:
> Hello Dan
>
> I'm getting a compile error after updating to revision 6647 on ppc.
>
> Errors as below. Any ideas?
>
> regards
>
> Tom
>
> Class tree inited in 0.12 seconds
> ERROR: Message 'implementationClass' not understood.
> RECEIVER:
> class Document (05355470) {
> instance variables [19]
> name : Symbol 'Document'
> nextclass : class DoesNotUnderstandError (0B98B7A0)
> superclass : Symbol 'Object'
> subclasses : instance of Array (054DD060, size=2, set=1)
> methods : instance of Array (05355530, size=91, set=7)
> instVarNames : instance of SymbolArray (05355960, size=9, set=3)
> classVarNames : instance of SymbolArray (05355A80, size=9, set=3)
> iprototype : instance of Array (053559D0, size=9, set=4)
> cprototype : instance of Array (05355AF0, size=9, set=4)
> constNames : nil
> constValues : nil
> instanceFormat : Integer 0
> instanceFlags : Integer 0
> classIndex : Integer 454
> classFlags : Integer 0
> maxSubclassIndex : Integer 456
> filenameSymbol : Symbol '/Users/tom/Applications/SuperCollider3/
> build/SCClassLibrary/Common/GUI/Document.sc'
> charPos : Integer 310
> classVarIndex : Integer 38
> }
> ARGS:
> CALL STACK:
> DoesNotUnderstandError:reportError 04BF0E20
> arg this = <instance of DoesNotUnderstandError>
> Nil:handleError 04BF0DC0
> arg this = nil
> arg error = <instance of DoesNotUnderstandError>
> Thread:handleError 04BBEE00
> arg this = <instance of Thread>
> arg error = <instance of DoesNotUnderstandError>
> Object:throw 04BBEAA0
> arg this = <instance of DoesNotUnderstandError>
> Object:doesNotUnderstand 017B5860
> arg this = class Document
> arg selector = 'implementationClass'
> arg args = [*0]
> OSXPlatform:startup 017B5400
> arg this = <instance of OSXPlatform>
> Main:startup 017B53A0
> arg this = <instance of Main>
>
>
> On 18 Nov 2007, at 19:45, Dan Stowell wrote:
>
> > Dear all,
> >
> > I've now refactored the Document class, as discussed at symposium (svn
> > rev 6646). I've been running this refactored code for a while and I
> > believe it to work fine on OSX, but shout if there are any problems.
> >
> > The cocoa-specific code is now moved into a subclass called
> > CocoaDocument. However, for platform-neutrality you shouldn't
> > instantiate that class directly - simply carry on using Document.new
> > or Document.open or whatever, since those calls should automatically
> > instantiate the correct class. In theory this means the API hasn't
> > changed and nothing will break, but that's only theory. Let us know if
> > anything goes weird.
> >
> > Linux: I've done nothing to rework the linux documenty classes since I
> > don't understand them. Hopefully Marije will be able to get it all
> > working nicely on Linux since this change originated from her and I
> > think I've done what she said... ;)
> >
> > Windows: Again, I've done nothing since I can't. The easiest thing to
> > do for windows is probably to take the CocoaDocument class, duplicate
> > it as "WindowsDocument" or "PsycoDocument" or something, and make
> > changes as necessary.
> >
> > Dan
> >
> > --
> > http://www.mcld.co.uk
> > _______________________________________________
> > Sc-devel mailing list
> > Sc-devel at create.ucsb.edu
> > http://www.create.ucsb.edu/mailman/listinfo/sc-devel
>
> ________________________________
>
> Dr Tom Hall
> Department of Music and Performing Arts
> Anglia Ruskin University
> East Road, Cambridge CB1 1PT
>
> www.ludions.com
> ________________________________
>
>
>
>
> _______________________________________________
> Sc-devel mailing list
> Sc-devel at create.ucsb.edu
> http://www.create.ucsb.edu/mailman/listinfo/sc-devel
>
--
http://www.mcld.co.uk
More information about the Sc-devel
mailing list