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 <[email protected]>
> 
> 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 [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to