GWT 2.7.0

com.google.gwt.user.client.ui
Class ScrollPanel

java.lang.Object
  extended by com.google.gwt.user.client.ui.UIObject
      extended by com.google.gwt.user.client.ui.Widget
          extended by com.google.gwt.user.client.ui.Panel
              extended by com.google.gwt.user.client.ui.SimplePanel
                  extended by com.google.gwt.user.client.ui.ScrollPanel
All Implemented Interfaces:
HasScrollHandlers, HasAttachHandlers, HasHandlers, EventListener, AcceptsOneWidget, HasHorizontalScrolling, HasOneWidget, HasScrolling, HasVerticalScrolling, HasVisibility, HasWidgets, HasWidgets.ForIsWidget, IsWidget, ProvidesResize, RequiresResize, SourcesScrollEvents, java.lang.Iterable<Widget>
Direct Known Subclasses:
CustomScrollPanel

public class ScrollPanel
extends SimplePanel
implements SourcesScrollEvents, RequiresResize, ProvidesResize, HasScrolling

A simple panel that wraps its contents in a scrollable area.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
 
Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.HasWidgets
HasWidgets.ForIsWidget
 
Field Summary
 
Fields inherited from class com.google.gwt.user.client.ui.SimplePanel
widget
 
Fields inherited from class com.google.gwt.user.client.ui.Widget
eventsToSink
 
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR
 
Constructor Summary
  ScrollPanel()
          Creates an empty scroll panel.
protected ScrollPanel(Element root, Element scrollable, Element container)
          Creates an empty scroll panel using the specified root, scrollable, and container elements.
  ScrollPanel(Widget child)
          Creates a new scroll panel with the given child widget.
 
Method Summary
 HandlerRegistration addScrollHandler(ScrollHandler handler)
          Adds a ScrollEvent handler.
 void addScrollListener(ScrollListener listener)
          Deprecated. Use addScrollHandler(com.google.gwt.event.dom.client.ScrollHandler) instead
 void ensureVisible(UIObject item)
          Ensures that the specified item is visible, by adjusting the panel's scroll position.
protected  Element getContainerElement()
          Override this method to specify that an element other than the root element be the container for the panel's child widget.
 int getHorizontalScrollPosition()
          Gets the horizontal scroll position.
 int getMaximumHorizontalScrollPosition()
          Get the maximum position of horizontal scrolling.
 int getMaximumVerticalScrollPosition()
          Get the maximum position of vertical scrolling.
 int getMinimumHorizontalScrollPosition()
          Get the minimum position of horizontal scrolling.
 int getMinimumVerticalScrollPosition()
          Get the minimum position of vertical scrolling.
protected  Element getScrollableElement()
          Get the scrollable element.
 int getScrollPosition()
          Deprecated. as of GWT 2.3, replaced by getVerticalScrollPosition()
 int getVerticalScrollPosition()
          Gets the vertical scroll position.
 boolean isTouchScrollingDisabled()
          Check whether or not touch based scrolling is disabled.
protected  void onAttach()
           This method is called when a widget is attached to the browser's document.
protected  void onDetach()
           This method is called when a widget is detached from the browser's document.
 void onResize()
          This method must be called whenever the implementor's size has been modified.
 void removeScrollListener(ScrollListener listener)
          Deprecated. Use the HandlerRegistration.removeHandler() method on the object returned by addScrollHandler(com.google.gwt.event.dom.client.ScrollHandler) instead
 void scrollToBottom()
          Scroll to the bottom of this panel.
 void scrollToLeft()
          Scroll to the far left of this panel.
 void scrollToRight()
          Scroll to the far right of this panel.
 void scrollToTop()
          Scroll to the top of this panel.
 void setAlwaysShowScrollBars(boolean alwaysShow)
          Sets whether this panel always shows its scroll bars, or only when necessary.
 void setHeight(java.lang.String height)
          Sets the object's height.
 void setHorizontalScrollPosition(int position)
          Sets the horizontal scroll position.
 void setScrollPosition(int position)
          Deprecated. as of GWT 2.3, replaced by setVerticalScrollPosition(int)
 void setSize(java.lang.String width, java.lang.String height)
          Sets the object's size.
 boolean setTouchScrollingDisabled(boolean isDisabled)
          Set whether or not touch scrolling is disabled.
 void setVerticalScrollPosition(int position)
          Sets the vertical scroll position.
 void setWidth(java.lang.String width)
          Sets the object's width.
 
Methods inherited from class com.google.gwt.user.client.ui.SimplePanel
add, getWidget, iterator, remove, setWidget, setWidget
 
