El dom, 24-01-2010 a las 22:33 +0100, Mariano Martinez Peck escribió:
>
>
> I am completely ignorant about the progress. Could you detect where is
> exactly that the progress bar is initialized in that package ?
Thanks Dale and Mariano.
I found the place where the reset is made.
The postDoit for ImageForDevelopers calls
DEVImageCreator default install
that calls
self setTheme
that calls:
UIThemeStandardSqueak beCurrent.
UIThemeWatery2 beCurrent.
that is defined in:
UITheme class.
There calls
self current: self newDefault
where current is:
"Set the current ui theme."
Current := aUITheme.
UITheme allThemeClasses do: [:c | c changed: #isCurrent].
SystemProgressMorph reset. "reset to use new fill styles"
ScrollBar initializeImagesCache. "reset to use new arrows"
aUITheme updateWorldDockingBars.
World themeChanged
and here is the problem! (finally :))
The SystemProgressMorph reset
is the culprit of the initialization of the progress bar.
and is called not one but two times, because the setThemes method first
install the old squeak theme (I suppose that Watery theme doesn't cover
all the UI elements) and then install the watery theme.
So here we have a problem. I think that it is correct to reset the
progress bar when you install the theme.
But I also think that *is not* the responsibility of Metacello to track
this specific scenario (unless that is really simple and non-invasive to
do, in that case, well, Dale is your time and we'll for sure welcome and
thank that fix)
Also, this problem can be solved by extracting the theme change to the
installScript.st
that is,
DEVImageCreator>>install
should remove the setTheme call and the installScript.st should do,
after creating the image:
DEVImageCreator default setTheme.
BTW, as we are here, install also should remove:
self writeListOfPackages.
self openWelcomeWorkspaces.
also to the installScript.st as
DEVImageCreator default
setTheme;
writeListOfPackages;
openWelcomeWorkspaces.
But I digress. Returning to the problem of the reset of the progress
bar, maybe the best solution is to simply remove the setTheme call
because: Pharo already uses the watery theme, this was used, I think, in
the dev images based on squeak. But, as you are using the
ImageForDevelopers-pharo, just delete it.
Dale has nothing to do after that.
(but if you can change the writeListOfPackages and openWelcomeWorkspaces
to the installScript that would be cool ;)).
Cheers to all.
SystemProgressMorph reset. "reset to use new fill styles"
--
Miguel Cobá
http://miguel.leugim.com.mx
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project