PL2 "Features"

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

PL2 "Features"

Ian Oldham-5
Andy/Blair:
    I've come across a few "features" in DPRO5 PL2. I hesitate to call them
bugs as they may be due to me/the SSW Tools package:

1.    PrinterCanvas>>startDocNamed: fails because DOCINFO>>lpszDocName:
doesn't exist.

2.    After setting the formatterClass to RBConfigurableFormatter I get a
'Must be boolean' exception when applying a method spy (SSW Tools package).
The walkback emanates from RBConfigurableFormatter>>visitNode: and is due to
the class variable FormatCommentWithStatements being nil. Executing
RBConfigurableFormatter class >>initialize cured the problem.

3.    SmalltalkSystem>>browseSystem: and
SmalltalkSytem>>browseSystemOnMethod: both use a Set as the collection in
the call to SmalltalkSystem>>browseSystemPackages:. When opening an
SSWSystemBrowser this leads to a 'Set does not understand #first" walkback
in IconicListAbstract>>selections:ifAbsent: from a TreeView. For some reason
this doesn't affect the standard OA System Browser but I didn't pursue the
difference between the two browsers as changing the use of Set to
OrderedCollection in the aforementioned two methods got around the problem.
Is my use of OrderedCollection rather than Set likely to lead to some other
problem?

4. Can the 'MetaProg SUnit Samples' package be made available for
installing, rather than having to download D5 again and then having to
re-install all my other packages?

    regards, Ian Oldham


Reply | Threaded
Open this post in threaded view
|

Re: PL2 "Features"

John Aspinall-5
Ian,

> 3.    SmalltalkSystem>>browseSystem: and
> SmalltalkSytem>>browseSystemOnMethod: both use a Set as the collection in
> the call to SmalltalkSystem>>browseSystemPackages:. When opening an
> SSWSystemBrowser this leads to a 'Set does not understand #first" walkback
> in IconicListAbstract>>selections:ifAbsent: from a TreeView. For some reason
> this doesn't affect the standard OA System Browser but I didn't pursue the
> difference between the two browsers as changing the use of Set to
> OrderedCollection in the aforementioned two methods got around the problem.
> Is my use of OrderedCollection rather than Set likely to lead to some other
> problem?

Thanks for pointing this out. For any other Tools+ users there's now a patch on
the website that addresses this issue.

http://www.solutionsoft.co.uk/toolsplus

Regards,

John Aspinall
Solutions Software


Reply | Threaded
Open this post in threaded view
|

Re: PL2 "Features"

Roberto Lupi-2
In reply to this post by Ian Oldham-5
In article <woH5a.127$mj2.31862@newsfep1-
win.server.ntli.net>, [hidden email]
says...
> Andy/Blair:
>     I've come across a few "features" in DPRO5 PL2. I hesitate to call them
> bugs as they may be due to me/the SSW Tools package:
>
> 1.    PrinterCanvas>>startDocNamed: fails because DOCINFO>>lpszDocName:
> doesn't exist.

Tools+ doesn't recognize accessors defined by overriding
ExternalStructure class>>defineFields. Here's a patch.

BTW Tools+ rocks.

--
Roberto Lupi

!SSWSmalltalkSystem methodsFor!

cacheImplementedSelectors
        | map |
        map := IdentityAccumulator new: 10000.
        self environment
                allBehaviorsDo: [:class | class
methodDictionary keysDo: [:sel | map incrementAt: sel]].
        ExternalStructure allSubclasses
                do: [:extClass | extClass template keys do:
[:sel | map incrementAt: sel]].
        self implementedSelectors: map! !
!SSWSmalltalkSystem categoriesFor:
#cacheImplementedSelectors!actions!private! !


Reply | Threaded
Open this post in threaded view
|

Re: PL2 "Features"

Roberto Lupi-2
In article <MPG.18c17fb3c10322bb989689
@powernews.libero.it>, [hidden email] says...
> Tools+ doesn't recognize accessors defined by overriding
> ExternalStructure class>>defineFields. Here's a patch.

I think this patch is better than the previous one:

!SSWSmalltalkSystem methodsFor!

cacheImplementedSelectors
        | map |
        map := IdentityAccumulator new: 10000.
        self environment
                allBehaviorsDo: [:class | class
understoodSelectors do: [:sel | map incrementAt: sel]].
        self implementedSelectors: map! !
!SSWSmalltalkSystem categoriesFor:
#cacheImplementedSelectors!actions!private! !

--
Roberto Lupi