Marcel Taeumel uploaded a new version of PreferenceBrowser to project The Trunk:
http://source.squeak.org/trunk/PreferenceBrowser-mt.92.mcz ==================== Summary ==================== Name: PreferenceBrowser-mt.92 Author: mt Time: 12 September 2019, 4:25:05.125077 pm UUID: 7ec5722c-bc3b-1c4b-8749-d0bbc537e2d5 Ancestors: PreferenceBrowser-mt.91 Preference wizard - adds scroll bars (just in case) - adds option to install common packages - checks for internet connection =============== Diff against PreferenceBrowser-mt.91 =============== Item was changed: ----- Method: PreferenceWizardMorph>>accept (in category 'actions') ----- accept + self showInstallPage.! - self showSqueak.! Item was changed: + ----- Method: PreferenceWizardMorph>>adjustSettingsForLowPerformance (in category 'support') ----- - ----- Method: PreferenceWizardMorph>>adjustSettingsForLowPerformance (in category 'actions') ----- adjustSettingsForLowPerformance self updateLowPerformanceLabel: 'Please wait, optimizing performance...' translated. self refreshWorld. self stateGradients "flat look" ifFalse: [self toggleGradients]. self stateBlinkingCursor ifTrue: [self toggleBlinkingCursor]. self stateFastDrag ifFalse: [self toggleFastDrag]. self stateSoftShadows ifTrue: [self toggleSoftShadows]. self stateHardShadows ifTrue: [self toggleHardShadows]. self stateRoundedWindowLook ifTrue: [self toggleRoundedWindowLook]. self stateRoundedButtonLook ifTrue: [self toggleRoundedButtonLook]. self stateAttachToolsToMouse ifTrue: [self toggleAttachToolsToMouse]. self stateToolAndMenuIcons ifTrue: [self toggleToolAndMenuIcons]. self stateSmartHorizontalSplitters ifTrue: [self toggleSmartHorizontalSplitters]. self stateSmartVerticalSplitters ifTrue: [self toggleSmartVerticalSplitters]. PluggableListMorph highlightHoveredRow: false; filterableLists: false. TheWorldMainDockingBar showSecondsInClock: false. Preferences disable: #balloonHelpInMessageLists. "Set simple background." ActiveWorld setAsBackground: MorphicProject defaultFill. previewWorld fillStyle: ActiveWorld fillStyle. "Done." self updateLowPerformanceLabel: 'Settings were adjusted for optimal performance.' translated. ! Item was added: + ----- Method: PreferenceWizardMorph>>checkInternetOn: (in category 'updating') ----- + checkInternetOn: button + + self isInWorld ifFalse: [^ self]. + (self hasProperty: #checkInternet) ifFalse: [^ self]. + + self hasInternetConnection + ifTrue: [button enabled: true; label: 'Yes, install selected packages.' translated] + ifFalse: [button enabled: false; label: 'Please check your internet connection...' translated]. + + (self future: 1000) checkInternetOn: button.! Item was changed: + ----- Method: PreferenceWizardMorph>>chooseTheme: (in category 'support') ----- - ----- Method: PreferenceWizardMorph>>chooseTheme: (in category 'actions') ----- chooseTheme: aTheme aTheme apply. "The theme does not theme this fake world." + previewWorld fillStyle: self world fillStyle.! - previewWorld fillStyle: ActiveWorld fillStyle.! Item was changed: + ----- Method: PreferenceWizardMorph>>createButton (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createButton (in category 'initialization') ----- createButton ^ PluggableButtonMorphPlus new setProperty: #noUserInterfaceTheme toValue: true; offColor: (self defaultColor adjustBrightness: 0.2); feedbackColor: (self defaultColor adjustBrightness: 0.4); model: self; font: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 12); textColor: self defaultTextColor; borderColor: self defaultTextColor; instVarNamed: #borderColor put: self defaultTextColor; "HACK!!" borderWidth: 2; cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]); vResizing: #shrinkWrap; hResizing: #shrinkWrap; layoutInset: (20@10 corner: 20@10); yourself! Item was changed: + ----- Method: PreferenceWizardMorph>>createCheckbox:for: (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createCheckbox:for: (in category 'initialization') ----- createCheckbox: label for: selector ^ self createCheckbox: label for: selector help: #()! Item was changed: + ----- Method: PreferenceWizardMorph>>createCheckbox:for:help: (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createCheckbox:for:help: (in category 'initialization') ----- createCheckbox: label for: selector help: terms | box lbl btn | btn := self createButton layoutInset: 0; label: ' '; onColor: (self defaultColor adjustBrightness: 0.3) offColor: (self defaultColor adjustBrightness: 0.3); vResizing: #rigid; hResizing: #rigid; action: ('toggle', selector) asSymbol; getStateSelector: ('state', selector) asSymbol; getLabelSelector: ('label', selector) asSymbol; extent: 25@25. lbl := self createLabel: label color: self defaultTextColor. + lbl hResizing: #spaceFill. box := Morph new color: Color transparent; changeTableLayout; listDirection: #leftToRight; cellPositioning: #topLeft; hResizing: #spaceFill; vResizing: #shrinkWrap; + rubberBandCells: true; cellGap: 10; yourself. box addAllMorphs: {btn. lbl}. self setBalloonText: (terms isString ifTrue: [terms] ifFalse: [self findHelpStringFor: terms]) for: box. ^ box! Item was changed: + ----- Method: PreferenceWizardMorph>>createHorizontalSpacer (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createHorizontalSpacer (in category 'initialization') ----- createHorizontalSpacer ^ Morph new color: Color transparent; hResizing: #spaceFill; extent: 5@5; yourself! Item was changed: + ----- Method: PreferenceWizardMorph>>createLabel: (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createLabel: (in category 'initialization') ----- createLabel: aString ^ self createLabel: aString color: (self defaultTextColor adjustBrightness: -0.1)! Item was changed: + ----- Method: PreferenceWizardMorph>>createLabel:color: (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createLabel:color: (in category 'initialization') ----- createLabel: aString color: aColor ^ self createLabel: aString color: aColor pointSize: 12! Item was changed: + ----- Method: PreferenceWizardMorph>>createLabel:color:pointSize: (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createLabel:color:pointSize: (in category 'initialization') ----- createLabel: aString color: aColor pointSize: size | lbl | lbl := TextMorph new hResizing: #spaceFill; vResizing: #shrinkWrap. lbl newContents:aString. lbl text addAttribute: (TextColor color: aColor); addAttribute: (TextFontReference toFont: ((StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: size))). lbl lock. ^ lbl! Item was changed: + ----- Method: PreferenceWizardMorph>>createPage (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createPage (in category 'initialization') ----- createPage ^ Morph new color: Color transparent; hResizing: #spaceFill; vResizing: #spaceFill; changeTableLayout; listDirection: #topToBottom; cellPositioning: #topLeft; + layoutInset: (20@20 corner: 10@0); - layoutInset: 20; cellGap: 10; yourself! Item was added: + ----- Method: PreferenceWizardMorph>>createScrollPane (in category 'initialization - building') ----- + createScrollPane + + | pane | + pane := ScrollPane new + setProperty: #noUserInterfaceTheme toValue: true; + hScrollBarPolicy: #never; + vScrollBarPolicy: #whenNeeded; + borderWidth: 0; + color: Color transparent; + scrollBarThickness: 20; + yourself. + + pane + hResizing: #spaceFill; + vResizing: #spaceFill. + + pane scroller changeTableLayout. + pane scroller addMorph: (Morph new + changeTableLayout; + color: Color transparent; + hResizing: #spaceFill; + vResizing: #shrinkWrap; + cellGap: 10; + layoutInset: (0@0 corner: 10@0); + yourself). + + pane vScrollBar + setProperty: #noUserInterfaceTheme toValue: true; + sliderColor: Color white. + (pane vScrollBar instVarNamed: #slider) + cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]); + borderWidth: 2. + (pane vScrollBar instVarNamed: #pagingArea) + cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]). + + ^ pane! Item was changed: + ----- Method: PreferenceWizardMorph>>createVerticalSpace (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createVerticalSpace (in category 'initialization') ----- createVerticalSpace ^ Morph new color: Color transparent; vResizing: #rigid; extent: 5@5; yourself! Item was changed: + ----- Method: PreferenceWizardMorph>>createVerticalSpacer (in category 'initialization - building') ----- - ----- Method: PreferenceWizardMorph>>createVerticalSpacer (in category 'initialization') ----- createVerticalSpacer ^ Morph new color: Color transparent; vResizing: #spaceFill; extent: 5@5; yourself! Item was changed: + ----- Method: PreferenceWizardMorph>>doesNotUnderstand: (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>doesNotUnderstand: (in category 'buttons') ----- doesNotUnderstand: msg (msg selector numArgs = 0 and: [msg selector beginsWith: 'label']) ifTrue: [^ (self perform: ('state', (msg selector allButFirst: 5)) asSymbol) ifTrue: [self checkmark] ifFalse: [' '] ]. ^ super doesNotUnderstand: msg! Item was changed: + ----- Method: PreferenceWizardMorph>>findHelpStringFor: (in category 'support') ----- - ----- Method: PreferenceWizardMorph>>findHelpStringFor: (in category 'initialization') ----- findHelpStringFor: someTerms someTerms ifEmpty: [^ '']. ^ Preferences allPreferences detect:[:pref | someTerms allSatisfy: [:term| pref name includesSubstring: term caseSensitive: false]] ifFound: [:pref | (pref helpString lines joinSeparatedBy: ' ') withBlanksTrimmed] ifNone: ['']! Item was added: + ----- Method: PreferenceWizardMorph>>hasInternetConnection (in category 'testing') ----- + hasInternetConnection + + ^ [TestCase new ensureSecureInternetConnection. true] + on: Error do: [false]! Item was changed: ----- Method: PreferenceWizardMorph>>initialize (in category 'initialization') ----- initialize super initialize. isFullScreen := false. self hasLowPerformance ifTrue: [self color: self defaultColor] ifFalse: [self color: (self defaultColor alpha: 0.75)]. self setProperty: #indicateKeyboardFocus toValue: #never. Preferences enable: #systemWindowEmbedOK. titleMorph := ('Welcome to Squeak' translated asText addAttribute: (TextColor color: self defaultTextColor); addAttribute: (TextFontReference toFont: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 20)); yourself) asMorph lock. titleMorph margins: (10@0 corner: 10@10). titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 0) offsets: (0@ 0 corner: 0 @ titleMorph height)). self initializePages; initializeButtons; initializeControlMorph; initializePreviewWorld; initializeForLowPerformance. self changeProportionalLayout; layoutInset: 20; cellGap: 10; cellPositioning: #center; addAllMorphs: {titleMorph. buttonRowMorph. controlMorph. previewWorld. startButton. skipButton. lowPerformanceMorph}. self addKeyboardCaptureFilter: self.! Item was changed: ----- Method: PreferenceWizardMorph>>initializeButtons (in category 'initialization') ----- initializeButtons buttonRowMorph := Morph new color: Color transparent; changeTableLayout; listDirection: #leftToRight; cellGap: 10; layoutInset: (0@20 corner: 0@0); vResizing: #shrinkWrap; hResizing: #spaceFill; yourself. buttonRowMorph addAllMorphs: { previousButton := self createButton action: #previous; label: 'Previous' translated. pagesLabel := (self createLabel: '0 / 0') hResizing: #shrinkWrap; margins: (20@0 corner: 20@0); fullBounds; yourself. nextButton := self createButton action: #next; label: 'Next' translated. self createHorizontalSpacer. + self createButton action: #accept; label: 'Done' translated}. - self createButton action: #showSqueak; label: 'Done' translated}. buttonRowMorph fullBounds. buttonRowMorph layoutFrame: (LayoutFrame fractions: (0 @ 1 corner: 1 @ 1) offsets: (0@ buttonRowMorph height negated corner: 0 @ 0)). startButton := (self createButton action: #showPlayfield; label: 'Configure' translated). skipButton := (self createButton action: #showSqueak; label: 'Skip' translated). (startButton width max: skipButton width) in: [:w | startButton hResizing: #rigid; width: w. skipButton hResizing: #rigid; width: w. startButton layoutFrame: (LayoutFrame fractions: (0.5 @ 0.6 corner: 0.5 @ 0.6) offsets: (2*w negated @ 0 corner: 0 @ 0)). skipButton layoutFrame: (LayoutFrame fractions: (0.5 @ 0.6 corner: 0.5 @ 0.6) offsets: (0@ 0 corner: 2*w @ 0))].! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage01Themes (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage01Themes (in category 'initialization') ----- initializePage01Themes + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose a theme:' color: Color white). + currentPage addMorphBack: pane. + ((UserInterfaceTheme allThemes reject: [:uit | uit name beginsWith: 'Demo']) sorted: [:a :b | a name <= b name]) do: [:ea | + pane scroller firstSubmorph addMorphBack: (self createButton - currentPage addMorphBack: (self createButton label: ea name; hResizing: #spaceFill; action: #chooseTheme:; arguments: {ea})]. + - currentPage addMorphBack: self createVerticalSpacer. ! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage02Visuals (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage02Visuals (in category 'initialization') ----- initializePage02Visuals + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose visual settings' color: Color white). + currentPage addMorphBack: pane. + pane scroller firstSubmorph addAllMorphsBack: { - - currentPage addAllMorphsBack: { self createCheckbox: 'Colorful windows' translated for: #UseColorfulWindows help: #(color window). self createCheckbox: 'Flat widget look' translated for: #Gradients help: 'Whether to use gradients or not.' translated. self createVerticalSpace. self createCheckbox: 'Rounded windows' translated for: #RoundedWindowLook help: #(round window). self createCheckbox: 'Rounded buttons' translated for: #RoundedButtonLook help: #(round button). self createVerticalSpace. self createCheckbox: 'Soft shadows' translated for: #SoftShadows help: #(soft shadow). self createCheckbox: 'Hard shadows' translated for: #HardShadows help: 'Whether to use a hard shadow for windows, menus, and dialogs.' translated. self createVerticalSpace. self createCheckbox: 'Fast drag and resize' translated for: #FastDrag help: #(fast drag). self createCheckbox: 'Blinking text cursor' translated for: #BlinkingCursor help: #(blinking cursor). self createCheckbox: 'Show keyboard focus' translated for: #ShowKeyboardFocus help: #(keyboard indicate). self createCheckbox: 'Simple edit indication' translated for: #SimpleFrameAdornments help: #(adornment simple). + }.! - }. - - currentPage addMorphBack: self createVerticalSpacer. - ! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage02bVisualsMore (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage02bVisualsMore (in category 'initialization') ----- initializePage02bVisualsMore + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose more visual settings' color: Color white). + currentPage addMorphBack: pane. + pane scroller firstSubmorph addAllMorphsBack: { - currentPage addAllMorphsBack: { self createCheckbox: 'Bigger Fonts' translated for: #UseBiggerFonts help: 'For high-DPI displays, bigger fonts can improve readability.'. self createCheckbox: 'Bigger Cursors' translated for: #UseBiggerCursors help: #(bigger cursor). + }.! - }. - - currentPage addMorphBack: self createVerticalSpacer. - ! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage03Interaction (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage03Interaction (in category 'initialization') ----- initializePage03Interaction + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose interaction settings' color: Color white). + currentPage addMorphBack: pane. + pane scroller firstSubmorph addAllMorphsBack: { - - currentPage addAllMorphsBack: { self createCheckbox: 'Swap mouse buttons' translated for: #SwapMouseButtons help: #(swap mouse). self createCheckbox: 'Focus follows mouse' translated for: #FocusFollowsMouse help: #(mouse over keyboard). self createCheckbox: 'Mouse wheel to focus' translated for: #SendMouseWheelToKeyboardFocus help: #(wheel keyboard). self createVerticalSpace. self createCheckbox: 'Auto enclose brackets' translated for: #AutoEnclose help: #(auto enclose). self createCheckbox: 'Auto indent lines' translated for: #AutoIndent help: #(auto indent). self createCheckbox: 'Enclose text selections' translated for: #EncloseSelection help: #(enclose selection). self createVerticalSpace. self createCheckbox: 'Arrows in scrollbar' translated for: #ScrollBarsWithoutArrowButtons help: 'Whether to show arrows for scrolling or not.' translated. self createCheckbox: 'Menu in scrollbar' translated for: #ScrollBarsWithoutMenuButton help: 'Whether to show a menu button or not.' translated. self createCheckbox: 'Scrollbars on the right' translated for: #ScrollBarsOnRight help: #(right scroll). self createCheckbox: 'Retractable scrollbars' translated for: #UseRetractableScrollBars help: #(retractable). self createCheckbox: 'Narrow scrollbars' translated for: #ScrollBarsNarrow help: #(narrow scroll). + }.! - }. - - currentPage addMorphBack: self createVerticalSpacer. - ! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage04InteractionMore (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage04InteractionMore (in category 'initialization') ----- initializePage04InteractionMore + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose more interaction settings' color: Color white). + currentPage addMorphBack: pane. + pane scroller firstSubmorph addAllMorphsBack: { - - currentPage addAllMorphsBack: { self createCheckbox: 'Windows raise on click' translated for: #WindowsRaiseOnClick help: #(window raise). self createCheckbox: 'Windows always active' for: #WindowsAlwaysActive help: #(window content active). self createCheckbox: 'Window buttons always active' translated for: #WindowButtonsAlwaysActive help: #(window control active). self createVerticalSpace. self createCheckbox: 'Smart horizontal splitters' translated for: #SmartHorizontalSplitters help: #(horizontal splitter). self createCheckbox: 'Smart vertical splitters' translated for: #SmartVerticalSplitters help: #(vertical splitter). self createVerticalSpace. self createCheckbox: 'Filterable lists and trees' translated for: #FilterableLists help: #(filterable). self createCheckbox: 'Filters clear if unfocused' translated for: #ClearFilterAutomatically help: #(filter clear). self createVerticalSpace. self createCheckbox: 'Attach tools to mouse' translated for: #AttachToolsToMouse help: #(tools attach). + }.! - }. - - currentPage addMorphBack: self createVerticalSpacer. - ! Item was changed: + ----- Method: PreferenceWizardMorph>>initializePage05Tools (in category 'initialization - pages') ----- - ----- Method: PreferenceWizardMorph>>initializePage05Tools (in category 'initialization') ----- initializePage05Tools + | currentPage pane | - | currentPage | currentPage := pages add: self createPage. + pane := self createScrollPane. + currentPage addMorphBack: (self createLabel: 'Choose other settings' color: Color white). + currentPage addMorphBack: pane. + pane scroller firstSubmorph addAllMorphsBack: { - - currentPage addAllMorphsBack: { self createCheckbox: 'Trace messages browser' translated for: #TraceMessages help: #(trace message). self createCheckbox: 'Reuse tool windows' translated for: #ReuseWindows help: #(window reuse). self createCheckbox: 'Tool and menu icons' translated for: #ToolAndMenuIcons help: 'Whether to show icons in tools and menus.' translated. self createCheckbox: 'Browse class hierarchy' translated for: #AlternativeBrowseIt help: 'Whether to spawn a hierarchy browser or full system browser on browse-it commands.' translated. }. - - currentPage addMorphBack: self createVerticalSpacer. ! Item was added: + ----- Method: PreferenceWizardMorph>>initializePage99ExtraPackages (in category 'initialization - pages') ----- + initializePage99ExtraPackages + "Let the user install extra packages." + + | currentPage packagesList installButton | + currentPage := self createPage. + currentPage + cellPositioning: #topCenter; + layoutInset: (150@40 corner: 150@20); + addMorphBack: self createHorizontalSpacer; + addMorphBack: ((self createLabel: 'Do you want to install extra packages?' color: Color white) + hResizing: #shrinkWrap; + yourself); + addMorphBack: ((self createLabel: 'Note that the installation process requires an internet connection and may take several minutes.' color: (Color gray: 0.9)) + hResizing: #rigid; + vResizing: #shrinkWrap; + width: 450; + yourself). + + currentPage submorphs last text addAttribute: TextAlignment centered. + currentPage submorphs last layoutChanged. + + currentPage addMorphBack: (self createVerticalSpace height: 20). + + packagesList := self createScrollPane. + packagesList + width: 350; + hResizing: #rigid; + vResizing: #spaceFill. + + packagesList scroller firstSubmorph addAllMorphsBack: { + self createCheckbox: 'Latest system updates' translated for: #InstallLatestUpdates help: 'Install the latest patches for ' translated, SystemVersion current version. + self createCheckbox: 'Refactoring support in code browsers' translated for: #InstallRefactoringTools help: 'Refactoring is a process of re-writing or re-organizing text or code. The purpose of a refactor is to make the code or text more understandable and readable while exactly preserving its meaning and behavior.' translated. + self createCheckbox: 'Autocomplete in code editors' translated for: #InstallAutoComplete help: 'Package that provides interactive, context-sensitive auto-completion for Squeak.' translated. + self createCheckbox: 'Git support and browser' translated for: #InstallGitInfrastructure help: 'From the Git Browser, you can create new commits, synchronize with remote repositories (fetch, pull, push), manage and merge branches, switch between them, and compare different versions.' translated. + self createCheckbox: 'Foreign function interface (FFI)' translated for: #InstallFFI help: 'FFI, the Squeak Foreign Function Interface, is used to call functions located in shared libraries that are not part of the Squeak VM nor its plugins' translated. + self createCheckbox: 'Access OS functions' translated for: #InstallOSProcess help: 'OSProcess provides access to operating system functions, including pipes and child process creation.' translated. + }. + + currentPage addMorphBack: packagesList. + + currentPage addMorphBack: ((self createLabel: 'Find more on www.squeak.org/projects' color: (Color gray: 0.9)) + hResizing: #shrinkWrap; yourself). + + installButton := (self createButton action: #installExtraPackages). + currentPage addMorphBack: installButton. + currentPage addMorphBack: (self createButton action: #showSqueak; label: 'No, maybe later.' translated). + + self setProperty: #checkInternet toValue: true. + self checkInternetOn: installButton. + + ^ currentPage! Item was added: + ----- Method: PreferenceWizardMorph>>installAutoComplete (in category 'actions - packages') ----- + installAutoComplete + + Metacello new + configuration: 'OCompletion'; + load.! Item was added: + ----- Method: PreferenceWizardMorph>>installExtraPackages (in category 'actions') ----- + installExtraPackages + "Removes the buttons and adds the progress bar during installation." + + | steps page | + self removeProperty: #checkInternet. "No frequent checks for connectivity from here." + + steps := #( + InstallLatestUpdates + InstallMetacello + InstallRefactoringTools + InstallAutoComplete + InstallGitInfrastructure + InstallFFI + InstallOSProcess ) + select: [:ea | self perform: ('state', ea) asSymbol] + thenCollect: [:ea | ea withFirstCharacterDownshifted asSymbol]. + + page := controlMorph firstSubmorph. + + page submorphs second hide. "question" + page submorphs last delete. "url" + page submorphs last delete. "no button" + page submorphs last delete. "yes button" + page submorphs last delete. "package list" + + self refreshWorld. + + [ + PreferenceWizardProgressMorph install. + page + addMorphBack: PreferenceWizardProgressMorph uniqueInstance; + addMorphBack: self createVerticalSpacer. + + steps + do: [:step | self perform: step] + displayingProgress: [:step | (step findFeatures joinSeparatedBy: String space), ' ...']. + ] ensure: [ + PreferenceWizardProgressMorph reset. + self showSqueak].! Item was added: + ----- Method: PreferenceWizardMorph>>installFFI (in category 'actions - packages') ----- + installFFI + + Metacello new + configuration: 'FFI'; + load.! Item was added: + ----- Method: PreferenceWizardMorph>>installGitInfrastructure (in category 'actions - packages') ----- + installGitInfrastructure + + Installer installGitInfrastructure.! Item was added: + ----- Method: PreferenceWizardMorph>>installLatestUpdates (in category 'actions - packages') ----- + installLatestUpdates + + MCConfiguration ensureOpenTranscript: false. + [MCMcmUpdater default doUpdate: false] + ensure: [MCConfiguration ensureOpenTranscript: true].! Item was added: + ----- Method: PreferenceWizardMorph>>installMetacello (in category 'actions - packages') ----- + installMetacello + + Installer ensureRecentMetacello.! Item was added: + ----- Method: PreferenceWizardMorph>>installOSProcess (in category 'actions - packages') ----- + installOSProcess + + Metacello new + configuration: 'OSProcess'; + load.! Item was added: + ----- Method: PreferenceWizardMorph>>installRefactoringTools (in category 'actions - packages') ----- + installRefactoringTools + + Metacello new + configuration: 'RefactoringTools'; + version: '2.0'; + load.! Item was changed: + ----- Method: PreferenceWizardMorph>>refreshWorld (in category 'updating') ----- - ----- Method: PreferenceWizardMorph>>refreshWorld (in category 'initialization') ----- refreshWorld self world layoutChanged. "To be really sure to update docking bars..." self world fullBounds. "Avoid flickering..." self world doOneCycle.! Item was changed: + ----- Method: PreferenceWizardMorph>>setBalloonText:for: (in category 'support') ----- - ----- Method: PreferenceWizardMorph>>setBalloonText:for: (in category 'initialization') ----- setBalloonText: string for: morph morph balloonColor: ((self defaultColor alpha: self color alpha) adjustBrightness: 0.2); balloonText: (string asText addAttribute: (TextFontReference toFont: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 9)); addAttribute: (TextColor color: Color banana)).! Item was added: + ----- Method: PreferenceWizardMorph>>showInstallPage (in category 'actions') ----- + showInstallPage + + buttonRowMorph delete. + previewWorld delete. + + "self refreshWorld." + + controlMorph + removeAllMorphs; + layoutInset: 0; + layoutFrame: (LayoutFrame fractions: (0.0 @ 0 corner: 1.0 @ 1.0) offsets: (0@ titleMorph height corner: 0 @ 0)); + addMorphBack: self initializePage99ExtraPackages. + + "self refreshWorld."! Item was changed: ----- Method: PreferenceWizardMorph>>showPlayfield (in category 'actions') ----- showPlayfield startButton hide. skipButton hide. lowPerformanceMorph hide. isFullScreen := true. self step. titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 0) offsets: (0@ 0 corner: 0 @ titleMorph height)). - self refreshWorld. - (Delay forMilliseconds: 1000) wait. + self refreshWorld. + 500 milliSeconds wait. controlMorph show. previewWorld show. buttonRowMorph show. self next. self refreshWorld. ! Item was changed: ----- Method: PreferenceWizardMorph>>showSqueak (in category 'actions') ----- showSqueak + self removeProperty: #checkInternet. self isInWelcome ifTrue: [^ self delete]. buttonRowMorph hide. controlMorph hide. previewWorld hide. self refreshWorld. + 500 milliSeconds wait. - (Delay forMilliseconds: 1000) wait. - titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 1)). + self refreshWorld. + 500 milliSeconds wait. + - (Delay forMilliseconds: 1000) wait. self delete.! Item was changed: + ----- Method: PreferenceWizardMorph>>stateAlternativeBrowseIt (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateAlternativeBrowseIt (in category 'buttons') ----- stateAlternativeBrowseIt ^ Preferences valueOfFlag: #alternativeBrowseIt ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateAttachToolsToMouse (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateAttachToolsToMouse (in category 'buttons') ----- stateAttachToolsToMouse ^ Project uiManager openToolsAttachedToMouseCursor! Item was changed: + ----- Method: PreferenceWizardMorph>>stateAutoEnclose (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateAutoEnclose (in category 'buttons') ----- stateAutoEnclose ^ TextEditor autoEnclose! Item was changed: + ----- Method: PreferenceWizardMorph>>stateAutoIndent (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateAutoIndent (in category 'buttons') ----- stateAutoIndent ^ TextEditor autoIndent! Item was changed: + ----- Method: PreferenceWizardMorph>>stateBlinkingCursor (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateBlinkingCursor (in category 'buttons') ----- stateBlinkingCursor ^ TextEditor blinkingCursor! Item was changed: + ----- Method: PreferenceWizardMorph>>stateClearFilterAutomatically (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateClearFilterAutomatically (in category 'buttons') ----- stateClearFilterAutomatically ^ PluggableListMorph clearFilterAutomatically! Item was changed: + ----- Method: PreferenceWizardMorph>>stateEncloseSelection (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateEncloseSelection (in category 'buttons') ----- stateEncloseSelection ^ TextEditor encloseSelection! Item was changed: + ----- Method: PreferenceWizardMorph>>stateFastDrag (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateFastDrag (in category 'buttons') ----- stateFastDrag ^ Preferences valueOfFlag: #fastDragWindowForMorphic ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateFilterableLists (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateFilterableLists (in category 'buttons') ----- stateFilterableLists ^ PluggableListMorph filterableLists! Item was changed: + ----- Method: PreferenceWizardMorph>>stateFocusFollowsMouse (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateFocusFollowsMouse (in category 'buttons') ----- stateFocusFollowsMouse ^ Preferences valueOfFlag: #mouseOverForKeyboardFocus ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateGradients (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateGradients (in category 'buttons') ----- stateGradients ^ SystemWindow gradientWindow not! Item was changed: + ----- Method: PreferenceWizardMorph>>stateHardShadows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateHardShadows (in category 'buttons') ----- stateHardShadows ^ (Preferences valueOfFlag: #menuAppearance3d ifAbsent: [false]) and: [Morph useSoftDropShadow not]! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallAutoComplete (in category 'actions - packages') ----- + stateInstallAutoComplete + + ^ self + valueOfProperty: #InstallAutoComplete + ifAbsent: [false] + ! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallFFI (in category 'actions - packages') ----- + stateInstallFFI + + ^ self + valueOfProperty: #InstallFFI + ifAbsent: [false]! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallGitInfrastructure (in category 'actions - packages') ----- + stateInstallGitInfrastructure + + ^ self + valueOfProperty: #InstallGitInfrastructure + ifAbsent: [false]! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallLatestUpdates (in category 'actions - packages') ----- + stateInstallLatestUpdates + + ^ self + valueOfProperty: #InstallLatestUpdates + ifAbsent: [true] + ! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallMetacello (in category 'actions - packages') ----- + stateInstallMetacello + + ^ #( + InstallRefactoringTools + InstallAutoComplete + InstallGitInfrastructure + InstallFFI + InstallOSProcess ) + anySatisfy: [:ea | self perform: ('state', ea) asSymbol]! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallOSProcess (in category 'actions - packages') ----- + stateInstallOSProcess + + ^ self + valueOfProperty: #InstallOSProcess + ifAbsent: [false]! Item was added: + ----- Method: PreferenceWizardMorph>>stateInstallRefactoringTools (in category 'actions - packages') ----- + stateInstallRefactoringTools + + ^ self + valueOfProperty: #InstallRefactoringTools + ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateReuseWindows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateReuseWindows (in category 'buttons') ----- stateReuseWindows ^ SystemWindow reuseWindows! Item was changed: + ----- Method: PreferenceWizardMorph>>stateRoundedButtonLook (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateRoundedButtonLook (in category 'buttons') ----- stateRoundedButtonLook ^ PluggableButtonMorph roundedButtonCorners! Item was changed: + ----- Method: PreferenceWizardMorph>>stateRoundedWindowLook (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateRoundedWindowLook (in category 'buttons') ----- stateRoundedWindowLook ^ SystemWindow roundedWindowCorners! Item was changed: + ----- Method: PreferenceWizardMorph>>stateScrollBarsNarrow (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateScrollBarsNarrow (in category 'buttons') ----- stateScrollBarsNarrow ^ Preferences valueOfPreference: #scrollBarsNarrow ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateScrollBarsOnRight (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateScrollBarsOnRight (in category 'buttons') ----- stateScrollBarsOnRight ^ Preferences valueOfFlag: #scrollBarsOnRight ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutArrowButtons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutArrowButtons (in category 'buttons') ----- stateScrollBarsWithoutArrowButtons ^ ScrollBar scrollBarsWithoutArrowButtons not! Item was changed: + ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutMenuButton (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutMenuButton (in category 'buttons') ----- stateScrollBarsWithoutMenuButton ^ ScrollBar scrollBarsWithoutMenuButton not! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSendMouseWheelToKeyboardFocus (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSendMouseWheelToKeyboardFocus (in category 'buttons') ----- stateSendMouseWheelToKeyboardFocus ^ HandMorph sendMouseWheelToKeyboardFocus! Item was changed: + ----- Method: PreferenceWizardMorph>>stateShowKeyboardFocus (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateShowKeyboardFocus (in category 'buttons') ----- stateShowKeyboardFocus ^ Morph indicateKeyboardFocus! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSimpleFrameAdornments (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSimpleFrameAdornments (in category 'buttons') ----- stateSimpleFrameAdornments ^ PluggableTextMorph simpleFrameAdornments! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSmartHorizontalSplitters (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSmartHorizontalSplitters (in category 'buttons') ----- stateSmartHorizontalSplitters ^ ProportionalSplitterMorph smartHorizontalSplitters! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSmartVerticalSplitters (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSmartVerticalSplitters (in category 'buttons') ----- stateSmartVerticalSplitters ^ ProportionalSplitterMorph smartVerticalSplitters! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSoftShadows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSoftShadows (in category 'buttons') ----- stateSoftShadows ^ (Preferences valueOfFlag: #menuAppearance3d ifAbsent: [false]) and: [Morph useSoftDropShadow]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateSwapMouseButtons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateSwapMouseButtons (in category 'buttons') ----- stateSwapMouseButtons ^ Preferences valueOfFlag: #swapMouseButtons ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateToolAndMenuIcons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateToolAndMenuIcons (in category 'buttons') ----- stateToolAndMenuIcons ^ Browser showClassIcons! Item was changed: + ----- Method: PreferenceWizardMorph>>stateTraceMessages (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateTraceMessages (in category 'buttons') ----- stateTraceMessages ^ Preferences valueOfFlag: #traceMessages ifAbsent: [false]! Item was changed: + ----- Method: PreferenceWizardMorph>>stateUseBiggerCursors (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateUseBiggerCursors (in category 'buttons') ----- stateUseBiggerCursors ^ Cursor useBiggerCursors! Item was changed: + ----- Method: PreferenceWizardMorph>>stateUseBiggerFonts (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateUseBiggerFonts (in category 'buttons') ----- stateUseBiggerFonts ^ UserInterfaceTheme current name beginsWith: 'Demo'! Item was changed: + ----- Method: PreferenceWizardMorph>>stateUseColorfulWindows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateUseColorfulWindows (in category 'buttons') ----- stateUseColorfulWindows ^ Model useColorfulWindows! Item was changed: + ----- Method: PreferenceWizardMorph>>stateUseRetractableScrollBars (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateUseRetractableScrollBars (in category 'buttons') ----- stateUseRetractableScrollBars ^ ScrollPane useRetractableScrollBars! Item was changed: + ----- Method: PreferenceWizardMorph>>stateWindowButtonsAlwaysActive (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateWindowButtonsAlwaysActive (in category 'buttons') ----- stateWindowButtonsAlwaysActive ^ SystemWindow windowTitleActiveOnFirstClick! Item was changed: + ----- Method: PreferenceWizardMorph>>stateWindowsAlwaysActive (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateWindowsAlwaysActive (in category 'buttons') ----- stateWindowsAlwaysActive ^ Model windowActiveOnFirstClick! Item was changed: + ----- Method: PreferenceWizardMorph>>stateWindowsRaiseOnClick (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>stateWindowsRaiseOnClick (in category 'buttons') ----- stateWindowsRaiseOnClick ^ SystemWindow windowsRaiseOnClick! Item was changed: + ----- Method: PreferenceWizardMorph>>step (in category 'stepping') ----- - ----- Method: PreferenceWizardMorph>>step (in category 'stepping and presenter') ----- step | oldWidth oldBounds | "self comeToFront." isFullScreen == true ifTrue: [ oldBounds := self bounds. self bounds: self world bounds. self bounds = oldBounds ifFalse: [ self updateWindowBounds]] ifFalse: [ oldWidth := self width. self width: self world width. self center: self world center. self width = oldWidth ifFalse: [ self updateWindowBounds]].! Item was changed: + ----- Method: PreferenceWizardMorph>>stepTime (in category 'stepping') ----- - ----- Method: PreferenceWizardMorph>>stepTime (in category 'stepping and presenter') ----- stepTime ^ 1000! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleAlternativeBrowseIt (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleAlternativeBrowseIt (in category 'buttons') ----- toggleAlternativeBrowseIt Preferences toggle: #alternativeBrowseIt. self changed: #stateAlternativeBrowseIt.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleAttachToolsToMouse (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleAttachToolsToMouse (in category 'buttons') ----- toggleAttachToolsToMouse Project uiManager openToolsAttachedToMouseCursor: Project uiManager openToolsAttachedToMouseCursor not. self changed: #stateAttachToolsToMouse.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleAutoEnclose (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleAutoEnclose (in category 'buttons') ----- toggleAutoEnclose TextEditor autoEnclose: TextEditor autoEnclose not. self changed: #stateAutoEnclose.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleAutoIndent (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleAutoIndent (in category 'buttons') ----- toggleAutoIndent TextEditor autoIndent: TextEditor autoIndent not. self changed: #stateAutoIndent.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleBlinkingCursor (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleBlinkingCursor (in category 'buttons') ----- toggleBlinkingCursor TextEditor blinkingCursor: TextEditor blinkingCursor not. TextMorph allSubInstancesDo: [:ea | ea stopBlinking. ea hasFocus ifTrue: [ Editor blinkingCursor ifTrue: [ea startBlinking] ifFalse: [ea resetBlinkCursor "ensure caret visible"]]]. self changed: #stateBlinkingCursor.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleClearFilterAutomatically (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleClearFilterAutomatically (in category 'buttons') ----- toggleClearFilterAutomatically PluggableListMorph clearFilterAutomatically: PluggableListMorph clearFilterAutomatically not. self changed: #stateClearFilterAutomatically.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleEncloseSelection (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleEncloseSelection (in category 'buttons') ----- toggleEncloseSelection TextEditor encloseSelection: TextEditor encloseSelection not. self changed: #stateEncloseSelection.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleFastDrag (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleFastDrag (in category 'buttons') ----- toggleFastDrag Preferences toggle: #fastDragWindowForMorphic. self changed: #stateFastDrag.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleFilterableLists (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleFilterableLists (in category 'buttons') ----- toggleFilterableLists PluggableListMorph filterableLists: PluggableListMorph filterableLists not. self changed: #stateFilterableLists.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleFocusFollowsMouse (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleFocusFollowsMouse (in category 'buttons') ----- toggleFocusFollowsMouse Preferences toggle: #mouseOverForKeyboardFocus. self changed: #stateFocusFollowsMouse.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleGradients (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleGradients (in category 'buttons') ----- toggleGradients | switch | switch := SystemWindow gradientWindow not. SystemWindow gradientWindow: switch. DialogWindow gradientDialog: switch. MenuMorph gradientMenu: switch. ScrollBar gradientScrollBar: switch. PluggableButtonMorph gradientButton: switch. self changed: #stateGradients.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleHardShadows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleHardShadows (in category 'buttons') ----- toggleHardShadows self stateSoftShadows ifFalse: [Preferences toggle: #menuAppearance3d]. Morph useSoftDropShadow: false. SystemWindow refreshAllWindows; reconfigureWindowsForFocus. SystemProgressMorph reset. TheWorldMainDockingBar updateInstances. self changed: #stateSoftShadows. self changed: #stateHardShadows.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallAutoComplete (in category 'actions - packages') ----- + toggleInstallAutoComplete + + self + setProperty: #InstallAutoComplete + toValue: self stateInstallAutoComplete not. + self changed: #stateInstallAutoComplete.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallFFI (in category 'actions - packages') ----- + toggleInstallFFI + + self + setProperty: #InstallFFI + toValue: self stateInstallFFI not. + self changed: #stateInstallFFI.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallGitInfrastructure (in category 'actions - packages') ----- + toggleInstallGitInfrastructure + + self + setProperty: #InstallGitInfrastructure + toValue: self stateInstallGitInfrastructure not. + self changed: #stateInstallGitInfrastructure.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallLatestUpdates (in category 'actions - packages') ----- + toggleInstallLatestUpdates + + self + setProperty: #InstallLatestUpdates + toValue: self stateInstallLatestUpdates not. + self changed: #stateInstallLatestUpdates.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallOSProcess (in category 'actions - packages') ----- + toggleInstallOSProcess + + self + setProperty: #InstallOSProcess + toValue: self stateInstallOSProcess not. + self changed: #stateInstallOSProcess.! Item was added: + ----- Method: PreferenceWizardMorph>>toggleInstallRefactoringTools (in category 'actions - packages') ----- + toggleInstallRefactoringTools + + self + setProperty: #InstallRefactoringTools + toValue: self stateInstallRefactoringTools not. + self changed: #stateInstallRefactoringTools.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleReuseWindows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleReuseWindows (in category 'buttons') ----- toggleReuseWindows SystemWindow reuseWindows: SystemWindow reuseWindows not. self changed: #stateReuseWindows.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleRoundedButtonLook (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleRoundedButtonLook (in category 'buttons') ----- toggleRoundedButtonLook | switch | switch := PluggableButtonMorph roundedButtonCorners not. PluggableButtonMorph roundedButtonCorners: switch. ScrollBar roundedScrollBarLook: switch. self changed: #stateRoundedButtonLook.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleRoundedWindowLook (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleRoundedWindowLook (in category 'buttons') ----- toggleRoundedWindowLook | switch | switch := SystemWindow roundedWindowCorners not. SystemWindow roundedWindowCorners: switch. DialogWindow roundedDialogCorners: switch. MenuMorph roundedMenuCorners: switch. self changed: #stateRoundedWindowLook.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleScrollBarsNarrow (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleScrollBarsNarrow (in category 'buttons') ----- toggleScrollBarsNarrow Preferences toggle: #scrollBarsNarrow. ScrollPane allSubInstancesDo: [:ea | ea scrollBarThickness: ScrollPane scrollBarThickness]. self changed: #stateScrollBarsNarrow.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleScrollBarsOnRight (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleScrollBarsOnRight (in category 'buttons') ----- toggleScrollBarsOnRight Preferences toggle: #scrollBarsOnRight. ScrollPane allSubInstancesDo: [:ea | ea scrollBarOnLeft: self stateScrollBarsOnRight not]. self changed: #stateScrollBarsOnRight.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutArrowButtons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutArrowButtons (in category 'buttons') ----- toggleScrollBarsWithoutArrowButtons ScrollBar scrollBarsWithoutArrowButtons: ScrollBar scrollBarsWithoutArrowButtons not. self changed: #stateScrollBarsWithoutArrowButtons.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutMenuButton (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutMenuButton (in category 'buttons') ----- toggleScrollBarsWithoutMenuButton ScrollBar scrollBarsWithoutMenuButton: ScrollBar scrollBarsWithoutMenuButton not. self changed: #stateScrollBarsWithoutMenuButton.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSendMouseWheelToKeyboardFocus (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSendMouseWheelToKeyboardFocus (in category 'buttons') ----- toggleSendMouseWheelToKeyboardFocus HandMorph sendMouseWheelToKeyboardFocus: HandMorph sendMouseWheelToKeyboardFocus not. self changed: #stateSendMouseWheelToKeyboardFocus.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleShowKeyboardFocus (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleShowKeyboardFocus (in category 'buttons') ----- toggleShowKeyboardFocus Morph indicateKeyboardFocus: Morph indicateKeyboardFocus not. self changed: #stateShowKeyboardFocus.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSimpleFrameAdornments (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSimpleFrameAdornments (in category 'buttons') ----- toggleSimpleFrameAdornments PluggableTextMorph simpleFrameAdornments: PluggableTextMorph simpleFrameAdornments not. self changed: #stateSimpleFrameAdornments.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSmartHorizontalSplitters (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSmartHorizontalSplitters (in category 'buttons') ----- toggleSmartHorizontalSplitters ProportionalSplitterMorph smartHorizontalSplitters: ProportionalSplitterMorph smartHorizontalSplitters not. self changed: #stateSmartHorizontalSplitters.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSmartVerticalSplitters (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSmartVerticalSplitters (in category 'buttons') ----- toggleSmartVerticalSplitters ProportionalSplitterMorph smartVerticalSplitters: ProportionalSplitterMorph smartVerticalSplitters not. self changed: #stateSmartVerticalSplitters.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSoftShadows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSoftShadows (in category 'buttons') ----- toggleSoftShadows self stateHardShadows ifFalse: [Preferences toggle: #menuAppearance3d]. Morph useSoftDropShadow: true. SystemWindow refreshAllWindows; reconfigureWindowsForFocus. SystemProgressMorph reset. TheWorldMainDockingBar updateInstances. self changed: #stateSoftShadows. self changed: #stateHardShadows.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleSwapMouseButtons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleSwapMouseButtons (in category 'buttons') ----- toggleSwapMouseButtons Preferences toggle: #swapMouseButtons. self changed: #stateSwapMouseButtons.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleToolAndMenuIcons (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleToolAndMenuIcons (in category 'buttons') ----- toggleToolAndMenuIcons | switch | switch := Browser showClassIcons not. Browser showClassIcons: switch. Browser showMessageIcons: switch. Preferences setFlag: #menuWithIcons toValue: switch. Preferences setFlag: #visualExplorer toValue: switch. self changed: #stateToolAndMenuIcons.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleTraceMessages (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleTraceMessages (in category 'buttons') ----- toggleTraceMessages Preferences toggle: #traceMessages. self changed: #stateTraceMessages.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleUseBiggerCursors (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleUseBiggerCursors (in category 'buttons') ----- toggleUseBiggerCursors Cursor useBiggerCursors: self stateUseBiggerCursors not. Cursor currentCursor: Cursor currentCursor. self changed: #stateUseBiggerCursors.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleUseBiggerFonts (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleUseBiggerFonts (in category 'buttons') ----- toggleUseBiggerFonts [ self stateUseBiggerFonts ifFalse: [Preferences setDemoFonts] ifTrue: [Preferences restoreDefaultFonts]. ] valueSupplyingAnswer: true. self changed: #stateUseBiggerFonts.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleUseColorfulWindows (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleUseColorfulWindows (in category 'buttons') ----- toggleUseColorfulWindows Model useColorfulWindows: Model useColorfulWindows not. self changed: #stateUseColorfulWindows.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleUseRetractableScrollBars (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleUseRetractableScrollBars (in category 'buttons') ----- toggleUseRetractableScrollBars ScrollPane useRetractableScrollBars: ScrollPane useRetractableScrollBars not. self changed: #stateUseRetractableScrollBars.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleWindowButtonsAlwaysActive (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleWindowButtonsAlwaysActive (in category 'buttons') ----- toggleWindowButtonsAlwaysActive SystemWindow windowTitleActiveOnFirstClick: SystemWindow windowTitleActiveOnFirstClick not. self changed: #stateWindowButtonsAlwaysActive.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleWindowsAlwaysActive (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleWindowsAlwaysActive (in category 'buttons') ----- toggleWindowsAlwaysActive Model windowActiveOnFirstClick: Model windowActiveOnFirstClick not. self changed: #stateWindowsAlwaysActive.! Item was changed: + ----- Method: PreferenceWizardMorph>>toggleWindowsRaiseOnClick (in category 'actions - buttons') ----- - ----- Method: PreferenceWizardMorph>>toggleWindowsRaiseOnClick (in category 'buttons') ----- toggleWindowsRaiseOnClick SystemWindow windowsRaiseOnClick: SystemWindow windowsRaiseOnClick not. self changed: #stateWindowsRaiseOnClick.! Item was added: + SystemProgressMorph subclass: #PreferenceWizardProgressMorph + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: 'PreferenceBrowser'! Item was added: + ----- Method: PreferenceWizardProgressMorph class>>install (in category 'as yet unclassified') ----- + install + + self reset. + UniqueInstance := self basicNew initialize; yourself.! Item was added: + ----- Method: PreferenceWizardProgressMorph>>createProgressBar (in category 'as yet unclassified') ----- + createProgressBar + + ^ SystemProgressBarMorph new + extent: 500@20; + color: Color transparent; + barColor: Color white; + borderColor: Color white; + borderWidth: 2; + yourself + ! Item was added: + ----- Method: PreferenceWizardProgressMorph>>openInWorld (in category 'as yet unclassified') ----- + openInWorld + + "Ignore."! Item was added: + ----- Method: PreferenceWizardProgressMorph>>reposition (in category 'as yet unclassified') ----- + reposition + + "Ignore."! Item was added: + ----- Method: PreferenceWizardProgressMorph>>setDefaultParameters (in category 'as yet unclassified') ----- + setDefaultParameters + "change the receiver's appareance parameters" + + self + color: Color transparent; + borderWidth: 0; + font: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 12); + textColor: Color white.! |
|
In reply to this post by commits-2
This looks very good. It provides a comfortable "quick start" for
new users in a classroom setting, and I think it will work well for new hobby users who may be encountering Squeak for the first time. Dave On Thu, Sep 12, 2019 at 02:25:06PM +0000, [hidden email] wrote: > Marcel Taeumel uploaded a new version of PreferenceBrowser to project The Trunk: > http://source.squeak.org/trunk/PreferenceBrowser-mt.92.mcz > > ==================== Summary ==================== > > Name: PreferenceBrowser-mt.92 > Author: mt > Time: 12 September 2019, 4:25:05.125077 pm > UUID: 7ec5722c-bc3b-1c4b-8749-d0bbc537e2d5 > Ancestors: PreferenceBrowser-mt.91 > > Preference wizard > - adds scroll bars (just in case) > - adds option to install common packages > - checks for internet connection > > =============== Diff against PreferenceBrowser-mt.91 =============== > > Item was changed: > ----- Method: PreferenceWizardMorph>>accept (in category 'actions') ----- > accept > > + self showInstallPage.! > - self showSqueak.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>adjustSettingsForLowPerformance (in category 'support') ----- > - ----- Method: PreferenceWizardMorph>>adjustSettingsForLowPerformance (in category 'actions') ----- > adjustSettingsForLowPerformance > > self updateLowPerformanceLabel: 'Please wait, optimizing performance...' translated. > self refreshWorld. > > self stateGradients "flat look" ifFalse: [self toggleGradients]. > self stateBlinkingCursor ifTrue: [self toggleBlinkingCursor]. > self stateFastDrag ifFalse: [self toggleFastDrag]. > > self stateSoftShadows ifTrue: [self toggleSoftShadows]. > self stateHardShadows ifTrue: [self toggleHardShadows]. > > self stateRoundedWindowLook ifTrue: [self toggleRoundedWindowLook]. > self stateRoundedButtonLook ifTrue: [self toggleRoundedButtonLook]. > > self stateAttachToolsToMouse ifTrue: [self toggleAttachToolsToMouse]. > self stateToolAndMenuIcons ifTrue: [self toggleToolAndMenuIcons]. > > self stateSmartHorizontalSplitters ifTrue: [self toggleSmartHorizontalSplitters]. > self stateSmartVerticalSplitters ifTrue: [self toggleSmartVerticalSplitters]. > > PluggableListMorph highlightHoveredRow: false; filterableLists: false. > TheWorldMainDockingBar showSecondsInClock: false. > Preferences disable: #balloonHelpInMessageLists. > > > "Set simple background." > ActiveWorld setAsBackground: MorphicProject defaultFill. > previewWorld fillStyle: ActiveWorld fillStyle. > > "Done." > self updateLowPerformanceLabel: 'Settings were adjusted for optimal performance.' translated. > ! > > Item was added: > + ----- Method: PreferenceWizardMorph>>checkInternetOn: (in category 'updating') ----- > + checkInternetOn: button > + > + self isInWorld ifFalse: [^ self]. > + (self hasProperty: #checkInternet) ifFalse: [^ self]. > + > + self hasInternetConnection > + ifTrue: [button enabled: true; label: 'Yes, install selected packages.' translated] > + ifFalse: [button enabled: false; label: 'Please check your internet connection...' translated]. > + > + (self future: 1000) checkInternetOn: button.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>chooseTheme: (in category 'support') ----- > - ----- Method: PreferenceWizardMorph>>chooseTheme: (in category 'actions') ----- > chooseTheme: aTheme > > aTheme apply. > > "The theme does not theme this fake world." > + previewWorld fillStyle: self world fillStyle.! > - previewWorld fillStyle: ActiveWorld fillStyle.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createButton (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createButton (in category 'initialization') ----- > createButton > > ^ PluggableButtonMorphPlus new > setProperty: #noUserInterfaceTheme toValue: true; > offColor: (self defaultColor adjustBrightness: 0.2); > feedbackColor: (self defaultColor adjustBrightness: 0.4); > model: self; > font: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 12); > textColor: self defaultTextColor; > borderColor: self defaultTextColor; > instVarNamed: #borderColor put: self defaultTextColor; "HACK!!" > borderWidth: 2; > cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]); > vResizing: #shrinkWrap; > hResizing: #shrinkWrap; > layoutInset: (20@10 corner: 20@10); > yourself! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createCheckbox:for: (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createCheckbox:for: (in category 'initialization') ----- > createCheckbox: label for: selector > > ^ self > createCheckbox: label > for: selector > help: #()! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createCheckbox:for:help: (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createCheckbox:for:help: (in category 'initialization') ----- > createCheckbox: label for: selector help: terms > > | box lbl btn | > > btn := self createButton > layoutInset: 0; > label: ' '; > onColor: (self defaultColor adjustBrightness: 0.3) offColor: (self defaultColor adjustBrightness: 0.3); > vResizing: #rigid; > hResizing: #rigid; > action: ('toggle', selector) asSymbol; > getStateSelector: ('state', selector) asSymbol; > getLabelSelector: ('label', selector) asSymbol; > extent: 25@25. > > lbl := self createLabel: label color: self defaultTextColor. > + lbl hResizing: #spaceFill. > > box := Morph new > color: Color transparent; > changeTableLayout; > listDirection: #leftToRight; > cellPositioning: #topLeft; > hResizing: #spaceFill; > vResizing: #shrinkWrap; > + rubberBandCells: true; > cellGap: 10; > yourself. > > box addAllMorphs: {btn. lbl}. > self > setBalloonText: (terms isString ifTrue: [terms] ifFalse: [self findHelpStringFor: terms]) > for: box. > ^ box! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createHorizontalSpacer (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createHorizontalSpacer (in category 'initialization') ----- > createHorizontalSpacer > > ^ Morph new > color: Color transparent; > hResizing: #spaceFill; > extent: 5@5; > yourself! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createLabel: (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createLabel: (in category 'initialization') ----- > createLabel: aString > > ^ self createLabel: aString color: (self defaultTextColor adjustBrightness: -0.1)! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createLabel:color: (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createLabel:color: (in category 'initialization') ----- > createLabel: aString color: aColor > > ^ self createLabel: aString color: aColor pointSize: 12! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createLabel:color:pointSize: (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createLabel:color:pointSize: (in category 'initialization') ----- > createLabel: aString color: aColor pointSize: size > > | lbl | > lbl := TextMorph new hResizing: #spaceFill; vResizing: #shrinkWrap. > lbl newContents:aString. > lbl text > addAttribute: (TextColor color: aColor); > addAttribute: (TextFontReference toFont: ((StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: size))). > lbl lock. > ^ lbl! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createPage (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createPage (in category 'initialization') ----- > createPage > > ^ Morph new > color: Color transparent; > hResizing: #spaceFill; > vResizing: #spaceFill; > changeTableLayout; > listDirection: #topToBottom; > cellPositioning: #topLeft; > + layoutInset: (20@20 corner: 10@0); > - layoutInset: 20; > cellGap: 10; > yourself! > > Item was added: > + ----- Method: PreferenceWizardMorph>>createScrollPane (in category 'initialization - building') ----- > + createScrollPane > + > + | pane | > + pane := ScrollPane new > + setProperty: #noUserInterfaceTheme toValue: true; > + hScrollBarPolicy: #never; > + vScrollBarPolicy: #whenNeeded; > + borderWidth: 0; > + color: Color transparent; > + scrollBarThickness: 20; > + yourself. > + > + pane > + hResizing: #spaceFill; > + vResizing: #spaceFill. > + > + pane scroller changeTableLayout. > + pane scroller addMorph: (Morph new > + changeTableLayout; > + color: Color transparent; > + hResizing: #spaceFill; > + vResizing: #shrinkWrap; > + cellGap: 10; > + layoutInset: (0@0 corner: 10@0); > + yourself). > + > + pane vScrollBar > + setProperty: #noUserInterfaceTheme toValue: true; > + sliderColor: Color white. > + (pane vScrollBar instVarNamed: #slider) > + cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]); > + borderWidth: 2. > + (pane vScrollBar instVarNamed: #pagingArea) > + cornerStyle: (self hasLowPerformance ifTrue: [#square] ifFalse: [#rounded]). > + > + ^ pane! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createVerticalSpace (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createVerticalSpace (in category 'initialization') ----- > createVerticalSpace > > ^ Morph new > color: Color transparent; > vResizing: #rigid; > extent: 5@5; > yourself! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>createVerticalSpacer (in category 'initialization - building') ----- > - ----- Method: PreferenceWizardMorph>>createVerticalSpacer (in category 'initialization') ----- > createVerticalSpacer > > ^ Morph new > color: Color transparent; > vResizing: #spaceFill; > extent: 5@5; > yourself! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>doesNotUnderstand: (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>doesNotUnderstand: (in category 'buttons') ----- > doesNotUnderstand: msg > > (msg selector numArgs = 0 and: [msg selector beginsWith: 'label']) > ifTrue: [^ (self perform: ('state', (msg selector allButFirst: 5)) asSymbol) > ifTrue: [self checkmark] > ifFalse: [' '] ]. > > ^ super doesNotUnderstand: msg! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>findHelpStringFor: (in category 'support') ----- > - ----- Method: PreferenceWizardMorph>>findHelpStringFor: (in category 'initialization') ----- > findHelpStringFor: someTerms > > someTerms ifEmpty: [^ '']. > > ^ Preferences allPreferences > detect:[:pref | someTerms allSatisfy: [:term| pref name includesSubstring: term caseSensitive: false]] > ifFound: [:pref | (pref helpString lines joinSeparatedBy: ' ') withBlanksTrimmed] > ifNone: ['']! > > Item was added: > + ----- Method: PreferenceWizardMorph>>hasInternetConnection (in category 'testing') ----- > + hasInternetConnection > + > + ^ [TestCase new ensureSecureInternetConnection. true] > + on: Error do: [false]! > > Item was changed: > ----- Method: PreferenceWizardMorph>>initialize (in category 'initialization') ----- > initialize > > super initialize. > > isFullScreen := false. > > self hasLowPerformance > ifTrue: [self color: self defaultColor] > ifFalse: [self color: (self defaultColor alpha: 0.75)]. > > self setProperty: #indicateKeyboardFocus toValue: #never. > > Preferences enable: #systemWindowEmbedOK. > > titleMorph := ('Welcome to Squeak' translated asText > addAttribute: (TextColor color: self defaultTextColor); > addAttribute: (TextFontReference toFont: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 20)); > yourself) asMorph lock. > titleMorph margins: (10@0 corner: 10@10). > titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 0) offsets: (0@ 0 corner: 0 @ titleMorph height)). > > self > initializePages; > initializeButtons; > initializeControlMorph; > initializePreviewWorld; > initializeForLowPerformance. > > self > changeProportionalLayout; > layoutInset: 20; > cellGap: 10; > cellPositioning: #center; > addAllMorphs: {titleMorph. buttonRowMorph. controlMorph. previewWorld. startButton. skipButton. lowPerformanceMorph}. > > self addKeyboardCaptureFilter: self.! > > Item was changed: > ----- Method: PreferenceWizardMorph>>initializeButtons (in category 'initialization') ----- > initializeButtons > > buttonRowMorph := Morph new > color: Color transparent; > changeTableLayout; > listDirection: #leftToRight; > cellGap: 10; > layoutInset: (0@20 corner: 0@0); > vResizing: #shrinkWrap; > hResizing: #spaceFill; > yourself. > > buttonRowMorph addAllMorphs: { > previousButton := self createButton action: #previous; label: 'Previous' translated. > pagesLabel := (self createLabel: '0 / 0') hResizing: #shrinkWrap; margins: (20@0 corner: 20@0); fullBounds; yourself. > nextButton := self createButton action: #next; label: 'Next' translated. > self createHorizontalSpacer. > + self createButton action: #accept; label: 'Done' translated}. > - self createButton action: #showSqueak; label: 'Done' translated}. > > > buttonRowMorph fullBounds. > buttonRowMorph layoutFrame: (LayoutFrame fractions: (0 @ 1 corner: 1 @ 1) offsets: (0@ buttonRowMorph height negated corner: 0 @ 0)). > > > > startButton := (self createButton action: #showPlayfield; label: 'Configure' translated). > skipButton := (self createButton action: #showSqueak; label: 'Skip' translated). > > (startButton width max: skipButton width) in: [:w | > startButton hResizing: #rigid; width: w. > skipButton hResizing: #rigid; width: w. > > startButton layoutFrame: (LayoutFrame fractions: (0.5 @ 0.6 corner: 0.5 @ 0.6) offsets: (2*w negated @ 0 corner: 0 @ 0)). > skipButton layoutFrame: (LayoutFrame fractions: (0.5 @ 0.6 corner: 0.5 @ 0.6) offsets: (0@ 0 corner: 2*w @ 0))].! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage01Themes (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage01Themes (in category 'initialization') ----- > initializePage01Themes > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose a theme:' color: Color white). > + currentPage addMorphBack: pane. > + > ((UserInterfaceTheme allThemes > reject: [:uit | uit name beginsWith: 'Demo']) > sorted: [:a :b | a name <= b name]) > do: [:ea | > + pane scroller firstSubmorph addMorphBack: (self createButton > - currentPage addMorphBack: (self createButton > label: ea name; > hResizing: #spaceFill; > action: #chooseTheme:; > arguments: {ea})]. > + > - currentPage addMorphBack: self createVerticalSpacer. > ! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage02Visuals (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage02Visuals (in category 'initialization') ----- > initializePage02Visuals > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose visual settings' color: Color white). > + currentPage addMorphBack: pane. > > + pane scroller firstSubmorph addAllMorphsBack: { > - > - currentPage addAllMorphsBack: { > self createCheckbox: 'Colorful windows' translated for: #UseColorfulWindows help: #(color window). > self createCheckbox: 'Flat widget look' translated for: #Gradients help: 'Whether to use gradients or not.' translated. > self createVerticalSpace. > self createCheckbox: 'Rounded windows' translated for: #RoundedWindowLook help: #(round window). > self createCheckbox: 'Rounded buttons' translated for: #RoundedButtonLook help: #(round button). > self createVerticalSpace. > self createCheckbox: 'Soft shadows' translated for: #SoftShadows help: #(soft shadow). > self createCheckbox: 'Hard shadows' translated for: #HardShadows help: 'Whether to use a hard shadow for windows, menus, and dialogs.' translated. > self createVerticalSpace. > self createCheckbox: 'Fast drag and resize' translated for: #FastDrag help: #(fast drag). > self createCheckbox: 'Blinking text cursor' translated for: #BlinkingCursor help: #(blinking cursor). > self createCheckbox: 'Show keyboard focus' translated for: #ShowKeyboardFocus help: #(keyboard indicate). > self createCheckbox: 'Simple edit indication' translated for: #SimpleFrameAdornments help: #(adornment simple). > + }.! > - }. > - > - currentPage addMorphBack: self createVerticalSpacer. > - ! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage02bVisualsMore (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage02bVisualsMore (in category 'initialization') ----- > initializePage02bVisualsMore > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose more visual settings' color: Color white). > + currentPage addMorphBack: pane. > > + pane scroller firstSubmorph addAllMorphsBack: { > - currentPage addAllMorphsBack: { > self createCheckbox: 'Bigger Fonts' translated for: #UseBiggerFonts help: 'For high-DPI displays, bigger fonts can improve readability.'. > self createCheckbox: 'Bigger Cursors' translated for: #UseBiggerCursors help: #(bigger cursor). > + }.! > - }. > - > - currentPage addMorphBack: self createVerticalSpacer. > - ! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage03Interaction (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage03Interaction (in category 'initialization') ----- > initializePage03Interaction > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose interaction settings' color: Color white). > + currentPage addMorphBack: pane. > > + pane scroller firstSubmorph addAllMorphsBack: { > - > - currentPage addAllMorphsBack: { > self createCheckbox: 'Swap mouse buttons' translated for: #SwapMouseButtons help: #(swap mouse). > self createCheckbox: 'Focus follows mouse' translated for: #FocusFollowsMouse help: #(mouse over keyboard). > self createCheckbox: 'Mouse wheel to focus' translated for: #SendMouseWheelToKeyboardFocus help: #(wheel keyboard). > self createVerticalSpace. > self createCheckbox: 'Auto enclose brackets' translated for: #AutoEnclose help: #(auto enclose). > self createCheckbox: 'Auto indent lines' translated for: #AutoIndent help: #(auto indent). > self createCheckbox: 'Enclose text selections' translated for: #EncloseSelection help: #(enclose selection). > self createVerticalSpace. > self createCheckbox: 'Arrows in scrollbar' translated for: #ScrollBarsWithoutArrowButtons help: 'Whether to show arrows for scrolling or not.' translated. > self createCheckbox: 'Menu in scrollbar' translated for: #ScrollBarsWithoutMenuButton help: 'Whether to show a menu button or not.' translated. > self createCheckbox: 'Scrollbars on the right' translated for: #ScrollBarsOnRight help: #(right scroll). > self createCheckbox: 'Retractable scrollbars' translated for: #UseRetractableScrollBars help: #(retractable). > self createCheckbox: 'Narrow scrollbars' translated for: #ScrollBarsNarrow help: #(narrow scroll). > > + }.! > - }. > - > - currentPage addMorphBack: self createVerticalSpacer. > - ! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage04InteractionMore (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage04InteractionMore (in category 'initialization') ----- > initializePage04InteractionMore > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose more interaction settings' color: Color white). > + currentPage addMorphBack: pane. > > + pane scroller firstSubmorph addAllMorphsBack: { > - > - currentPage addAllMorphsBack: { > self createCheckbox: 'Windows raise on click' translated for: #WindowsRaiseOnClick help: #(window raise). > self createCheckbox: 'Windows always active' for: #WindowsAlwaysActive help: #(window content active). > self createCheckbox: 'Window buttons always active' translated for: #WindowButtonsAlwaysActive help: #(window control active). > self createVerticalSpace. > self createCheckbox: 'Smart horizontal splitters' translated for: #SmartHorizontalSplitters help: #(horizontal splitter). > self createCheckbox: 'Smart vertical splitters' translated for: #SmartVerticalSplitters help: #(vertical splitter). > self createVerticalSpace. > self createCheckbox: 'Filterable lists and trees' translated for: #FilterableLists help: #(filterable). > self createCheckbox: 'Filters clear if unfocused' translated for: #ClearFilterAutomatically help: #(filter clear). > self createVerticalSpace. > self createCheckbox: 'Attach tools to mouse' translated for: #AttachToolsToMouse help: #(tools attach). > + }.! > - }. > - > - currentPage addMorphBack: self createVerticalSpacer. > - ! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>initializePage05Tools (in category 'initialization - pages') ----- > - ----- Method: PreferenceWizardMorph>>initializePage05Tools (in category 'initialization') ----- > initializePage05Tools > > + | currentPage pane | > - | currentPage | > currentPage := pages add: self createPage. > + pane := self createScrollPane. > + > currentPage addMorphBack: (self createLabel: 'Choose other settings' color: Color white). > + currentPage addMorphBack: pane. > > + pane scroller firstSubmorph addAllMorphsBack: { > - > - currentPage addAllMorphsBack: { > self createCheckbox: 'Trace messages browser' translated for: #TraceMessages help: #(trace message). > self createCheckbox: 'Reuse tool windows' translated for: #ReuseWindows help: #(window reuse). > self createCheckbox: 'Tool and menu icons' translated for: #ToolAndMenuIcons help: 'Whether to show icons in tools and menus.' translated. > self createCheckbox: 'Browse class hierarchy' translated for: #AlternativeBrowseIt help: 'Whether to spawn a hierarchy browser or full system browser on browse-it commands.' translated. > }. > - > - currentPage addMorphBack: self createVerticalSpacer. > ! > > Item was added: > + ----- Method: PreferenceWizardMorph>>initializePage99ExtraPackages (in category 'initialization - pages') ----- > + initializePage99ExtraPackages > + "Let the user install extra packages." > + > + | currentPage packagesList installButton | > + currentPage := self createPage. > + currentPage > + cellPositioning: #topCenter; > + layoutInset: (150@40 corner: 150@20); > + addMorphBack: self createHorizontalSpacer; > + addMorphBack: ((self createLabel: 'Do you want to install extra packages?' color: Color white) > + hResizing: #shrinkWrap; > + yourself); > + addMorphBack: ((self createLabel: 'Note that the installation process requires an internet connection and may take several minutes.' color: (Color gray: 0.9)) > + hResizing: #rigid; > + vResizing: #shrinkWrap; > + width: 450; > + yourself). > + > + currentPage submorphs last text addAttribute: TextAlignment centered. > + currentPage submorphs last layoutChanged. > + > + currentPage addMorphBack: (self createVerticalSpace height: 20). > + > + packagesList := self createScrollPane. > + packagesList > + width: 350; > + hResizing: #rigid; > + vResizing: #spaceFill. > + > + packagesList scroller firstSubmorph addAllMorphsBack: { > + self createCheckbox: 'Latest system updates' translated for: #InstallLatestUpdates help: 'Install the latest patches for ' translated, SystemVersion current version. > + self createCheckbox: 'Refactoring support in code browsers' translated for: #InstallRefactoringTools help: 'Refactoring is a process of re-writing or re-organizing text or code. The purpose of a refactor is to make the code or text more understandable and readable while exactly preserving its meaning and behavior.' translated. > + self createCheckbox: 'Autocomplete in code editors' translated for: #InstallAutoComplete help: 'Package that provides interactive, context-sensitive auto-completion for Squeak.' translated. > + self createCheckbox: 'Git support and browser' translated for: #InstallGitInfrastructure help: 'From the Git Browser, you can create new commits, synchronize with remote repositories (fetch, pull, push), manage and merge branches, switch between them, and compare different versions.' translated. > + self createCheckbox: 'Foreign function interface (FFI)' translated for: #InstallFFI help: 'FFI, the Squeak Foreign Function Interface, is used to call functions located in shared libraries that are not part of the Squeak VM nor its plugins' translated. > + self createCheckbox: 'Access OS functions' translated for: #InstallOSProcess help: 'OSProcess provides access to operating system functions, including pipes and child process creation.' translated. > + }. > + > + currentPage addMorphBack: packagesList. > + > + currentPage addMorphBack: ((self createLabel: 'Find more on www.squeak.org/projects' color: (Color gray: 0.9)) > + hResizing: #shrinkWrap; yourself). > + > + installButton := (self createButton action: #installExtraPackages). > + currentPage addMorphBack: installButton. > + currentPage addMorphBack: (self createButton action: #showSqueak; label: 'No, maybe later.' translated). > + > + self setProperty: #checkInternet toValue: true. > + self checkInternetOn: installButton. > + > + ^ currentPage! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installAutoComplete (in category 'actions - packages') ----- > + installAutoComplete > + > + Metacello new > + configuration: 'OCompletion'; > + load.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installExtraPackages (in category 'actions') ----- > + installExtraPackages > + "Removes the buttons and adds the progress bar during installation." > + > + | steps page | > + self removeProperty: #checkInternet. "No frequent checks for connectivity from here." > + > + steps := #( > + InstallLatestUpdates > + InstallMetacello > + InstallRefactoringTools > + InstallAutoComplete > + InstallGitInfrastructure > + InstallFFI > + InstallOSProcess ) > + select: [:ea | self perform: ('state', ea) asSymbol] > + thenCollect: [:ea | ea withFirstCharacterDownshifted asSymbol]. > + > + page := controlMorph firstSubmorph. > + > + page submorphs second hide. "question" > + page submorphs last delete. "url" > + page submorphs last delete. "no button" > + page submorphs last delete. "yes button" > + page submorphs last delete. "package list" > + > + self refreshWorld. > + > + [ > + PreferenceWizardProgressMorph install. > + page > + addMorphBack: PreferenceWizardProgressMorph uniqueInstance; > + addMorphBack: self createVerticalSpacer. > + > + steps > + do: [:step | self perform: step] > + displayingProgress: [:step | (step findFeatures joinSeparatedBy: String space), ' ...']. > + ] ensure: [ > + PreferenceWizardProgressMorph reset. > + self showSqueak].! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installFFI (in category 'actions - packages') ----- > + installFFI > + > + Metacello new > + configuration: 'FFI'; > + load.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installGitInfrastructure (in category 'actions - packages') ----- > + installGitInfrastructure > + > + Installer installGitInfrastructure.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installLatestUpdates (in category 'actions - packages') ----- > + installLatestUpdates > + > + MCConfiguration ensureOpenTranscript: false. > + [MCMcmUpdater default doUpdate: false] > + ensure: [MCConfiguration ensureOpenTranscript: true].! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installMetacello (in category 'actions - packages') ----- > + installMetacello > + > + Installer ensureRecentMetacello.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installOSProcess (in category 'actions - packages') ----- > + installOSProcess > + > + Metacello new > + configuration: 'OSProcess'; > + load.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>installRefactoringTools (in category 'actions - packages') ----- > + installRefactoringTools > + > + Metacello new > + configuration: 'RefactoringTools'; > + version: '2.0'; > + load.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>refreshWorld (in category 'updating') ----- > - ----- Method: PreferenceWizardMorph>>refreshWorld (in category 'initialization') ----- > refreshWorld > > self world layoutChanged. "To be really sure to update docking bars..." > self world fullBounds. "Avoid flickering..." > self world doOneCycle.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>setBalloonText:for: (in category 'support') ----- > - ----- Method: PreferenceWizardMorph>>setBalloonText:for: (in category 'initialization') ----- > setBalloonText: string for: morph > > morph > balloonColor: ((self defaultColor alpha: self color alpha) adjustBrightness: 0.2); > balloonText: (string asText > addAttribute: (TextFontReference toFont: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 9)); > addAttribute: (TextColor color: Color banana)).! > > Item was added: > + ----- Method: PreferenceWizardMorph>>showInstallPage (in category 'actions') ----- > + showInstallPage > + > + buttonRowMorph delete. > + previewWorld delete. > + > + "self refreshWorld." > + > + controlMorph > + removeAllMorphs; > + layoutInset: 0; > + layoutFrame: (LayoutFrame fractions: (0.0 @ 0 corner: 1.0 @ 1.0) offsets: (0@ titleMorph height corner: 0 @ 0)); > + addMorphBack: self initializePage99ExtraPackages. > + > + "self refreshWorld."! > > Item was changed: > ----- Method: PreferenceWizardMorph>>showPlayfield (in category 'actions') ----- > showPlayfield > > startButton hide. > skipButton hide. > lowPerformanceMorph hide. > isFullScreen := true. > self step. > > titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 0) offsets: (0@ 0 corner: 0 @ titleMorph height)). > - self refreshWorld. > - (Delay forMilliseconds: 1000) wait. > > + self refreshWorld. > + 500 milliSeconds wait. > > controlMorph show. > previewWorld show. > buttonRowMorph show. > > self next. > self refreshWorld. > > ! > > Item was changed: > ----- Method: PreferenceWizardMorph>>showSqueak (in category 'actions') ----- > showSqueak > > + self removeProperty: #checkInternet. > self isInWelcome ifTrue: [^ self delete]. > > buttonRowMorph hide. > controlMorph hide. > previewWorld hide. > > self refreshWorld. > + 500 milliSeconds wait. > - (Delay forMilliseconds: 1000) wait. > > - > titleMorph layoutFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 1)). > + > self refreshWorld. > + 500 milliSeconds wait. > + > - (Delay forMilliseconds: 1000) wait. > self delete.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateAlternativeBrowseIt (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateAlternativeBrowseIt (in category 'buttons') ----- > stateAlternativeBrowseIt > > ^ Preferences valueOfFlag: #alternativeBrowseIt ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateAttachToolsToMouse (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateAttachToolsToMouse (in category 'buttons') ----- > stateAttachToolsToMouse > > ^ Project uiManager openToolsAttachedToMouseCursor! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateAutoEnclose (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateAutoEnclose (in category 'buttons') ----- > stateAutoEnclose > > ^ TextEditor autoEnclose! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateAutoIndent (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateAutoIndent (in category 'buttons') ----- > stateAutoIndent > > ^ TextEditor autoIndent! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateBlinkingCursor (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateBlinkingCursor (in category 'buttons') ----- > stateBlinkingCursor > > ^ TextEditor blinkingCursor! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateClearFilterAutomatically (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateClearFilterAutomatically (in category 'buttons') ----- > stateClearFilterAutomatically > > ^ PluggableListMorph clearFilterAutomatically! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateEncloseSelection (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateEncloseSelection (in category 'buttons') ----- > stateEncloseSelection > > ^ TextEditor encloseSelection! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateFastDrag (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateFastDrag (in category 'buttons') ----- > stateFastDrag > > ^ Preferences valueOfFlag: #fastDragWindowForMorphic ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateFilterableLists (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateFilterableLists (in category 'buttons') ----- > stateFilterableLists > > ^ PluggableListMorph filterableLists! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateFocusFollowsMouse (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateFocusFollowsMouse (in category 'buttons') ----- > stateFocusFollowsMouse > > ^ Preferences valueOfFlag: #mouseOverForKeyboardFocus ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateGradients (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateGradients (in category 'buttons') ----- > stateGradients > > ^ SystemWindow gradientWindow not! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateHardShadows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateHardShadows (in category 'buttons') ----- > stateHardShadows > > ^ (Preferences valueOfFlag: #menuAppearance3d ifAbsent: [false]) and: [Morph useSoftDropShadow not]! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallAutoComplete (in category 'actions - packages') ----- > + stateInstallAutoComplete > + > + ^ self > + valueOfProperty: #InstallAutoComplete > + ifAbsent: [false] > + ! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallFFI (in category 'actions - packages') ----- > + stateInstallFFI > + > + ^ self > + valueOfProperty: #InstallFFI > + ifAbsent: [false]! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallGitInfrastructure (in category 'actions - packages') ----- > + stateInstallGitInfrastructure > + > + ^ self > + valueOfProperty: #InstallGitInfrastructure > + ifAbsent: [false]! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallLatestUpdates (in category 'actions - packages') ----- > + stateInstallLatestUpdates > + > + ^ self > + valueOfProperty: #InstallLatestUpdates > + ifAbsent: [true] > + ! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallMetacello (in category 'actions - packages') ----- > + stateInstallMetacello > + > + ^ #( > + InstallRefactoringTools > + InstallAutoComplete > + InstallGitInfrastructure > + InstallFFI > + InstallOSProcess ) > + anySatisfy: [:ea | self perform: ('state', ea) asSymbol]! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallOSProcess (in category 'actions - packages') ----- > + stateInstallOSProcess > + > + ^ self > + valueOfProperty: #InstallOSProcess > + ifAbsent: [false]! > > Item was added: > + ----- Method: PreferenceWizardMorph>>stateInstallRefactoringTools (in category 'actions - packages') ----- > + stateInstallRefactoringTools > + > + ^ self > + valueOfProperty: #InstallRefactoringTools > + ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateReuseWindows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateReuseWindows (in category 'buttons') ----- > stateReuseWindows > > ^ SystemWindow reuseWindows! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateRoundedButtonLook (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateRoundedButtonLook (in category 'buttons') ----- > stateRoundedButtonLook > > ^ PluggableButtonMorph roundedButtonCorners! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateRoundedWindowLook (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateRoundedWindowLook (in category 'buttons') ----- > stateRoundedWindowLook > > ^ SystemWindow roundedWindowCorners! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateScrollBarsNarrow (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateScrollBarsNarrow (in category 'buttons') ----- > stateScrollBarsNarrow > > ^ Preferences valueOfPreference: #scrollBarsNarrow ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateScrollBarsOnRight (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateScrollBarsOnRight (in category 'buttons') ----- > stateScrollBarsOnRight > > ^ Preferences valueOfFlag: #scrollBarsOnRight ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutArrowButtons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutArrowButtons (in category 'buttons') ----- > stateScrollBarsWithoutArrowButtons > > ^ ScrollBar scrollBarsWithoutArrowButtons not! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutMenuButton (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateScrollBarsWithoutMenuButton (in category 'buttons') ----- > stateScrollBarsWithoutMenuButton > > ^ ScrollBar scrollBarsWithoutMenuButton not! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSendMouseWheelToKeyboardFocus (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSendMouseWheelToKeyboardFocus (in category 'buttons') ----- > stateSendMouseWheelToKeyboardFocus > > ^ HandMorph sendMouseWheelToKeyboardFocus! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateShowKeyboardFocus (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateShowKeyboardFocus (in category 'buttons') ----- > stateShowKeyboardFocus > > ^ Morph indicateKeyboardFocus! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSimpleFrameAdornments (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSimpleFrameAdornments (in category 'buttons') ----- > stateSimpleFrameAdornments > > ^ PluggableTextMorph simpleFrameAdornments! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSmartHorizontalSplitters (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSmartHorizontalSplitters (in category 'buttons') ----- > stateSmartHorizontalSplitters > > ^ ProportionalSplitterMorph smartHorizontalSplitters! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSmartVerticalSplitters (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSmartVerticalSplitters (in category 'buttons') ----- > stateSmartVerticalSplitters > > ^ ProportionalSplitterMorph smartVerticalSplitters! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSoftShadows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSoftShadows (in category 'buttons') ----- > stateSoftShadows > > ^ (Preferences valueOfFlag: #menuAppearance3d ifAbsent: [false]) and: [Morph useSoftDropShadow]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateSwapMouseButtons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateSwapMouseButtons (in category 'buttons') ----- > stateSwapMouseButtons > > ^ Preferences valueOfFlag: #swapMouseButtons ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateToolAndMenuIcons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateToolAndMenuIcons (in category 'buttons') ----- > stateToolAndMenuIcons > > ^ Browser showClassIcons! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateTraceMessages (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateTraceMessages (in category 'buttons') ----- > stateTraceMessages > > ^ Preferences valueOfFlag: #traceMessages ifAbsent: [false]! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateUseBiggerCursors (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateUseBiggerCursors (in category 'buttons') ----- > stateUseBiggerCursors > > ^ Cursor useBiggerCursors! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateUseBiggerFonts (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateUseBiggerFonts (in category 'buttons') ----- > stateUseBiggerFonts > > ^ UserInterfaceTheme current name beginsWith: 'Demo'! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateUseColorfulWindows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateUseColorfulWindows (in category 'buttons') ----- > stateUseColorfulWindows > > ^ Model useColorfulWindows! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateUseRetractableScrollBars (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateUseRetractableScrollBars (in category 'buttons') ----- > stateUseRetractableScrollBars > > ^ ScrollPane useRetractableScrollBars! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateWindowButtonsAlwaysActive (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateWindowButtonsAlwaysActive (in category 'buttons') ----- > stateWindowButtonsAlwaysActive > > ^ SystemWindow windowTitleActiveOnFirstClick! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateWindowsAlwaysActive (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateWindowsAlwaysActive (in category 'buttons') ----- > stateWindowsAlwaysActive > > ^ Model windowActiveOnFirstClick! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stateWindowsRaiseOnClick (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>stateWindowsRaiseOnClick (in category 'buttons') ----- > stateWindowsRaiseOnClick > > ^ SystemWindow windowsRaiseOnClick! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>step (in category 'stepping') ----- > - ----- Method: PreferenceWizardMorph>>step (in category 'stepping and presenter') ----- > step > > | oldWidth oldBounds | > "self comeToFront." > > isFullScreen == true > ifTrue: [ > oldBounds := self bounds. > self bounds: self world bounds. > self bounds = oldBounds ifFalse: [ > self updateWindowBounds]] > ifFalse: [ > oldWidth := self width. > self width: self world width. > self center: self world center. > self width = oldWidth ifFalse: [ > self updateWindowBounds]].! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>stepTime (in category 'stepping') ----- > - ----- Method: PreferenceWizardMorph>>stepTime (in category 'stepping and presenter') ----- > stepTime > ^ 1000! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleAlternativeBrowseIt (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleAlternativeBrowseIt (in category 'buttons') ----- > toggleAlternativeBrowseIt > > Preferences toggle: #alternativeBrowseIt. > self changed: #stateAlternativeBrowseIt.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleAttachToolsToMouse (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleAttachToolsToMouse (in category 'buttons') ----- > toggleAttachToolsToMouse > > Project uiManager openToolsAttachedToMouseCursor: Project uiManager openToolsAttachedToMouseCursor not. > self changed: #stateAttachToolsToMouse.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleAutoEnclose (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleAutoEnclose (in category 'buttons') ----- > toggleAutoEnclose > > TextEditor autoEnclose: TextEditor autoEnclose not. > self changed: #stateAutoEnclose.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleAutoIndent (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleAutoIndent (in category 'buttons') ----- > toggleAutoIndent > > TextEditor autoIndent: TextEditor autoIndent not. > self changed: #stateAutoIndent.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleBlinkingCursor (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleBlinkingCursor (in category 'buttons') ----- > toggleBlinkingCursor > > TextEditor blinkingCursor: TextEditor blinkingCursor not. > > TextMorph allSubInstancesDo: [:ea | > ea stopBlinking. > ea hasFocus ifTrue: [ > Editor blinkingCursor > ifTrue: [ea startBlinking] > ifFalse: [ea resetBlinkCursor "ensure caret visible"]]]. > > self changed: #stateBlinkingCursor.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleClearFilterAutomatically (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleClearFilterAutomatically (in category 'buttons') ----- > toggleClearFilterAutomatically > > PluggableListMorph clearFilterAutomatically: PluggableListMorph clearFilterAutomatically not. > self changed: #stateClearFilterAutomatically.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleEncloseSelection (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleEncloseSelection (in category 'buttons') ----- > toggleEncloseSelection > > TextEditor encloseSelection: TextEditor encloseSelection not. > self changed: #stateEncloseSelection.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleFastDrag (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleFastDrag (in category 'buttons') ----- > toggleFastDrag > > Preferences toggle: #fastDragWindowForMorphic. > self changed: #stateFastDrag.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleFilterableLists (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleFilterableLists (in category 'buttons') ----- > toggleFilterableLists > > PluggableListMorph filterableLists: PluggableListMorph filterableLists not. > self changed: #stateFilterableLists.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleFocusFollowsMouse (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleFocusFollowsMouse (in category 'buttons') ----- > toggleFocusFollowsMouse > > Preferences toggle: #mouseOverForKeyboardFocus. > self changed: #stateFocusFollowsMouse.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleGradients (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleGradients (in category 'buttons') ----- > toggleGradients > > | switch | > switch := SystemWindow gradientWindow not. > > SystemWindow gradientWindow: switch. > DialogWindow gradientDialog: switch. > MenuMorph gradientMenu: switch. > ScrollBar gradientScrollBar: switch. > PluggableButtonMorph gradientButton: switch. > > self changed: #stateGradients.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleHardShadows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleHardShadows (in category 'buttons') ----- > toggleHardShadows > > self stateSoftShadows > ifFalse: [Preferences toggle: #menuAppearance3d]. > > Morph useSoftDropShadow: false. > > SystemWindow refreshAllWindows; reconfigureWindowsForFocus. > SystemProgressMorph reset. > TheWorldMainDockingBar updateInstances. > > self changed: #stateSoftShadows. > self changed: #stateHardShadows.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallAutoComplete (in category 'actions - packages') ----- > + toggleInstallAutoComplete > + > + self > + setProperty: #InstallAutoComplete > + toValue: self stateInstallAutoComplete not. > + self changed: #stateInstallAutoComplete.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallFFI (in category 'actions - packages') ----- > + toggleInstallFFI > + > + self > + setProperty: #InstallFFI > + toValue: self stateInstallFFI not. > + self changed: #stateInstallFFI.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallGitInfrastructure (in category 'actions - packages') ----- > + toggleInstallGitInfrastructure > + > + self > + setProperty: #InstallGitInfrastructure > + toValue: self stateInstallGitInfrastructure not. > + self changed: #stateInstallGitInfrastructure.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallLatestUpdates (in category 'actions - packages') ----- > + toggleInstallLatestUpdates > + > + self > + setProperty: #InstallLatestUpdates > + toValue: self stateInstallLatestUpdates not. > + self changed: #stateInstallLatestUpdates.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallOSProcess (in category 'actions - packages') ----- > + toggleInstallOSProcess > + > + self > + setProperty: #InstallOSProcess > + toValue: self stateInstallOSProcess not. > + self changed: #stateInstallOSProcess.! > > Item was added: > + ----- Method: PreferenceWizardMorph>>toggleInstallRefactoringTools (in category 'actions - packages') ----- > + toggleInstallRefactoringTools > + > + self > + setProperty: #InstallRefactoringTools > + toValue: self stateInstallRefactoringTools not. > + self changed: #stateInstallRefactoringTools.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleReuseWindows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleReuseWindows (in category 'buttons') ----- > toggleReuseWindows > > SystemWindow reuseWindows: SystemWindow reuseWindows not. > self changed: #stateReuseWindows.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleRoundedButtonLook (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleRoundedButtonLook (in category 'buttons') ----- > toggleRoundedButtonLook > > | switch | > switch := PluggableButtonMorph roundedButtonCorners not. > > PluggableButtonMorph roundedButtonCorners: switch. > ScrollBar roundedScrollBarLook: switch. > > self changed: #stateRoundedButtonLook.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleRoundedWindowLook (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleRoundedWindowLook (in category 'buttons') ----- > toggleRoundedWindowLook > > | switch | > switch := SystemWindow roundedWindowCorners not. > > SystemWindow roundedWindowCorners: switch. > DialogWindow roundedDialogCorners: switch. > MenuMorph roundedMenuCorners: switch. > > self changed: #stateRoundedWindowLook.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleScrollBarsNarrow (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleScrollBarsNarrow (in category 'buttons') ----- > toggleScrollBarsNarrow > > Preferences toggle: #scrollBarsNarrow. > ScrollPane allSubInstancesDo: [:ea | ea scrollBarThickness: ScrollPane scrollBarThickness]. > self changed: #stateScrollBarsNarrow.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleScrollBarsOnRight (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleScrollBarsOnRight (in category 'buttons') ----- > toggleScrollBarsOnRight > > Preferences toggle: #scrollBarsOnRight. > ScrollPane allSubInstancesDo: [:ea | ea scrollBarOnLeft: self stateScrollBarsOnRight not]. > self changed: #stateScrollBarsOnRight.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutArrowButtons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutArrowButtons (in category 'buttons') ----- > toggleScrollBarsWithoutArrowButtons > > ScrollBar scrollBarsWithoutArrowButtons: ScrollBar scrollBarsWithoutArrowButtons not. > self changed: #stateScrollBarsWithoutArrowButtons.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutMenuButton (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleScrollBarsWithoutMenuButton (in category 'buttons') ----- > toggleScrollBarsWithoutMenuButton > > ScrollBar scrollBarsWithoutMenuButton: ScrollBar scrollBarsWithoutMenuButton not. > self changed: #stateScrollBarsWithoutMenuButton.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSendMouseWheelToKeyboardFocus (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSendMouseWheelToKeyboardFocus (in category 'buttons') ----- > toggleSendMouseWheelToKeyboardFocus > > HandMorph sendMouseWheelToKeyboardFocus: HandMorph sendMouseWheelToKeyboardFocus not. > self changed: #stateSendMouseWheelToKeyboardFocus.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleShowKeyboardFocus (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleShowKeyboardFocus (in category 'buttons') ----- > toggleShowKeyboardFocus > > Morph indicateKeyboardFocus: Morph indicateKeyboardFocus not. > self changed: #stateShowKeyboardFocus.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSimpleFrameAdornments (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSimpleFrameAdornments (in category 'buttons') ----- > toggleSimpleFrameAdornments > > PluggableTextMorph simpleFrameAdornments: PluggableTextMorph simpleFrameAdornments not. > self changed: #stateSimpleFrameAdornments.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSmartHorizontalSplitters (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSmartHorizontalSplitters (in category 'buttons') ----- > toggleSmartHorizontalSplitters > > ProportionalSplitterMorph smartHorizontalSplitters: ProportionalSplitterMorph smartHorizontalSplitters not. > self changed: #stateSmartHorizontalSplitters.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSmartVerticalSplitters (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSmartVerticalSplitters (in category 'buttons') ----- > toggleSmartVerticalSplitters > > ProportionalSplitterMorph smartVerticalSplitters: ProportionalSplitterMorph smartVerticalSplitters not. > self changed: #stateSmartVerticalSplitters.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSoftShadows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSoftShadows (in category 'buttons') ----- > toggleSoftShadows > > self stateHardShadows > ifFalse: [Preferences toggle: #menuAppearance3d]. > > Morph useSoftDropShadow: true. > > SystemWindow refreshAllWindows; reconfigureWindowsForFocus. > SystemProgressMorph reset. > TheWorldMainDockingBar updateInstances. > > self changed: #stateSoftShadows. > self changed: #stateHardShadows.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleSwapMouseButtons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleSwapMouseButtons (in category 'buttons') ----- > toggleSwapMouseButtons > > Preferences toggle: #swapMouseButtons. > self changed: #stateSwapMouseButtons.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleToolAndMenuIcons (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleToolAndMenuIcons (in category 'buttons') ----- > toggleToolAndMenuIcons > > | switch | > switch := Browser showClassIcons not. > > Browser showClassIcons: switch. > Browser showMessageIcons: switch. > Preferences setFlag: #menuWithIcons toValue: switch. > Preferences setFlag: #visualExplorer toValue: switch. > > self changed: #stateToolAndMenuIcons.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleTraceMessages (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleTraceMessages (in category 'buttons') ----- > toggleTraceMessages > > Preferences toggle: #traceMessages. > self changed: #stateTraceMessages.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleUseBiggerCursors (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleUseBiggerCursors (in category 'buttons') ----- > toggleUseBiggerCursors > > Cursor useBiggerCursors: self stateUseBiggerCursors not. > Cursor currentCursor: Cursor currentCursor. > > self changed: #stateUseBiggerCursors.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleUseBiggerFonts (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleUseBiggerFonts (in category 'buttons') ----- > toggleUseBiggerFonts > > [ > self stateUseBiggerFonts > ifFalse: [Preferences setDemoFonts] > ifTrue: [Preferences restoreDefaultFonts]. > ] valueSupplyingAnswer: true. > > self changed: #stateUseBiggerFonts.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleUseColorfulWindows (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleUseColorfulWindows (in category 'buttons') ----- > toggleUseColorfulWindows > > Model useColorfulWindows: Model useColorfulWindows not. > self changed: #stateUseColorfulWindows.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleUseRetractableScrollBars (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleUseRetractableScrollBars (in category 'buttons') ----- > toggleUseRetractableScrollBars > > ScrollPane useRetractableScrollBars: ScrollPane useRetractableScrollBars not. > self changed: #stateUseRetractableScrollBars.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleWindowButtonsAlwaysActive (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleWindowButtonsAlwaysActive (in category 'buttons') ----- > toggleWindowButtonsAlwaysActive > > SystemWindow windowTitleActiveOnFirstClick: SystemWindow windowTitleActiveOnFirstClick not. > self changed: #stateWindowButtonsAlwaysActive.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleWindowsAlwaysActive (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleWindowsAlwaysActive (in category 'buttons') ----- > toggleWindowsAlwaysActive > > Model windowActiveOnFirstClick: Model windowActiveOnFirstClick not. > self changed: #stateWindowsAlwaysActive.! > > Item was changed: > + ----- Method: PreferenceWizardMorph>>toggleWindowsRaiseOnClick (in category 'actions - buttons') ----- > - ----- Method: PreferenceWizardMorph>>toggleWindowsRaiseOnClick (in category 'buttons') ----- > toggleWindowsRaiseOnClick > > SystemWindow windowsRaiseOnClick: SystemWindow windowsRaiseOnClick not. > self changed: #stateWindowsRaiseOnClick.! > > Item was added: > + SystemProgressMorph subclass: #PreferenceWizardProgressMorph > + instanceVariableNames: '' > + classVariableNames: '' > + poolDictionaries: '' > + category: 'PreferenceBrowser'! > > Item was added: > + ----- Method: PreferenceWizardProgressMorph class>>install (in category 'as yet unclassified') ----- > + install > + > + self reset. > + UniqueInstance := self basicNew initialize; yourself.! > > Item was added: > + ----- Method: PreferenceWizardProgressMorph>>createProgressBar (in category 'as yet unclassified') ----- > + createProgressBar > + > + ^ SystemProgressBarMorph new > + extent: 500@20; > + color: Color transparent; > + barColor: Color white; > + borderColor: Color white; > + borderWidth: 2; > + yourself > + ! > > Item was added: > + ----- Method: PreferenceWizardProgressMorph>>openInWorld (in category 'as yet unclassified') ----- > + openInWorld > + > + "Ignore."! > > Item was added: > + ----- Method: PreferenceWizardProgressMorph>>reposition (in category 'as yet unclassified') ----- > + reposition > + > + "Ignore."! > > Item was added: > + ----- Method: PreferenceWizardProgressMorph>>setDefaultParameters (in category 'as yet unclassified') ----- > + setDefaultParameters > + "change the receiver's appareance parameters" > + > + self > + color: Color transparent; > + borderWidth: 0; > + font: (StrikeFont familyName: 'Darkmap DejaVu Sans' pointSize: 12); > + textColor: Color white.! > > |
In reply to this post by marcel.taeumel
Great idea to make these common developer tools more accessible to newcomers, well done.
The startup wizard has come of age for this release. :) |
Free forum by Nabble | Edit this page |