[Pkg] The Trunk: ToolBuilder-Kernel-mt.134.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Oct 23 11:40:48 UTC 2019
Marcel Taeumel uploaded a new version of ToolBuilder-Kernel to project The Trunk:
http://source.squeak.org/trunk/ToolBuilder-Kernel-mt.134.mcz
==================== Summary ====================
Name: ToolBuilder-Kernel-mt.134
Author: mt
Time: 23 October 2019, 1:40:47.348795 pm
UUID: 66bc16c6-9595-4c55-a506-a374d1f642a4
Ancestors: ToolBuilder-Kernel-ct.133
Support the functional layout properties for LazyListMorph in tool-builder specs. Chose "alignment" instead of "positioning" because specs are not Morphic-specific. The terms "item" and "column" reflect item- or column-specifc settings, which can be confusing because our current lists do only support uniform (item) rows.
=============== Diff against ToolBuilder-Kernel-ct.133 ===============
Item was changed:
PluggableWidgetSpec subclass: #PluggableListSpec
+ instanceVariableNames: 'list getIndex setIndex getSelected setSelected menu keyPress autoDeselect dragItem dropItem dropAccept doubleClick listSize listItem keystrokePreview icon vScrollBarPolicy hScrollBarPolicy dragStarted helpItem filterableList clearFilterAutomatically itemAlignment itemPadding'
- instanceVariableNames: 'list getIndex setIndex getSelected setSelected menu keyPress autoDeselect dragItem dropItem dropAccept doubleClick listSize listItem keystrokePreview icon vScrollBarPolicy hScrollBarPolicy dragStarted helpItem filterableList clearFilterAutomatically'
classVariableNames: ''
poolDictionaries: ''
category: 'ToolBuilder-Kernel'!
!PluggableListSpec commentStamp: 'ar 7/15/2005 11:54' prior: 0!
A single selection list element.
Instance variables:
list <Symbol> The selector to retrieve the list elements.
getIndex <Symbol> The selector to retrieve the list selection index.
setIndex <Symbol> The selector to set the list selection index.
getSelected <Symbol> The selector to retrieve the list selection.
setSelected <Symbol> The selector to set the list selection.
menu <Symbol> The selector to offer (to retrieve?) the context menu.
keyPress <Symbol> The selector to invoke for handling keyboard shortcuts.
autoDeselect <Boolean> Whether the list should allow automatic deselection or not.
dragItem <Symbol> Selector to initiate a drag action on an item
dropItem <Symbol> Selector to initiate a drop action of an item
dropAccept <Symbol> Selector to determine whether a drop would be accepted!
Item was added:
+ ----- Method: PluggableListSpec>>itemAlignment (in category 'accessing') -----
+ itemAlignment
+ "Define the alignment of each list item in its layout cell. The value can encode both horizontal and vertical dimensions."
+
+ ^ itemAlignment!
Item was added:
+ ----- Method: PluggableListSpec>>itemAlignment: (in category 'accessing') -----
+ itemAlignment: aSymbol
+ "For convenience, map #left and #right to their correct values. At least for Morphic."
+
+ aSymbol == #left ifTrue: [^ itemAlignment := #leftCenter].
+ aSymbol == #right ifTrue: [^ itemAlignment := #rightCenter].
+
+ itemAlignment := aSymbol.!
Item was added:
+ ----- Method: PluggableListSpec>>itemPadding (in category 'accessing') -----
+ itemPadding
+
+ ^ itemPadding!
Item was added:
+ ----- Method: PluggableListSpec>>itemPadding: (in category 'accessing') -----
+ itemPadding: numberOrPointOrRectangle
+
+ itemPadding := numberOrPointOrRectangle.!
Item was changed:
PluggableListSpec subclass: #PluggableMultiColumnListSpec
+ instanceVariableNames: 'itemAlignments itemPaddings columnResizings columnSpaceFillWeights'
- instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'ToolBuilder-Kernel'!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>columnResizings (in category 'accessing') -----
+ columnResizings
+ "For each column, define the horizontal resizing (or #hResizing) behavior. Choose from #rigid, #shrinkWrap, and #spaceFill."
+
+ ^ columnResizings ifNil: [#(spaceFill)]!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>columnResizings: (in category 'accessing') -----
+ columnResizings: someSymbols
+
+ columnResizings := someSymbols.!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>columnSpaceFillWeights (in category 'accessing') -----
+ columnSpaceFillWeights
+ "For each column, define the relative space-fill weight, which will be used if the resizing strategy is set to #spaceFill."
+
+ ^ columnSpaceFillWeights ifNil: [#(1)]!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>columnSpaceFillWeights: (in category 'accessing') -----
+ columnSpaceFillWeights: someNumbers
+
+ columnSpaceFillWeights := someNumbers.!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>itemAlignments (in category 'accessing') -----
+ itemAlignments
+ "For each column, define the alignment of each list item in its layout cell. The value can encode both horizontal and vertical dimensions."
+
+ ^ itemAlignments ifNil: [self itemAlignment ifNil: [#()] ifNotNil: [:alignment | {alignment}]]!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>itemAlignments: (in category 'accessing') -----
+ itemAlignments: someSymbols
+ "For convenience, map #left and #right to their correct values. At least for Morphic."
+
+ itemAlignments := someSymbols collect: [:alignment |
+ alignment == #left ifTrue: [#leftCenter] ifFalse: [
+ alignment == #right ifTrue: [#rightCenter] ifFalse: [
+ alignment]]].!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>itemPaddings (in category 'accessing') -----
+ itemPaddings
+
+ ^ itemPaddings ifNil: [self itemPadding ifNil: [#()] ifNotNil: [:padding | {padding}]]!
Item was added:
+ ----- Method: PluggableMultiColumnListSpec>>itemPaddings: (in category 'accessing') -----
+ itemPaddings: someNumbersOrPointsOrRectangles
+
+ itemPaddings := someNumbersOrPointsOrRectangles.!
More information about the Packages
mailing list