Class ScrollPanel

A panel that wraps its contents in a scrollable element.

Note that this panel can contain at most one direct child widget. To add more children, make the child of this panel a different panel that can contain more than one child.

Here is an example of how to use this widget:

 
function doGet() {
   var app = UiApp.createApplication();
   // Create some long content.
   var vertical = app.createVerticalPanel();
   for (var i = 0; i < 100; ++i) {
     vertical.add(app.createButton("button " + i));
   }
   var scroll = app.createScrollPanel().setPixelSize(100, 100);
   scroll.add(vertical);
   app.add(scroll);
   return app;
 }
 

Internally, UiApp widgets are built on top of the Google Web Toolkit, and it can sometimes be helpful to look at the GWT documentation directly. You can find the ScrollPanel documentation here.

Methods

MethodReturn typeBrief description
add(widget)ScrollPanelAdd a widget to the ScrollPanel.
addScrollHandler(handler)ScrollPanelAdd a handler for scroll events.
addStyleDependentName(styleName)ScrollPanelSets the dependent style name of this ScrollPanel.
addStyleName(styleName)ScrollPanelAdds a style name to this ScrollPanel.
clear()ScrollPanelRemove all widgets from the ScrollPanel.
getId()StringReturns the id that has been assigned to this object.
getTag()StringGets the text tag of this ScrollPanel.
getType()StringGets the type of this object.
setAlwaysShowScrollBars(alwaysShow)ScrollPanelSets whether to always show scrollbars even if they are not needed.
setHeight(height)ScrollPanelSets the height of this ScrollPanel.
setHorizontalScrollPosition(position)ScrollPanelSets the horizontal scroll position of this ScrollPanel.
setId(id)ScrollPanelSets the id of this ScrollPanel.
setPixelSize(width, height)ScrollPanelSets the size of this ScrollPanel in pixels.
setScrollPosition(position)ScrollPanelSets the vertical scroll position of this ScrollPanel.
setSize(width, height)ScrollPanelSets the size of this ScrollPanel.
setStyleAttribute(attribute, value)ScrollPanelSets one of this ScrollPanel's style attributes to a new value.
setStyleAttributes(attributes)ScrollPanelSets this ScrollPanel's style attributes.
setStyleName(styleName)ScrollPanelSets the style name of this ScrollPanel.
setStylePrimaryName(styleName)ScrollPanelSets the primary style name of this ScrollPanel.
setTag(tag)ScrollPanelSets the text tag of this ScrollPanel.
setTitle(title)ScrollPanelSets the hover title of this ScrollPanel.
setVisible(visible)ScrollPanelSets whether this ScrollPanel is visible.
setWidget(widget)ScrollPanelSets the widget inside this ScrollPanel, removing anything previously there.
setWidth(width)ScrollPanelSets the width of this ScrollPanel.

Detailed documentation

add(widget)

Add a widget to the ScrollPanel.

Parameters

NameTypeDescription
widgetWidgetthe widget to add.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


addScrollHandler(handler)

Add a handler for scroll events.

The handler passes back some information to the server about what happened. This information can be accessed as follows:

 
function doGet() {
   var app = UiApp.createApplication();
   var label = app.createLabel("some label").setHeight("500px");
   var scroll = app.createScrollPanel(label).setHeight("200px");
   var handler = app.createServerHandler("handlerFunction");
   scroll.addScrollHandler(handler);
   app.add(scroll);
   return app;
 }

 function handlerFunction(eventInfo) {
   var parameter = eventInfo.parameter;
   // the type of event, in this case "scroll".
   var eventType = parameter.eventType;
   // the id of the widget that fired this event.
   var source = parameter.source;
 }
 
In addition, the values of certain widgets can be sent up with the event as well, as "callback elements." See the documentation of ServerHandler for more information. For an explanation of charCode and keyCode, including what to expect on different browsers, look here.

Parameters

NameTypeDescription
handlerHandlerthe handler to execute when the event occurs. This can be a ClientHandler or a ServerHandler.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


addStyleDependentName(styleName)

Sets the dependent style name of this ScrollPanel.

This is useful for debugging but is otherwise of minimal use since there is no way to use custom stylesheets in UiApp.

Parameters

NameTypeDescription
styleNameStringthe new style name.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


addStyleName(styleName)

Adds a style name to this ScrollPanel.

