<div dir="ltr">Hi,<div>there is a somewhat related issue with scroll panes. </div><div>In for example HelpBrowser you scroll down in the text pane with a long text.</div><div>Then you click on an other help topic with a long text.</div><div>The new help topic opens in a scrolled down pane.</div><div><br></div><div>When opening a new topic the scrolling should be reset.</div><div><br></div><div>Karl</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 4, 2015 at 10:33 AM, <span dir="ltr"><<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Marcel Taeumel uploaded a new version of ToolBuilder-Morphic to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/ToolBuilder-Morphic-mt.150.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/ToolBuilder-Morphic-mt.150.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: ToolBuilder-Morphic-mt.150<br>
Author: mt<br>
Time: 4 November 2015, 10:33:51.502 am<br>
UUID: 4df461c0-47b8-4cda-a915-4277646038fb<br>
Ancestors: ToolBuilder-Morphic-mt.149<br>
<br>
Adds support for overriding scrollbar policies in trees.<br>
<br>
=============== Diff against ToolBuilder-Morphic-mt.149 ===============<br>
<br>
Item was changed:<br>
----- Method: MorphicToolBuilder>>buildPluggableTree: (in category 'widgets required') -----<br>
buildPluggableTree: aSpec<br>
| widget |<br>
widget := self treeClass new.<br>
self register: widget id: aSpec name.<br>
widget model: aSpec model.<br>
widget getSelectedPathSelector: aSpec getSelectedPath.<br>
widget setSelectedSelector: aSpec setSelected.<br>
widget getSelectedSelector: aSpec getSelected.<br>
widget setSelectedParentSelector: aSpec setSelectedParent.<br>
widget getChildrenSelector: aSpec getChildren.<br>
widget hasChildrenSelector: aSpec hasChildren.<br>
widget getLabelSelector: aSpec label.<br>
widget getIconSelector: aSpec icon.<br>
widget getHelpSelector: aSpec help.<br>
widget getMenuSelector: aSpec menu.<br>
widget keystrokeActionSelector: aSpec keyPress.<br>
widget nodeClass: aSpec nodeClass.<br>
widget getRootsSelector: aSpec roots.<br>
widget autoDeselect: aSpec autoDeselect.<br>
widget dropItemSelector: aSpec dropItem.<br>
widget wantsDropSelector: aSpec dropAccept.<br>
widget dragItemSelector: aSpec dragItem.<br>
widget columns: aSpec columns.<br>
<br>
+ "Override default scroll bar policies if needed. Widget will use preference values otherwise."<br>
+ aSpec hScrollBarPolicy ifNotNil: [:policy |<br>
+ policy caseOf: {<br>
+ [#always] -> [widget alwaysShowHScrollBar].<br>
+ [#never] -> [widget hideHScrollBarIndefinitely].<br>
+ [#whenNeeded] -> [widget showHScrollBarOnlyWhenNeeded]. } ].<br>
+ aSpec vScrollBarPolicy ifNotNil: [:policy |<br>
+ policy caseOf: {<br>
+ [#always] -> [widget alwaysShowVScrollBar].<br>
+ [#never] -> [widget hideVScrollBarIndefinitely].<br>
+ [#whenNeeded] -> [widget showVScrollBarOnlyWhenNeeded]. } ].<br>
+<br>
self setFrame: aSpec frame in: widget.<br>
self setLayoutHintsFor: widget spec: aSpec.<br>
<br>
parent ifNotNil:[self add: widget to: parent].<br>
" panes ifNotNil:[<br>
aSpec roots ifNotNil:[panes add: aSpec roots].<br>
]. "<br>
^widget!<br>
<br>
<br>
</blockquote></div><br></div>