[squeak-dev] The Inbox: ToolBuilder-Morphic-mt.92.mcz
David T. Lewis
lewis at mail.msen.com
Sun Jun 15 17:36:14 UTC 2014
I have not tried it yet, but it looks perfectly reasonable to me, so +1
Dave
On Sun, Jun 15, 2014 at 06:28:33PM +0200, Tobias Pape wrote:
> Any objections to me moving this patch-set to trunk?
>
> Best
> -Tobias
>
> On 15.06.2014, at 06:49, commits at source.squeak.org wrote:
>
> > A new version of ToolBuilder-Morphic was added to project The Inbox:
> > http://source.squeak.org/inbox/ToolBuilder-Morphic-mt.92.mcz
> >
> > ==================== Summary ====================
> >
> > Name: ToolBuilder-Morphic-mt.92
> > Author: mt
> > Time: 15 June 2014, 8:49:17.404 am
> > UUID: afad358c-8192-f54c-b472-e89b457071de
> > Ancestors: ToolBuilder-Morphic-fbs.91
> >
> > Added support for pluggable scroll panes as introduced in ToolBuilder-Kernel-mt.61
> >
> > =============== Diff against ToolBuilder-Morphic-fbs.91 ===============
> >
> > Item was added:
> > + ----- Method: MorphicToolBuilder>>buildPluggableScrollPane: (in category 'widgets optional') -----
> > + buildPluggableScrollPane: spec
> > +
> > + | widget |
> > + widget := self scrollPaneClass new.
> > + widget model: spec model.
> > + self register: widget id: spec name.
> > +
> > + spec children
> > + ifNotNil: [:obj |
> > + "Create panel morph to scroll it."
> > + widget morph: (self pluggablePanelSpec new
> > + children: obj;
> > + layout: spec layout;
> > + frame: (0 at 0 corner: 1 at 1);
> > + buildWith: self).
> > + spec layout ~~ #proportional ifTrue: [
> > + "Fix #spaceFill resizing because it does not make sense in scroll pane."
> > + widget morph
> > + hResizing: #shrinkWrap;
> > + vResizing: #shrinkWrap.
> > + widget morph submorphsDo: [:m |
> > + m
> > + extent: 100 at 100;
> > + flag: #refactor; "mt: Restore orginial properties?"
> > + hResizing: #rigid;
> > + vResizing: #rigid]
> > + ]]
> > + ifNil: [spec morph
> > + ifNotNil: [:m | widget morph: m]
> > + ifNil: [widget morphClass: spec morphClass]].
> > +
> > + self setFrame: spec frame in: widget.
> > + parent ifNotNil: [self add: widget to: parent].
> > +
> > + widget borderWidth: spec borderWidth.
> > +
> > + spec hScrollBarPolicy caseOf: {
> > + [#always] -> [widget alwaysShowHScrollBar: true].
> > + [#never] -> [widget hideHScrollBarIndefinitely: true].
> > + [#whenNeeded] -> [widget showHScrollBarOnlyWhenNeeded: true]}.
> > + spec vScrollBarPolicy caseOf: {
> > + [#always] -> [widget alwaysShowVScrollBar: true].
> > + [#never] -> [widget hideVScrollBarIndefinitely: true].
> > + [#whenNeeded] -> [widget showVScrollBarOnlyWhenNeeded: true]}.
> > +
> > + ^ widget!
> >
> > Item was added:
> > + ----- Method: MorphicToolBuilder>>scrollPaneClass (in category 'widget classes') -----
> > + scrollPaneClass
> > + ^ PluggableScrollPane!
> >
> >
>
>
More information about the Squeak-dev
mailing list
|