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.! |
Free forum by Nabble | Edit this page |