The Trunk: PreferenceBrowser-mt.160.mcz

[email protected] Tue, 4 Aug 2026 09:54:11 0000
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <[email protected]>
Marcel Taeumel uploaded a new version of PreferenceBrowser to project The Trunk:
http://source.squeak.org/trunk/PreferenceBrowser-mt.160.mcz

==================== Summary ====================

Name: PreferenceBrowser-mt.160
Author: mt
Time: 4 August 2026, 11:54:10.824447 am
UUID: bbd689b5-aa69-c443-b34d-0b1e6a9a1d40
Ancestors: PreferenceBrowser-codefrau.159

In the wizard, let the user also adjust the default window scale.

=============== Diff against PreferenceBrowser-codefrau.159 ===============

Item was added:
+ ----- Method: PreferenceWizardMorph>>chooseWindowFactor: (in category 'actions - radio') -----
+ chooseWindowFactor: factor
+ 
+ 	RealEstateAgent windowScaleFactor: factor.
+ 	self changedRadio.!

Item was changed:
  ----- Method: PreferenceWizardMorph>>doesNotUnderstand: (in category 'actions - 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: [' '] ].
  
  	(msg selector numArgs = 0 and: [msg selector beginsWith: 'radio'])
  		ifTrue: [^ (self perform: ('state', (msg selector allButFirst: 5)) asSymbol)
  			ifTrue: [self radiomark]
  			ifFalse: [' '] ].
  
  	(msg selector numArgs = 0 and: [msg selector beginsWith: 'stateTheme'])
  		ifTrue: [^ self stateTheme: (msg selector allButFirst: 10)].
  
  	(msg selector numArgs = 0 and: [msg selector beginsWith: 'stateScaleFactor'])
  		ifTrue: [^ self stateScaleFactor: (msg selector allButFirst: 16)].
  		
+ 	(msg selector numArgs = 0 and: [msg selector beginsWith: 'stateWindowFactor'])
+ 		ifTrue: [^ self stateWindowFactor: (msg selector allButFirst: 17)].
+ 		
  	^ super doesNotUnderstand: msg!

Item was added:
+ ----- Method: PreferenceWizardMorph>>initializePage02bVisualsMore (in category 'initialization - pages') -----
+ initializePage02bVisualsMore
+ 
+ 	| currentPage pane increaseFontSizeButton decreaseFontSizeButton |
+ 	currentPage := pages add: self createPage.
+ 	pane := self createScrollPane.
+ 	
+ 	currentPage addMorphBack: (self createLabel: 'Choose a factor for initial window extent' translated color: Color white).
+ 	currentPage addMorphBack: pane.
+ 	
+ 	#('1.0 (default)' 1.0 '1.25' 1.25 '1.5' 1.5 '1.75 (large display)' 1.75) pairsDo: [:label :scale |
+ 		pane scroller firstSubmorph addMorphBack: (self
+ 			createRadioButton: label
+ 			for: #WindowFactor
+ 			argument: scale)].
+ 	
+ 	decreaseFontSizeButton := self createButton
+ 		hResizing: #spaceFill;
+ 		action: #decreaseFontSize;
+ 		target: Preferences;
+ 		label: 'Decrease font size (-)' translated.
+ 		
+ 	increaseFontSizeButton := self createButton
+ 		hResizing: #spaceFill;
+ 		action: #increaseFontSize;
+ 		target: Preferences;
+ 		label: 'Increase font size (+)' translated.
+ 		
+ 	pane scroller firstSubmorph
+ 		addMorphBack: decreaseFontSizeButton;
+ 		addMorphBack: increaseFontSizeButton.
+ 	
+ 	currentPage addMorphBack: (self createLabel: 'Note that the perceived font size in tools depends on the screen scale factor.' translated color: Color banana)!

Item was changed:
  ----- Method: PreferenceWizardMorph>>initializePages (in category 'initialization - playfield') -----
  initializePages
  
  	pages := OrderedCollection new.
  	currentPageIndex := 0.
  
  	self
  		initializePage00ScaleFactor;
  		initializePage01Themes;
  		initializePage02Visuals;
+ 		initializePage02bVisualsMore;
  		initializePage03Interaction;
  		initializePage04InteractionMore;
  		initializePage05Tools.!

Item was added:
+ ----- Method: PreferenceWizardMorph>>stateWindowFactor: (in category 'actions - radio') -----
+ stateWindowFactor: key
+ 
+ 	^ RealEstateAgent windowScaleFactor asString asLegalSelector = key!

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]