Not yet. (gmail issues) .Go ahead though if you wish.

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Sent: Tuesday, January 18, 2011 7:44 PM
Subject: Re: [Pharo-project] aligning morphs


Hi Gary,

Did you publish the changes to GeneralScrollPane somewhere?

Cheers,
Doru


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

It seems you are asking for the scroll value before the layout has been calculated.
(since the window hasn't received a fullbounds yet).


| m scroll |
m := PanelMorph new.
m
hResizing: #shrinkWrap;
vResizing: #spaceFill;
changeTableLayout;
listDirection: #leftToRight.
m addMorphBack: (Morph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
scroll := GeneralScrollPane new
changeScrollerTableLayout;
scrollTarget: m.
scroll openInWindow.
scroll hScrollbar setValue: 1.0.
m addMorphBack: (Morph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
"Recalculate bounds now for this example... not generally needed for normal code!"
scroll fullBounds.
  "****"
scroll hScrollbar value

Is not normally an issue, as you can see from inspecting the scroller after being opened.

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Sent: Sunday, January 16, 2011 10:56 AM
Subject: Re: [Pharo-project] aligning morphs


Hi Gary,

I would like to implement a Finder-like behavior the GeneralScrollPane. For this, I would need a way to control the scrolling so that every time I add a new morph, the scroller scrolls (similar to ScrollBar>>animateValue:duration: from OB).

The problem seems to be that the scrollbar value is not updated when I add a new morph. Take a look at the code below. The result of the horizontal scrollbar value at the end is 1.0, while it should be lower. Am I doing something wrong, or is this a problem?

| m scroll |
m := PanelMorph new.
m
hResizing: #shrinkWrap;
vResizing: #spaceFill;
changeTableLayout;
listDirection: #leftToRight;
m addMorphBack: (Morph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
scroll := GeneralScrollPane new
changeScrollerTableLayout;
scrollTarget: m.
scroll openInWindow.
scroll hScrollbar setValue: 1.0.
m addMorphBack: (Morph new
minWidth: 100;
hResizing: #shrinkWrap;
vResizing: #spaceFill).
scroll hScrollbar value

==> 1.0

Cheers,
Doru



On 11 Jan 2011, at 15:17, Gary Chambers wrote:

A slight revision as this has highlighted an edge case in the original class
as to when scrollbars are needed...

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Sent: Tuesday, January 11, 2011 1:53 PM
Subject: Re: [Pharo-project] aligning morphs


Excellent!

I tried the example and it works well. I will work with it in the following days.

Cheers,
Doru


On 11 Jan 2011, at 14:39, Gary Chambers wrote:

Try the attached change set with the following example...
Let me know if any use and we'll get it integrated.

|m|
m := PanelMorph new.
m
fillStyle: Color green;
hResizing: #spaceFill;
vResizing: #spaceFill;
changeTableLayout;
layoutInset: 8.
m addMorph: (Morph new
height: 160;
minWidth: 100;
hResizing: #spaceFill;
vResizing: #shrinkWrap).
GeneralScrollPane new
changeScrollerTableLayout;
scrollTarget: m;
openInWindow


Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Sent: Monday, January 10, 2011 8:23 PM
Subject: Re: [Pharo-project] aligning morphs


Wow, that would be great! I cannot wait to test it.

Cheers,
Doru


On 10 Jan 2011, at 16:50, Gary Chambers wrote:

I may get time later in the week to have a go with GeneralScrollPane to support the feature you desire... ;-)

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]>
To: <[email protected]>
Cc: <[email protected]>
Sent: Monday, January 10, 2011 2:23 PM
Subject: Re: [Pharo-project] aligning morphs


Hi Gary,

Thanks for the reply.

So, what would be required for scrollbars to work with spaceFill? I would really need this feature, but I do not know how to go about it.

Could you or anyone else provide some hints? Of course code would be even better. But at this moment hi ts would be helpful, too :)

Cheers,
Doru



On Jan 10, 2011, at 13:04, "Gary Chambers" <[email protected]> wrote:

Hi Doru,

#spaceFill constraints are typically only used by table layouts.
ScrollPane is designed for fixed size contents, at present.
Might be nice to extend it to honour any #spaceFill of its single target morph.
This would simplify usage of scrollers quite a bit!

Regards, Gary

----- Original Message ----- From: "Tudor Girba" <[email protected]> To: "[email protected] Development" <[email protected]>
Sent: Saturday, January 08, 2011 1:22 AM
Subject: [Pharo-project] aligning morphs



Hi,

I would need help with understanding the magic behind alignment in Morphic.

Take the example from below. Could anyone help me with what I should do to have the morph stretch all the way horizontally?

| scroll window morph |
scroll := ScrollPane new.
scroll
fillStyle: (SolidFillStyle color: Color blue);
vResizing: #spaceFill;
hResizing: #spaceFill.
morph := PanelMorph new.
morph
fillStyle: (SolidFillStyle color: Color yellow);
changeTableLayout;
listDirection: #topToBottom;
vResizing: #shrinkWrap;
hResizing: #spaceFill;
layoutInset: 10.
morph addMorphBack: (SimpleButtonMorph new width: 200; height: 200).
scroll scroller addMorph: morph.
window := SystemWindow new.
window addMorph: scroll fullFrame: (LayoutFrame fractions: (0 @ 0 corner: 1 @ 1)).
window openInWorld


Cheers,
Doru


--
www.tudorgirba.com

"Every thing should have the right to be different."








--
www.tudorgirba.com

"Problem solving efficiency grows with the abstractness level of problem understanding."



<GeneralScrollPaneLayout.1.cs>

--
www.tudorgirba.com

"Some battles are better lost than fought."



<GeneralScrollPaneLayout.2.cs>

--
www.tudorgirba.com

"In a world where everything is moving ever faster,
one might have better chances to win by moving slower."






--
www.tudorgirba.com

"To lead is not to demand things, it is to make them happen."





Reply via email to