The about-to-be-put-on-SqueakSource version of Polymorph now has theme 
rendered drop shadow for SystemWindows.
A small improvement in speed since CornerRounder still applies to the actual 
window morph.

Regards, Gary


----- Original Message ----- 
From: "Igor Stasenko" <[email protected]>
To: <[email protected]>
Sent: Tuesday, February 10, 2009 12:11 PM
Subject: Re: [Pharo-project] Call for UI gripes


> 2009/2/10 David Röthlisberger <[email protected]>:
>> Hi Igor,
>>
>>> OB is quite complex thing, and its hard to understand what it does for
>>> outsider :)
>>>
>>> I just identified a few points, which can improve rendering speed by a
>>> certain amount:
>> [...]
>>> - default.
>>>   60 ms
>>>
>>> - with override in SystemWindow>>drawDropShadowOn: aCanvas to do 
>>> nothing:
>>>   51 ms
>>>
>>> - with override in OBMonticelloPackageNode>>classCategories to return
>>> cached collection
>>>   45 ms
>>>
>>
>> I incorporated into OB a patch that is following your idea concerning 
>> caching of
>> class cats in package nodes. I did it differently than you but the 
>> results are even
>> better now.
>>
>
> Great! In my patch i didn't care about correctness or whatever, it was
> simply to outline what possible can be done to improve rendering
> speed.
>
>> Can you take care of integrating the SystemWindow patch into Pharo?
>>
>
> you mean override of SystemWindow>>drawDropShadowOn: ?
> Its not really correct override. Shadow should be drawn, if it there.
> And by default , to draw shadow, it using Morph>>drawOn: method with
> special shadow canvas. For system window it means that a rectangular
> area with dimensions of morph is filled with shadow color, shifted by
> shadowOffset.
> To improve its speed, we could clip a shadow rectangle to not visit
> pixels which is covered my system window contents, only pixels which
> are outside of it and 'dropping' shadow.
>
> I can implement such method, but concerning integration - i'm not in
> charge here :)
>
> What is interesting about shadows, that by default a shadow offset is
> 1 pixel wide:
> shadowOffset: 1...@1
>
> this means that unless you using magnifying glass on you display, you
> can't really tell if there shadow drawn or not.
> Since visual difference is minimal, do anyone can tell, why wasting so
> much CPU cycles on it? :)
>
>
>> Thanks,
>> David
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [email protected]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
>
> -- 
> Best regards,
> Igor Stasenko AKA sig.
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project 


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to