David it works (gwt2.2).

But how can I set the height at rendering time (before any browser
event)?


On Feb 18, 1:53 pm, David Goodenough <david.goodeno...@btconnect.com>
wrote:
> I have not tried it on a RichTextArea, but the principle should work
> on those too.
>
> David
>
> On Friday 18 February 2011, Carlo Alberto Degli Atti wrote:
>
>
>
>
>
>
>
> > Hi David,
>
> >  thank you for your answer! I will try it and I will give you my
> > feedback :-)
>
> >  In my case the width is not a problem; my concern is about the height
> > (the number of displayed rows)...
>
> >  best regards,
>
> >  CA
>
> > On Feb 18, 1:11 pm, David Goodenough <david.goodeno...@btconnect.com>
>
> > wrote:
> > > On Friday 18 February 2011, Carlo Alberto Degli Atti wrote:> Hi,
>
> > > >  I've looked around but I haven't found any solution, so I post it
> > > > here:
>
> > > >  how can I make a TextArea that expands its height depending on the
> > > > text inside?
>
> > > >  Thanks
>
> > > >  CA
>
> > > Its good to find someone else who wants this.  I first came across
> > > fields like this with Lotus Notes, which has had these for years.  They
> > > are really useful, but very few other systems seem to have them and
> > > to be honest it is one of the things that puts me off browsers - but that
> > > is another story.
>
> > > I wrote some code which did this while ago, but I do not know if
> > > it still works on a current GWT, and I am absolutely sure it can be
> > > done better.
>
> > > import com.google.gwt.user.client.Element;
> > > import com.google.gwt.user.client.Event;
> > > import com.google.gwt.user.client.ui.TextArea;
>
> > > public class ExpandingTextArea extends TextArea {
> > >         public void onBrowserEvent( Event event) {
> > >                 super.onBrowserEvent( event);
> > >                 if (getOffsetHeight( ) <= getScrollHeight( getElement(
> > > )))           setHeight( ( getScrollHeight( getElement( )) + 6)+"px"); }
> > >         private native int getScrollHeight( Element e) /*-{
> > >                 return e.scrollHeight;
> > >                 }-*/;
> > >         public void rightSize( ) {
> > >                 Element el = getElement( );
> > >                 int h = getScrollHeight( el);
> > >                 setHeight( ( h + 6) + "px");
> > >                 }
> > >         };
>
> > > The fact that it has a magic number in it (6) is just plain wrong, and
> > > I can not for the life of me remember why that number is there.
>
> > > rightSize needs to be called when laying out a form, just to get started.
> > > Again this can be done better.  It is also possible that somewhere
> > > along the line the need for getScrollHeight has gone, but I have not
> > > been following the API closely enough to see.
>
> > > To get the full Notes function, one would also need to set the width of
> > > the area.  This only sets the height.  But that is for another day.
>
> > > Hope someone can turn this into something that works properly.
>
> > > David

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to