Methods inherited from class com.google.gwt.user.client.ui.Panel
add, adopt, clear, doAttachChildren, doDetachChildren, orphan, remove
 
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents
 
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setPixelSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, sinkBitlessEvent, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
 
Methods inherited from interface com.google.gwt.user.client.ui.IsWidget
asWidget
 

Constructor Detail

ScrollPanel

public ScrollPanel()
Creates an empty scroll panel.


ScrollPanel

public ScrollPanel(Widget child)
Creates a new scroll panel with the given child widget.

Parameters:
child - the widget to be wrapped by the scroll panel

ScrollPanel

protected ScrollPanel(Element root,
                      Element scrollable,
                      Element container)
Creates an empty scroll panel using the specified root, scrollable, and container elements.

Parameters:
root - the root element of the Widget
scrollable - the scrollable element, which can be the same as the root element
container - the container element that holds the child
Method Detail

addScrollHandler

public HandlerRegistration addScrollHandler(ScrollHandler handler)
Description copied from interface: HasScrollHandlers
Adds a ScrollEvent handler.

Specified by:
addScrollHandler in interface HasScrollHandlers
Parameters:
handler - the scroll handler
Returns:
HandlerRegistration used to remove this handler

addScrollListener

@Deprecated
public void addScrollListener(ScrollListener listener)
Deprecated. Use addScrollHandler(com.google.gwt.event.dom.client.ScrollHandler) instead

Description copied from interface: SourcesScrollEvents
Adds a listener interface to receive scroll events.

Specified by:
addScrollListener in interface SourcesScrollEvents
Parameters:
listener - the listener interface to add

ensureVisible

public void ensureVisible(UIObject item)
Ensures that the specified item is visible, by adjusting the panel's scroll position.

Parameters:
item - the item whose visibility is to be ensured

getHorizontalScrollPosition

public int getHorizontalScrollPosition()
Gets the horizontal scroll position.

Specified by:
getHorizontalScrollPosition in interface HasHorizontalScrolling
Returns:
the horizontal scroll position, in pixels

getMaximumHorizontalScrollPosition

public int getMaximumHorizontalScrollPosition()
Description copied from interface: HasHorizontalScrolling
Get the maximum position of horizontal scrolling. This is usually the scrollWidth - clientWidth.

Specified by:
getMaximumHorizontalScrollPosition in interface HasHorizontalScrolling
Returns:
the maximum horizontal scroll position

getMaximumVerticalScrollPosition

public int getMaximumVerticalScrollPosition()
Description copied from interface: HasVerticalScrolling
Get the maximum position of vertical scrolling. This is usually the scrollHeight - clientHeight.

Specified by:
getMaximumVerticalScrollPosition in interface HasVerticalScrolling
Returns:
the maximum vertical scroll position

getMinimumHorizontalScrollPosition

public int getMinimumHorizontalScrollPosition()
Description copied from interface: HasHorizontalScrolling
Get the minimum position of horizontal scrolling.

Specified by:
getMinimumHorizontalScrollPosition in interface HasHorizontalScrolling
Returns:
the minimum horizontal scroll position

getMinimumVerticalScrollPosition

public int getMinimumVerticalScrollPosition()
Description copied from interface: HasVerticalScrolling
Get the minimum position of vertical scrolling.

Specified by:
getMinimumVerticalScrollPosition in interface HasVerticalScrolling
Returns:
the minimum vertical scroll position

getScrollPosition

@Deprecated
public int getScrollPosition()
Deprecated. as of GWT 2.3, replaced by getVerticalScrollPosition()

Gets the vertical scroll position.

Returns:
the vertical scroll position, in pixels

getVerticalScrollPosition

public int getVerticalScrollPosition()
Description copied from interface: HasVerticalScrolling
Gets the vertical scroll position.

Specified by:
getVerticalScrollPosition in interface HasVerticalScrolling
Returns:
the vertical scroll position, in pixels

isTouchScrollingDisabled

public boolean isTouchScrollingDisabled()
Check whether or not touch based scrolling is disabled. This method always returns false on devices that do not support touch scrolling.

Returns:
true if disabled, false if enabled

onResize

public void onResize()
Description copied from interface: RequiresResize
This method must be called whenever the implementor's size has been modified.

Specified by:
onResize in interface RequiresResize

removeScrollListener

@Deprecated
public void removeScrollListener(ScrollListener listener)
Deprecated. Use the HandlerRegistration.removeHandler() method on the object returned by addScrollHandler(com.google.gwt.event.dom.client.ScrollHandler) instead

Description copied from interface: SourcesScrollEvents
Removes a previously added scroll listener.

Specified by:
removeScrollListener in interface SourcesScrollEvents
Parameters:
listener - the listener interface to remove

