I'll make the drop shadows themable for system windows. The default way Morphic does drop shadows is quite inefficient.
Regards, Gary ----- Original Message ----- From: "Igor Stasenko" <[email protected]> To: <[email protected]> Sent: Saturday, February 07, 2009 7:23 PM Subject: Re: [Pharo-project] Call for UI gripes > 2009/2/7 Ramon Leon <[email protected]>: >>> The biggest concern I have right now is speed. I'm not >>> saying Pharo is too slow; I'm simply admitting that I do not >>> know whether it is fast enough for some of the things I want to do. >> >> +10 to this. >> >> The UI is looking really great lately, but overall the experience is it's >> just too slow. Cracking open a raw squeak base image reminds me how >> snappy >> the UI used to be. Not really complaining, it's totally bearable, but >> it'd >> sure be nice if the pretty UI was quick and snappy, and you are asking. >> > Sure thing > MessageTally spyOn:[self fullDrawOn: World assuredCanvas] "where self > is an OB system window morph" > > 16.7% {10ms} BalloonEngine>>copyLoopFaster > 11.7% {7ms} SimpleBorder>>frameRectangle:on: > 6.7% {4ms} Array(SequenceableCollection)>>select: > 5.0% {3ms} ByteString(String)>>= > 5.0% {3ms} SmallInteger(Number)>>to:by:do: > 5.0% {3ms} GrafPort(BitBlt)>>primDisplayString:from:to:map:xTable:kern: > 5.0% {3ms} BorderStyle>>frameRectangle:on: > 3.3% {2ms} ByteSymbol>>species > 3.3% {2ms} ByteString class(String class)>>new: > > total 61ms. > > some hot points crying to be optimized: > cache the OBMonticelloPackageNode>>classCategories , which get > rebuilt each time you draw the window. > this can make following numbers much smaller: > 5.0% {3ms} ByteString(String)>>= > 6.7% {4ms} Array(SequenceableCollection)>>select: > 3.3% {2ms} ByteString class(String class)>>new: > > Making SystemWindow>>drawDropShadowOn: to do nothing makes a difference: > > [10 timesRepeat: [self fullDrawOn: World assuredCanvas ]] timeToRun > with shadows: 530 > without: 473 > ~ 10% speedup > > Changing the theme makes some difference (no shadows/with shadows): > - Watery 2: 50/60 ms > - Standard Squeak: 38/43 ms > - Soft Squeak: 46/55 ms > - Vistary: 56/62ms > (keep in mind these numbers are polluted with messageTally) > > As to me, the theme variancy is quite acceptable - a most complex > theme (with transulency) is drawn just 50% slower than most simple > one. > > As for, > 3.3% {2ms} ByteString class(String class)>>new: > > Total count of ByteString>>new: calls during > GlobalCounter reset. > self fullDrawOn: World assuredCanvas. > GlobalCounter counters copy inspect > > is 7146, > which again makes me look suspicious at OB here.. Hey! Are we drawing, > or processing a text?!?! > > >> Ramon Leon >> http://onsmalltalk.com >> >> >> _______________________________________________ >> 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
