Marcel Taeumel uploaded a new version of ToolBuilder-Kernel to project The Trunk: http://source.squeak.org/trunk/ToolBuilder-Kernel-mt.100.mcz
==================== Summary ====================
Name: ToolBuilder-Kernel-mt.100 Author: mt Time: 31 July 2016, 11:11:03.29749 am UUID: 8ae8d06d-141f-d846-9c73-f7fa561bb78a Ancestors: ToolBuilder-Kernel-mt.99
*** Widget Refactorings and UI Themes (Part 5 of 11) ***
Some fixes and refactorings for dialogs including added support for UI theming.
=============== Diff against ToolBuilder-Kernel-mt.99 ===============
Item was added: + PluggableCompositeSpec subclass: #PluggableDialogSpec + instanceVariableNames: 'title message extent buttons closeAction' + classVariableNames: '' + poolDictionaries: '' + category: 'ToolBuilder-Kernel'!
Item was added: + ----- Method: PluggableDialogSpec>>buildWith: (in category 'building') ----- + buildWith: builder + ^builder buildPluggableDialog: self.!
Item was added: + ----- Method: PluggableDialogSpec>>buttons (in category 'accessing') ----- + buttons + + ^ buttons!
Item was added: + ----- Method: PluggableDialogSpec>>buttons: (in category 'accessing') ----- + buttons: anObject + + buttons := anObject!
Item was added: + ----- Method: PluggableDialogSpec>>closeAction (in category 'accessing') ----- + closeAction + + ^ closeAction!
Item was added: + ----- Method: PluggableDialogSpec>>closeAction: (in category 'accessing') ----- + closeAction: anObject + + closeAction := anObject!
Item was added: + ----- Method: PluggableDialogSpec>>extent (in category 'accessing') ----- + extent + + ^ extent!
Item was added: + ----- Method: PluggableDialogSpec>>extent: (in category 'accessing') ----- + extent: anObject + + extent := anObject!
Item was added: + ----- Method: PluggableDialogSpec>>horizontalResizing (in category 'as yet unclassified') ----- + horizontalResizing + ^ #rigid!
Item was added: + ----- Method: PluggableDialogSpec>>label (in category 'window compatibility') ----- + label + ^ self title!
Item was added: + ----- Method: PluggableDialogSpec>>label: (in category 'window compatibility') ----- + label: stringOrSymbol + self title: stringOrSymbol.!
Item was added: + ----- Method: PluggableDialogSpec>>message (in category 'accessing') ----- + message + + ^ message!
Item was added: + ----- Method: PluggableDialogSpec>>message: (in category 'accessing') ----- + message: anObject + + message := anObject!
Item was added: + ----- Method: PluggableDialogSpec>>title (in category 'accessing') ----- + title + + ^ title!
Item was added: + ----- Method: PluggableDialogSpec>>title: (in category 'accessing') ----- + title: anObject + + title := anObject!
Item was added: + ----- Method: PluggableDialogSpec>>verticalResizing (in category 'as yet unclassified') ----- + verticalResizing + ^ #rigid!
Item was changed: PluggableCompositeSpec subclass: #PluggableWindowSpec + instanceVariableNames: 'label extent closeAction multiWindowStyle' - instanceVariableNames: 'label extent closeAction isDialog multiWindowStyle' classVariableNames: '' poolDictionaries: '' category: 'ToolBuilder-Kernel'!
!PluggableWindowSpec commentStamp: '<historical>' prior: 0! A common window. Expects to see change/update notifications when the label should change.
Instance variables: label <String|Symbol> The selector under which to retrieve the label or the label directly extent <Point> The (initial) extent of the window. closeAction <Symbol> The action to perform when the window is closed.!
Item was removed: - ----- Method: PluggableWindowSpec>>isDialog (in category 'accessing') ----- - isDialog - - ^isDialog ifNil: [false] - !
Item was removed: - ----- Method: PluggableWindowSpec>>isDialog: (in category 'accessing') ----- - isDialog: val - - isDialog := val - - !
Item was added: + ----- Method: ToolBuilder>>buildPluggableDialog: (in category 'widgets optional') ----- + buildPluggableDialog: spec + + | windowSpec | + windowSpec := self pluggableWindowSpec new. + windowSpec children: (spec children ifNil: [OrderedCollection new]). + + "TODO: Convert the dialog's message into some element in the children." + + spec buttons ifNotNil: [:buttons | windowSpec children addAll: buttons]. + windowSpec + model: spec model; + extent: spec extent; + label: spec title. + ^ self buildPluggableWindow: windowSpec!
Item was added: + ----- Method: ToolBuilder>>pluggableDialogSpec (in category 'defaults') ----- + pluggableDialogSpec + ^PluggableDialogSpec!
packages@lists.squeakfoundation.org