The Trunk: ToolBuilder-Morphic-mt.239.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: ToolBuilder-Morphic-mt.239.mcz

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

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

Name: ToolBuilder-Morphic-mt.239
Author: mt
Time: 22 August 2019, 3:23:14.140931 pm
UUID: 58f445df-8248-a143-8d2e-82b27bef37f2
Ancestors: ToolBuilder-Morphic-mt.238

Complements Morphic-mt.1506 including cellInset-to-cellGap conversion.

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

Item was changed:
  ----- Method: DialogWindow>>openAsTool (in category '*ToolBuilder-Morphic-opening') -----
  openAsTool
+
- self flag: #dev.
- "cm: The following line may no longer be necessary."
- preferredPosition isMorph ifFalse: [ self moveToHand ].
  ^ self getUserResponse!

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 paneMorph cellInset: (aSpec spacing ifNil: [ProportionalSplitterMorph gripThickness]).
  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!

Item was changed:
  ----- Method: MorphicToolBuilder>>buildPluggablePanel: (in category 'widgets required') -----
  buildPluggablePanel: aSpec
 
  | widget |
  widget := self panelClass new.
  self register: widget id: aSpec name.
 
  widget model: aSpec model.
 
  "Set child dependent layout properties."
  widget wantsPaneSplitters: (aSpec wantsResizeHandles ifNil: [false]).
  self setLayoutHintsFor: widget spec: aSpec.
  widget layoutInset: (aSpec padding ifNil: [0]).
+ widget cellGap: (aSpec spacing ifNil: [
- widget cellInset: (aSpec spacing ifNil: [
  widget wantsPaneSplitters
  ifTrue: [ProportionalSplitterMorph gripThickness]
  ifFalse: [2]]).
 
  "Now create the children."
  aSpec children isSymbol
  ifTrue: [
  widget getChildrenSelector: aSpec children.
  widget update: aSpec children]
  ifFalse: [
  self buildAll: aSpec children in: widget].
 
  self setFrame: aSpec frame in: widget.
  self setLayout: aSpec layout in: widget.
 
  parent ifNotNil:[self add: widget to: parent].
 
  widget borderWidth: 0.
  self buildHelpFor: widget spec: aSpec.
  widget color: Color transparent.
 
  ^ widget!

Item was changed:
  ----- Method: MorphicToolBuilder>>buildPluggableWindow: (in category 'widgets required') -----
  buildPluggableWindow: aSpec
  | widget |
 
  aSpec layout == #proportional ifFalse:[
  "This needs to be implemented - probably by adding a single pane and then the rest"
  ^self error: 'Not implemented'.
  ].
 
  widget := (self windowClassFor: aSpec) new.
  self register: widget id: aSpec name.
 
  widget model: aSpec model.
 
  "Set child dependent layout properties."
  widget wantsPaneSplitters: (aSpec wantsResizeHandles ifNil: [true]).
  self setLayoutHintsFor: widget spec: aSpec.
  widget layoutInset: (aSpec padding ifNil: [ProportionalSplitterMorph gripThickness]).
+ widget cellGap: (aSpec spacing ifNil: [ProportionalSplitterMorph gripThickness]).
- widget cellInset: (aSpec spacing ifNil: [ProportionalSplitterMorph gripThickness]).
 
  "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].
  widget setUpdatablePanesFrom: panes.
 
  aSpec label ifNotNil: [:label|
  label isSymbol
  ifTrue:[widget getLabelSelector: label]
  ifFalse:[widget setLabel: label]].
 
  aSpec multiWindowStyle notNil ifTrue:
  [widget savedMultiWindowState: (SavedMultiWindowState on: aSpec model)].
 
  widget closeWindowSelector: aSpec closeAction.
  self buildHelpFor: widget spec: aSpec.
 
  widget bounds: (RealEstateAgent
  initialFrameFor: widget
  initialExtent: (aSpec extent ifNil:[widget initialExtent])
  world: self currentWorld).
 
  ^ widget!

Item was changed:
  ----- Method: PluggableCheckBoxMorph>>basicPanel (in category 'installing') -----
  basicPanel
  ^BorderedMorph new
  beTransparent;
  extent: 0@0;
  borderWidth: 0;
  layoutInset: 0;
+ cellGap: 0;
- cellInset: 0;
  layoutPolicy: TableLayout new;
  listCentering: #topLeft;
  cellPositioning: #center;
  hResizing: #spaceFill;
  vResizing: #shrinkWrap;
  yourself!

Item was changed:
  ----- Method: PluggableDropDownListMorph>>basicPanel (in category 'drawing') -----
  basicPanel
  ^BorderedMorph new
  beTransparent;
  extent: 0@0;
  borderWidth: 0;
  layoutInset: 0;
+ cellGap: 0;
- cellInset: 0;
  layoutPolicy: TableLayout new;
  listCentering: #topLeft;
  cellPositioning: #center;
  hResizing: #spaceFill;
  vResizing: #shrinkWrap;
  yourself!