On Tue, May 11, 2010 at 1:55 PM, Alain Plantec <alain.plantec@free.fr>wrote:
Hi Mariano, all Le 11/05/2010 11:43, Mariano Martinez Peck a écrit :
Hi Alain. DEVImageCreator has to be updated to use the new preferences. I
can do it but it will require much more than for me than for you ;)
For preferences it is DEVImageCreator >> setDefaultPreferences it is using Preferences class for the moment. It should be updated to use Settings, isn't it ?
I don't think so. There is no need for such a initialization anymore since package are defining their own preferences. If a default value is desired then it should be set by an initialization method or lazily by the getter. I find the lazy initialization better because then, the SettingBrowser can reset the preference to the default by setting it to nil.
But maybe the default value in the "PharoCore" is not the same as PharoDev? I mean, suppose these are the default prefrences we used in the pharo dev images: setDefaultPreferences. Preferences disable: #annotationPanes; disable: #allwaysShowVScrollBar; enable: #alternativeButtonsInScrollBars; disable: #fadedBackgroundWindows; enable: #fastDragWindowForMorphic; disable: #fullScreenLeavesDeskMargins; enable: #generalizedYellowButtonMenu; enable: #mouseClickForKeyboardFocus; enable: #noWindowAnimationForClosing; disable: #scrollBarsNarrow; disable: #scrollBarsWithoutMenuButton; disable: #showSplitterHandles; disable: #syntaxHighlightingAsYouTypeAnsiAssignment; enable: #showTextEditingState; disable: #windowAnimation; setPreference: #GlyphContrast toValue: 55; disable: #roundedWindowCorners; disable: #roundedMenuCorners; enable: #infiniteUndo; enable: #useUndo; enable: #mercuryPanel; disable: #showUpdateOptionInWorldMenu. If we used to do this, I guess it was becuase most of the default preferences of the core image was different. Otherwise, this method doesn't have sense. If I now do what you say, I am changing the default value of the pharo core image also. Is this correct ? or this should be only one flavor (PharoDev) ? Anyway, suppose I want to do the same as above, I should do something like: Preferences infiniteUndoSetting: true; etc.... Similar happens with external packages. Suppose OB developers (Lukas?) doesn't want to have mercury bar enable by default, but us (in PharoDev) we DO want it. Then I need to set such preference. Maybe the name default looks bad for you. It should be "preferences for PharoDev image"
BTW, Preferences is still present in Pharo 1.1 and thus,
setDefaultPreferences is still working but I guess it should be updated.
why ? there is no need for setDefaultPreferences anymore.
Do you know when Preferences class will be completely removed? Pharo 1.2?
I don't know. Maybe we can let it in the 1.1 in order to let maintainers the possibility to port their packages and definitively remove it in 1.2.
I agree, 1.2.
The same for TheWorldMenu I guess.
ok Cheers Mariano
Cheers Alain
Thanks!
Mariano