Hi Doru, this appears to be what you want....

| m leftMorph scroll |
m := PanelMorph new.
m
    hResizing: #shrinkWrap;
    vResizing: #spaceFill;
    changeTableLayout;
    listDirection: #leftToRight.
m addMorphBack: (leftMorph := Morph new
    color: Color red;
    minimumExtent: 150@10;
    extent: 150@10;
    hResizing: #rigid; "shown for clarity, is the default"
    vResizing: #spaceFill).
m addMorphBack: (EdgeGripMorph new
    width: ProportionalSplitterMorph splitterWidth;
hResizing: #rigid; "not the default this time, vResizing is also #spaceFill by default"
    target: leftMorph).
m addMorphBack: (Morph new
    color: Color green;
    minWidth: 100;
     hResizing: #shrinkWrap;
     vResizing: #spaceFill).

scroll := GeneralScrollPane new
changeScrollerTableLayout;
scrollTarget: m.
scroll openInWindow.


Sorry that the edge grip works with minimumExtent (as opposed to minWidth and minHeight).
Should clean things up sometime, isn't Morphic fun!

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Sent: Monday, January 17, 2011 10:34 PM
Subject: Re: [Pharo-project] splitters in table layout


Hi Gary,

I wish to achieve the effect from the panes inside the OSX Finder. Suppose that I have two panes vertically stretched and horizontally stacked in a GeneralScrollbar with a splitter in between. When I drag the splitter, the first panel should extend and push the second one.

So, basically, if we have shrinkWrap, I would like the splitter to resize the morph.

Cheers,
Doru



On 17 Jan 2011, at 12:18, Gary Chambers wrote:

Splitters only work with proportional layouts due to the way they work.
Also, since shrink wrap uses the min width/height and splitters have to work by effectively changing the position or extent of adjacent morphs (not min), things are more limited.

Can you describe the effect you wish to achieve?

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: "[email protected] Development" <[email protected]>
Sent: Sunday, January 16, 2011 12:16 PM
Subject: [Pharo-project] splitters in table layout


Hi,

I would like to have splitters used inside a table layout, but I cannot seem to manage. In particular, I would like to have these splitters work with the GeneralScrollPane. I tried something like below, but it seems that the splitters expect a frame layout.

What can I do about it?


| m scroll |
m := PanelMorph new.
m
hResizing: #shrinkWrap;
vResizing: #spaceFill;
changeTableLayout;
listDirection: #leftToRight.
m addMorphBack: (PanelMorph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
m addMorphBack: (PanelMorph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
m addPaneSplitters.

scroll := GeneralScrollPane new
changeScrollerTableLayout;
scrollTarget: m.
scroll openInWindow.



Cheers,
Doru




--
www.tudorgirba.com

"Speaking louder won't make the point worthier."




--
www.tudorgirba.com

"What we can governs what we wish."





Reply via email to