scrollToBottom

public void scrollToBottom()
Scroll to the bottom of this panel.


scrollToLeft

public void scrollToLeft()
Scroll to the far left of this panel.


scrollToRight

public void scrollToRight()
Scroll to the far right of this panel.


scrollToTop

public void scrollToTop()
Scroll to the top of this panel.


setAlwaysShowScrollBars

public void setAlwaysShowScrollBars(boolean alwaysShow)
Sets whether this panel always shows its scroll bars, or only when necessary.

Parameters:
alwaysShow - true to show scroll bars at all times

setHeight

public void setHeight(java.lang.String height)
Sets the object's height. This height does not include decorations such as border, margin, and padding.

Overrides:
setHeight in class UIObject
Parameters:
height - the object's new height, in absolute CSS units (e.g. "10px", "1em" but not "50%")

setHorizontalScrollPosition

public void setHorizontalScrollPosition(int position)
Sets the horizontal scroll position.

Specified by:
setHorizontalScrollPosition in interface HasHorizontalScrolling
Parameters:
position - the new horizontal scroll position, in pixels

setScrollPosition

@Deprecated
public void setScrollPosition(int position)
Deprecated. as of GWT 2.3, replaced by setVerticalScrollPosition(int)

Sets the vertical scroll position.

Parameters:
position - the new vertical scroll position, in pixels

setSize

public void setSize(java.lang.String width,
                    java.lang.String height)
Sets the object's size. This size does not include decorations such as border, margin, and padding.

Overrides:
setSize in class UIObject
Parameters:
width - the object's new width, in absolute CSS units (e.g. "10px", "1em", but not "50%")
height - the object's new height, in absolute CSS units (e.g. "10px", "1em", but not "50%")

setTouchScrollingDisabled

public boolean setTouchScrollingDisabled(boolean isDisabled)
Set whether or not touch scrolling is disabled. By default, touch scrolling is enabled on devices that support touch events.

Parameters:
isDisabled - true to disable, false to enable
Returns:
true if touch scrolling is enabled and supported, false if disabled or not supported

setVerticalScrollPosition

public void setVerticalScrollPosition(int position)
Description copied from interface: HasVerticalScrolling
Sets the vertical scroll position.

Specified by:
setVerticalScrollPosition in interface HasVerticalScrolling
Parameters:
position - the new vertical scroll position, in pixels

setWidth

public void setWidth(java.lang.String width)
Sets the object's width. This width does not include decorations such as border, margin, and padding.

Overrides:
setWidth in class UIObject
Parameters:
width - the object's new width, in absolute CSS units (e.g. "10px", "1em", but not "50%")

getContainerElement

protected Element getContainerElement()
Description copied from class: SimplePanel
Override this method to specify that an element other than the root element be the container for the panel's child widget. This can be useful when you want to create a simple panel that decorates its contents. Note that this method continues to return the Element class defined in the User module to maintain backwards compatibility.

Overrides:
getContainerElement in class SimplePanel
Returns:
the element to be used as the panel's container

getScrollableElement

protected Element getScrollableElement()
Get the scrollable element. That is the element with its overflow set to 'auto' or 'scroll'.

Returns:
the scrollable element

onAttach

protected void onAttach()
Description copied from class: Widget

This method is called when a widget is attached to the browser's document. To receive notification after a Widget has been added to the document, override the Widget.onLoad() method or use Widget.addAttachHandler(com.google.gwt.event.logical.shared.AttachEvent.Handler).

It is strongly recommended that you override Widget.onLoad() or Widget.doAttachChildren() instead of this method to avoid inconsistencies between logical and physical attachment states.

Subclasses that override this method must call super.onAttach() to ensure that the Widget has been attached to its underlying Element.

Overrides:
onAttach in class Widget
See Also:
Widget.onLoad(), Widget.doAttachChildren()

onDetach

protected void onDetach()
Description copied from class: Widget

This method is called when a widget is detached from the browser's document. To receive notification before a Widget is removed from the document, override the Widget.onUnload() method or use Widget.addAttachHandler(com.google.gwt.event.logical.shared.AttachEvent.Handler).

It is strongly recommended that you override Widget.onUnload() or Widget.doDetachChildren() instead of this method to avoid inconsistencies between logical and physical attachment states.

Subclasses that override this method must call super.onDetach() to ensure that the Widget has been detached from the underlying Element. Failure to do so will result in application memory leaks due to circular references between DOM Elements and JavaScript objects.

Overrides:
onDetach in class Widget
See Also:
Widget.onUnload(), Widget.doDetachChildren()

GWT 2.7.0