Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1581.mcz ==================== Summary ==================== Name: Morphic-mt.1581 Author: mt Time: 23 October 2019, 1:41:38.794795 pm UUID: 564716d4-ab46-4013-b314-813d9ed8ece0 Ancestors: Morphic-mt.1580 Complements ToolBuilder-Kernel-mt.134. =============== Diff against Morphic-mt.1580 =============== Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellInsetAtColumn: (in category 'layout') ----- + cellInsetAtColumn: columnIndex + + ^ self cellInsetForColumns + at: columnIndex + ifAbsent: [ + "Repeat the inset of the last column or choose the default." + self cellInsetForColumns + ifEmpty: [3@0] + ifNotEmpty: [:paddings | paddings last]]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellInsetForColumns (in category 'layout') ----- + cellInsetForColumns + + ^ self valueOfProperty: #cellInsetForColumns ifAbsent: [#()]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellInsetForColumns: (in category 'layout') ----- + cellInsetForColumns: someSymbols + "Cache the preferred inset of items per column because column count can vary." + + self setProperty: #cellInsetForColumns toValue: someSymbols.! Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellPositioningAtColumn: (in category 'layout') ----- + cellPositioningAtColumn: columnIndex + + ^ self cellPositioningForColumns + at: columnIndex + ifAbsent: [ + "Repeat the alignment of the last column or choose the default." + self cellPositioningForColumns + ifEmpty: [#leftCenter] + ifNotEmpty: [:alignments | alignments last]]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellPositioningForColumns (in category 'layout') ----- + cellPositioningForColumns + + ^ self valueOfProperty: #cellPositioningForColumns ifAbsent: [#()]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>cellPositioningForColumns: (in category 'layout') ----- + cellPositioningForColumns: someSymbols + "Cache the preferred positioning of items per column because column count can vary." + + self setProperty: #cellPositioningForColumns toValue: someSymbols.! Item was added: + ----- Method: PluggableMultiColumnListMorph>>hResizingAtColumn: (in category 'layout') ----- + hResizingAtColumn: columnIndex + + ^ self hResizingForColumns + at: columnIndex + ifAbsent: [ + "Repeat the resizing strategy of the last column or choose the default." + self hResizingForColumns + ifEmpty: [#spaceFill] + ifNotEmpty: [:strategies | strategies last]]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>hResizingForColumns (in category 'layout') ----- + hResizingForColumns + + ^ self valueOfProperty: #hResizingForColumns ifAbsent: [#()]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>hResizingForColumns: (in category 'layout') ----- + hResizingForColumns: someSymbols + "Cache the preferred horizontal resizing for each column because column count can vary." + + self setProperty: #hResizingForColumns toValue: someSymbols.! Item was added: + ----- Method: PluggableMultiColumnListMorph>>spaceFillWeightAtColumn: (in category 'layout') ----- + spaceFillWeightAtColumn: columnIndex + + ^ self spaceFillWeightForColumns + at: columnIndex + ifAbsent: [ + "Repeat the weight of the last column or choose the default." + self spaceFillWeightForColumns + ifEmpty: [1] + ifNotEmpty: [:weights | weights last]]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>spaceFillWeightForColumns (in category 'layout') ----- + spaceFillWeightForColumns + + ^ self valueOfProperty: #spaceFillWeightForColumns ifAbsent: [#()]! Item was added: + ----- Method: PluggableMultiColumnListMorph>>spaceFillWeightForColumns: (in category 'layout') ----- + spaceFillWeightForColumns: someSymbols + "Cache the preferred space-fill weight for each column because column count can vary." + + self setProperty: #spaceFillWeightForColumns toValue: someSymbols.! Item was changed: ----- Method: PluggableMultiColumnListMorph>>updateColumns (in category 'updating') ----- updateColumns "The number of columns must match the number of list morphs." + | columnsChanged | + columnsChanged := self columnCount ~= listMorphs size. - self columnCount = listMorphs size ifTrue: [^ self]. [self columnCount < listMorphs size] whileTrue: [ listMorphs removeLast delete]. [self columnCount > listMorphs size] whileTrue: [ listMorphs addLast: self createListMorph. self scroller addMorphBack: listMorphs last]. + listMorphs doWithIndex: [:listMorph :columnIndex | + listMorph + columnIndex: columnIndex; + cellPositioning: (self cellPositioningAtColumn: columnIndex); + cellInset: (self cellInsetAtColumn: columnIndex); + hResizing: (self hResizingAtColumn: columnIndex); + spaceFillWeight: (self spaceFillWeightAtColumn: columnIndex)]. + + columnsChanged ifTrue: [self setListParameters].! - listMorphs doWithIndex: [:ea :col | ea columnIndex: col]. - self setListParameters.! |
Free forum by Nabble | Edit this page |