[squeak-dev] The Trunk: ReleaseBuilder-mt.178.mcz

Marcel Taeumel marcel.taeumel at hpi.de
Sun Jan 28 18:57:13 UTC 2018


Hi Eliot,

well, I am not super happy with the status quo. Yet, I cannot think of a simple way to improve the situation.

Preferences and all this in-image state management remain cumbersome. So much to look out for...

Best,
Marcel
Am 28.01.2018 19:44:35 schrieb Eliot Miranda <eliot.miranda at gmail.com>:
Hi Marcel,

On Sun, Jan 28, 2018 at 2:14 AM, Marcel Taeumel <marcel.taeumel at hpi.de [mailto:marcel.taeumel at hpi.de]> wrote:

Hi Eliot,

the job of a release manager is challenging. :-) For this, having one place to orchestrate all the defaults is very helpful. One can also work around special cases in the last minute. Happened before, will happen again. ;-)

We do need preference setters. They are good for handling and documenting side-effects. They are also good for all sorts of install scripts like in our change sets. Take a look at:

SystemWindow class >> #gradientWindow:
SystemWindow class >> #windowTitleActiveOnFirstClick:
SystemWindow class >> #moveMenuButtonRight:

I do not argue that these cases represent the best way to implement such preferences. However, they are valuable "tools" in their own right. :-)

If you prefer having settings in one place, and it seems for good reason, then I'm happy.
 

Best,
Marcel

Am 28.01.2018 06:04:47 schrieb Eliot Miranda <eliot.miranda at gmail.com [mailto:eliot.miranda at gmail.com]>:
Hi Marcel,

what do you think about making ReleaseBuilder's preference settings more modular? Instead of having the settings in setPreferences, each class therein could implement setPreferencesForRelease. Pros are
- classes can be updated without having to change ReleaseBuilder, which is good when preferences are added or removed
- setters then aren't needed (not particularly compelling)
Cons are
- one has the browse several methods to see all the preferences


> On Jan 25, 2018, at 10:43 PM, commits at source.squeak.org [mailto:commits at source.squeak.org] wrote:
>
> Marcel Taeumel uploaded a new version of ReleaseBuilder to project The Trunk:
> http://source.squeak.org/trunk/ReleaseBuilder-mt.178.mcz [http://source.squeak.org/trunk/ReleaseBuilder-mt.178.mcz]
>
> ==================== Summary ====================
>
> Name: ReleaseBuilder-mt.178
> Author: mt
> Time: 26 January 2018, 7:43:08.679036 am
> UUID: 16fb2ca0-9bc6-1e43-ad39-26694959fc45
> Ancestors: ReleaseBuilder-eem.177
>
> Adds default preferences for Transcript tool.
>
> =============== Diff against ReleaseBuilder-eem.177 ===============
>
> Item was changed:
> ----- Method: ReleaseBuilder class>>setPreferences (in category 'scripts') -----
> setPreferences
> "Preferences class defaultValueTableForCurrentRelease"
>
> " Preferences outOfTheBox." "<-- uncomment="" after="" #defaultvaluetableforcurrentrelease="" is="" fixed="">

>
> "General User interaction"
> Preferences
> enable: #generalizedYellowButtonMenu ;
> enable: #swapMouseButtons;
> disable: #mouseOverForKeyboardFocus.
> Morph indicateKeyboardFocus: true.
> Project uiManager openToolsAttachedToMouseCursor: false.
> SearchBar useScratchPad: false.
>
> HandMorph sendMouseWheelToKeyboardFocus: false.
> HandMorph synthesizeMouseWheelEvents: true.
>
> "Text input."
> TextEditor
> autoEnclose: true ;
> autoIndent: true ;
> encloseSelection: false ;
> destructiveBackWord: false ;
> blinkingCursor: true ;
> dumbbellCursor: false.
> PluggableTextMorph simpleFrameAdornments: false.
> TextMorphForEditView draggableTextSelection: true.
>
> "Windows"
> SystemWindow reuseWindows: false.
> SystemWindow windowsRaiseOnClick: true.
> SystemWindow windowTitleActiveOnFirstClick: true.
> Model windowActiveOnFirstClick: false. "Not good for little screen real estate."
> Model useColorfulWindows: false.
>
> Preferences
> disable: #showSplitterHandles;
> disable: #fastDragWindowForMorphic.
> CornerGripMorph
> drawCornerResizeHandles: false;
> passiveColor: (Color gray: 0.85);
> activeColor: (Color r: 1 g: 0.599 b: 0.0).
> ProportionalSplitterMorph
> smartHorizontalSplitters: false ;
> smartVerticalSplitters: false.
>
> "Scroll bars."
> Preferences
> enable: #scrollBarsNarrow;
> enable: #scrollBarsOnRight;
> enable: #alwaysHideHScrollbar;
> disable: #alwaysShowHScrollbar;
> disable: #alwaysShowVScrollbar.
> ScrollBar
> scrollBarsWithoutArrowButtons: true;
> scrollBarsWithoutMenuButton: true.
> ScrollPane
> useRetractableScrollBars: false.
>
> "Rounded corners."
> Morph preferredCornerRadius: 8.
> SystemWindow roundedWindowCorners: false.
> DialogWindow roundedDialogCorners: false.
> MenuMorph roundedMenuCorners: false.
> PluggableButtonMorph roundedButtonCorners: false.
> ScrollBar roundedScrollBarLook: false.
>
> "Gradients."
> SystemWindow gradientWindow: false.
> DialogWindow gradientDialog: false.
> MenuMorph gradientMenu: false.
> PluggableButtonMorph gradientButton: false.
> ScrollBar gradientScrollBar: false.
>
> "Shadows"
> Preferences enable: #menuAppearance3d.
> Morph useSoftDropShadow: true.
>
> "Lists and Trees"
> PluggableListMorph
> filterableLists: true;
> clearFilterAutomatically: false;
> highlightHoveredRow: true;
> menuRequestUpdatesSelection: true.
> PluggableTreeMorph
> filterByLabelsOnly: false;
> maximumSearchDepth: 1.
>
> "Standard Tools"
> TheWorldMainDockingBar
> showWorldMainDockingBar: true;
> showSecondsInClock: true;
> twentyFourHourClock: true.
> SearchBar useSmartSearch: true.
> Workspace shouldStyle: false.
> + TranscriptStream
> + forceUpdate: true;
> + redirectToStdOut: false;
> + characterLimit: 20000.
> Browser
> listClassesHierarchically: true;
> showClassIcons: true;
> showMessageIcons: true;
> sortMessageCategoriesAlphabetically: true.
> Preferences enable: #annotationPanes;
> enable: #optionalButtons;
> disable: #diffsWithPrettyPrint;
> enable: #traceMessages;
> enable: #alternativeBrowseIt;
> enable: #menuWithIcons;
> enable: #visualExplorer.
> SystemNavigation thoroughSenders: true.
> Preferences disable: #debugLogTimestamp.
>
> "Halo"
> Preferences
> enable: #showBoundsInHalo ;
> disable: #alternateHandlesLook;
> disable: #showDirectionHandles.
>
> "System"
> NetNameResolver enableIPv6: false.
> Scanner
> allowUnderscoreAsAssignment: true;
> prefAllowUnderscoreSelectors: true.
>
> Deprecation showDeprecationWarnings: true
>
> "that's all, folks"!
>
>








--

_,,,^..^,,,_

best, Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20180128/e41f2ef8/attachment.html>


More information about the Squeak-dev mailing list