This is useful for debugging but is otherwise of minimal use since there is no way to use custom stylesheets in UiApp.

Parameters

NameTypeDescription
styleNameStringthe new style name.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


clear()

Remove all widgets from the ScrollPanel.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


getId()

Returns the id that has been assigned to this object.

This can be used in conjunction with app.getElementById() to retrieve a reference to this object.

Return

String — the id that has been assigned to this object


getTag()

Gets the text tag of this ScrollPanel.

Return

String — the text tag.


getType()

Gets the type of this object.

Return

String — the object type


setAlwaysShowScrollBars(alwaysShow)

Sets whether to always show scrollbars even if they are not needed.

Parameters

NameTypeDescription
alwaysShowBooleanwhether to always show scrollbars

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setHeight(height)

Sets the height of this ScrollPanel.

Parameters

NameTypeDescription
heightStringthe new height in any CSS unit such as "10px" or "50%".

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setHorizontalScrollPosition(position)

Sets the horizontal scroll position of this ScrollPanel.

Parameters

NameTypeDescription
positionIntegerthe new horizontal scroll position, in pixels.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setId(id)

Sets the id of this ScrollPanel.

Parameters

NameTypeDescription
idStringthe new id, which can be used to retrieve the ScrollPanel from app.getElementById(id).

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setPixelSize(width, height)

Sets the size of this ScrollPanel in pixels.

Parameters

NameTypeDescription
widthIntegerthe new width in pixels.
heightIntegerthe new height in pixels.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setScrollPosition(position)

Sets the vertical scroll position of this ScrollPanel.

Parameters

NameTypeDescription
positionIntegerthe new vertical scroll position, in pixels.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setSize(width, height)

Sets the size of this ScrollPanel.

Parameters

NameTypeDescription
widthStringthe new width in any CSS unit such as "10px" or "50%".
heightStringthe new height in any CSS unit such as "10px" or "50%".

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setStyleAttribute(attribute, value)

Sets one of this ScrollPanel's style attributes to a new value. Valid attributes are listed here; the values for each attribute are the same as those available in CSS style sheets.

 
// Change the widget's background to black and text color to green.
 widget.setStyleAttribute("background", "black")
     .setStyleAttribute("color", "green");
 

Parameters

NameTypeDescription
attributeStringthe CSS attribute, in camel-case ("fontSize", not "font-size"), as listed here
valueStringthe CSS value

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setStyleAttributes(attributes)

Sets this ScrollPanel's style attributes. This is a convenience method that is equivalent to calling setStyleAttribute with every key/value pair in the attributes object. Valid attributes are listed here; the values for each attribute are the same as those available in CSS style sheets.

 
// Change the widget's background to black and text color to green.
 widget.setStyleAttributes({background: "black", color: "green"});
 

Parameters

NameTypeDescription
attributesObjectan object of key/value pairs for the CSS attributes and values to set; valid attributes are listed here

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setStyleName(styleName)

Sets the style name of this ScrollPanel.

This is useful for debugging but is otherwise of minimal use since there is no way to use custom stylesheets in UiApp.

Parameters

NameTypeDescription
styleNameStringthe new style name.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setStylePrimaryName(styleName)

Sets the primary style name of this ScrollPanel.

This is useful for debugging but is otherwise of minimal use since there is no way to use custom stylesheets in UiApp.

Parameters

NameTypeDescription
styleNameStringthe new style name.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setTag(tag)

Sets the text tag of this ScrollPanel.

Parameters

NameTypeDescription
tagStringthe new text tag, which can be anything you wish to store with the widget.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setTitle(title)

Sets the hover title of this ScrollPanel.

Not all browsers will show this.

Parameters

NameTypeDescription
titleStringthe hover title.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setVisible(visible)

Sets whether this ScrollPanel is visible.

Parameters

NameTypeDescription
visibleBooleanwhether this ScrollPanel should be visible or not.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setWidget(widget)

Sets the widget inside this ScrollPanel, removing anything previously there.

Parameters

NameTypeDescription
widgetWidgetthe widget to put in this ScrollPanel.

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.


setWidth(width)

Sets the width of this ScrollPanel.

Parameters

NameTypeDescription
widthStringthe new width in any CSS unit such as "10px" or "50%".

Return

ScrollPanel — the ScrollPanel itself, useful for chaining.

Deprecated methods

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.