[squeak-dev] The Trunk: ToolBuilder-Morphic-mt.280.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Dec 2 16:26:46 UTC 2021


Marcel Taeumel uploaded a new version of ToolBuilder-Morphic to project The Trunk:
http://source.squeak.org/trunk/ToolBuilder-Morphic-mt.280.mcz

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

Name: ToolBuilder-Morphic-mt.280
Author: mt
Time: 2 December 2021, 5:26:45.972715 pm
UUID: 2f5a09f9-48fe-ce42-a70d-00b47c1513c3
Ancestors: ToolBuilder-Morphic-mt.279

Fixes high-dpi scaling of dialog windows.

=============== Diff against ToolBuilder-Morphic-mt.279 ===============

Item was changed:
  ----- Method: MorphicToolBuilder>>buildPluggableDialog: (in category 'widgets optional') -----
  buildPluggableDialog: aSpec
  
  	| widget |
  
  	widget := self dialogClass new.
  	self register: widget id: aSpec name.
  	
  	widget model: aSpec model.
  
  	"Set child dependent layout properties. The pane morph holds the special contents."
  	widget paneMorph wantsPaneSplitters: (aSpec wantsResizeHandles ifNil: [true]).
  	self setLayoutHintsFor: widget paneMorph spec: aSpec.
  	widget paneMorph layoutInset: (aSpec padding ifNil: [ProportionalSplitterMorph gripThickness]).
  	widget paneMorph cellGap: (aSpec spacing ifNil: [ProportionalSplitterMorph gripThickness]).
  	widget morphicLayerNumber: widget class dialogLayer.
  	widget paneMorph wantsPaneSplitters ifTrue: [
  		widget paneMorph addCornerGrips"addEdgeGrips".
  		widget paneMorph grips do: [:ea | ea showHandle: true]].
  
  	"Now create the children."
  	panes := OrderedCollection new.
  	aSpec children isSymbol
  		ifTrue: [
  			widget getChildrenSelector: aSpec children.
  			widget update: aSpec children]
  		ifFalse: [
  			self buildAll: aSpec children in: widget paneMorph].
  
  	"Now create the buttons."
  	aSpec buttons isSymbol
  		ifTrue: [
  			widget getButtonsSelector: aSpec buttons.
  			widget update: aSpec buttons]
  		ifFalse: [
  			self buildAll: aSpec buttons in: widget buttonRowMorph.
  			widget updateButtonProperties].
  
  	aSpec title ifNotNil: [:label |
  		label isSymbol 
  			ifTrue:[widget getTitleSelector: label; update: label]
  			ifFalse:[widget title: label]].
  	aSpec message ifNotNil: [:label |
  		label isSymbol 
  			ifTrue:[widget getMessageSelector: label; update: label]
  			ifFalse:[widget message: label]].
  	
  	"Interaction behavior."
  	aSpec autoCancel ifNotNil: [:b | widget autoCancel: b].
  	aSpec exclusive ifNotNil: [:b | widget exclusive: b].
  		
  	widget closeDialogSelector: aSpec closeAction.
  	self buildHelpFor: widget spec: aSpec. 
  
  	"Everything is shrink-wrapped around the pane morph."
+ 	widget paneMorph extent: ((aSpec extent ifNil:[widget initialExtent])
+ 		+ (widget paneMorph layoutInset * 2) asPoint * RealEstateAgent scaleFactor) truncated.
- 	widget paneMorph extent: (aSpec extent ifNil:[widget initialExtent])
- 		+ (widget paneMorph layoutInset * 2) asPoint.
  
  	^ widget!

Item was added:
+ ----- Method: PluggableDialogWindow>>initialExtent (in category 'initialization') -----
+ initialExtent
+ 
+ 	^ model initialExtent!



More information about the Squeak-dev mailing list