From: Matti Tahvonen Date: Tue, 24 Jun 2008 07:52:33 +0000 (+0000) Subject: scrollable related changes, fixes #1834, #1846 X-Git-Tag: 6.7.0.beta1~4562 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=8ec309ff846550f60e4e4999fde54d10dec63b56;p=vaadin-framework.git scrollable related changes, fixes #1834, #1846 svn changeset:4942/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/terminal/Scrollable.java b/src/com/itmill/toolkit/terminal/Scrollable.java index a874d2fd1b..e1301d751a 100644 --- a/src/com/itmill/toolkit/terminal/Scrollable.java +++ b/src/com/itmill/toolkit/terminal/Scrollable.java @@ -18,54 +18,54 @@ package com.itmill.toolkit.terminal; public interface Scrollable { /** - * Gets scroll X offset. + * Gets scroll left offset. * *

* Scrolling offset is the number of pixels this scrollable has been - * scrolled to left. + * scrolled right. *

* * @return Horizontal scrolling position in pixels. */ - public int getScrollOffsetX(); + public int getScrollLeft(); /** - * Sets scroll X offset. + * Sets scroll left offset. * *

* Scrolling offset is the number of pixels this scrollable has been - * scrolled to left. + * scrolled right. *

* - * @param pixelsScrolledLeft + * @param pixelsScrolled * the xOffset. */ - public void setScrollOffsetX(int pixelsScrolledLeft); + public void setScrollLeft(int pixelsScrolled); /** - * Gets scroll Y offset. + * Gets scroll top offset. * *

* Scrolling offset is the number of pixels this scrollable has been - * scrolled to down. + * scrolled down. *

* * @return Vertical scrolling position in pixels. */ - public int getScrollOffsetY(); + public int getScrollTop(); /** - * Sets scroll Y offset. + * Sets scroll top offset. * *

* Scrolling offset is the number of pixels this scrollable has been - * scrolled to down. + * scrolled down. *

* - * @param pixelsScrolledDown + * @param pixelsScrolled * the yOffset. */ - public void setScrollOffsetY(int pixelsScrolledDown); + public void setScrollTop(int pixelsScrolled); /** * Is the scrolling enabled. diff --git a/src/com/itmill/toolkit/ui/Panel.java b/src/com/itmill/toolkit/ui/Panel.java index c936ddd374..22e0c884bc 100644 --- a/src/com/itmill/toolkit/ui/Panel.java +++ b/src/com/itmill/toolkit/ui/Panel.java @@ -176,8 +176,8 @@ public class Panel extends AbstractComponentContainer implements Scrollable, } if (isScrollable()) { - target.addVariable(this, "scrollleft", getScrollOffsetX()); - target.addVariable(this, "scrolldown", getScrollOffsetY()); + target.addVariable(this, "scrollleft", getScrollLeft()); + target.addVariable(this, "scrolltop", getScrollTop()); } if (actionHandlers != null && !actionHandlers.isEmpty()) { @@ -293,12 +293,12 @@ public class Panel extends AbstractComponentContainer implements Scrollable, // Scrolling final Integer newScrollX = (Integer) variables.get("scrollleft"); - final Integer newScrollY = (Integer) variables.get("scrolldown"); - if (newScrollX != null && newScrollX.intValue() != getScrollOffsetX()) { - setScrollOffsetX(newScrollX.intValue()); + final Integer newScrollY = (Integer) variables.get("scrolltop"); + if (newScrollX != null && newScrollX.intValue() != getScrollLeft()) { + setScrollLeft(newScrollX.intValue()); } - if (newScrollY != null && newScrollY.intValue() != getScrollOffsetY()) { - setScrollOffsetY(newScrollY.intValue()); + if (newScrollY != null && newScrollY.intValue() != getScrollTop()) { + setScrollTop(newScrollY.intValue()); } // Actions @@ -318,15 +318,29 @@ public class Panel extends AbstractComponentContainer implements Scrollable, /* Scrolling functionality */ /* Documented in interface */ - public int getScrollOffsetX() { + public int getScrollLeft() { return scrollOffsetX; } + /** + * @deprecated use getScrollLeft() instead + */ + public int getScrollOffsetX() { + return getScrollLeft(); + } + /* Documented in interface */ - public int getScrollOffsetY() { + public int getScrollTop() { return scrollOffsetY; } + /** + * @deprecated use getScrollTop() instead + */ + public int getScrollOffsetY() { + return getScrollTop(); + } + /* Documented in interface */ public boolean isScrollable() { return scrollable; @@ -341,19 +355,26 @@ public class Panel extends AbstractComponentContainer implements Scrollable, } /* Documented in interface */ - public void setScrollOffsetX(int pixelsScrolledLeft) { - if (pixelsScrolledLeft < 0) { + public void setScrollLeft(int pixelsScrolled) { + if (pixelsScrolled < 0) { throw new IllegalArgumentException( "Scroll offset must be at least 0"); } - if (scrollOffsetX != pixelsScrolledLeft) { - scrollOffsetX = pixelsScrolledLeft; + if (scrollOffsetX != pixelsScrolled) { + scrollOffsetX = pixelsScrolled; requestRepaint(); } } + /** + * @deprecated use setScrollLeft() method instead + */ + public void setScrollOffsetX(int pixels) { + setScrollLeft(pixels); + } + /* Documented in interface */ - public void setScrollOffsetY(int pixelsScrolledDown) { + public void setScrollTop(int pixelsScrolledDown) { if (pixelsScrolledDown < 0) { throw new IllegalArgumentException( "Scroll offset must be at least 0"); @@ -364,6 +385,13 @@ public class Panel extends AbstractComponentContainer implements Scrollable, } } + /** + * @deprecated use setScrollTop() method instead + */ + public void setScrollOffsetY(int pixels) { + setScrollTop(pixels); + } + /* Documented in superclass */ public void replaceComponent(Component oldComponent, Component newComponent) { diff --git a/src/com/itmill/toolkit/ui/Window.java b/src/com/itmill/toolkit/ui/Window.java index d8bc210cd6..e486423b94 100644 --- a/src/com/itmill/toolkit/ui/Window.java +++ b/src/com/itmill/toolkit/ui/Window.java @@ -104,16 +104,6 @@ public class Window extends Panel implements URIHandler, ParameterHandler { */ private int positionX = -1; - /** - * Distance scrolled from top in pixels. - */ - private int scrollTop = 0; - - /** - * Distance scrolled from left in pixels. - */ - private int scrollLeft = 0; - private LinkedList notifications; private boolean modal = false; @@ -501,10 +491,6 @@ public class Window extends Panel implements URIHandler, ParameterHandler { target.addVariable(this, "positionx", getPositionX()); target.addVariable(this, "positiony", getPositionY()); - // Window position - target.addVariable(this, "scrolltop", getScrollTop()); - target.addVariable(this, "scrollleft", getScrollLeft()); - // Window closing target.addVariable(this, "close", false); @@ -832,18 +818,6 @@ public class Window extends Panel implements URIHandler, ParameterHandler { setPositionY(y < 0 ? -1 : y); } - // Scroll position - final Integer scrolltop = (Integer) variables.get("scrolltop"); - if (scrolltop != null) { - final int top = scrolltop.intValue(); - setScrollTop(top < 0 ? 0 : top); - } - final Integer scrollleft = (Integer) variables.get("scrollleft"); - if (scrollleft != null) { - final int left = scrollleft.intValue(); - setScrollLeft(left < 0 ? 0 : left); - } - // Closing final Boolean close = (Boolean) variables.get("close"); if (close != null && close.booleanValue()) { @@ -1045,44 +1019,6 @@ public class Window extends Panel implements URIHandler, ParameterHandler { return Collections.unmodifiableSet(subwindows); } - /** - * Gets the current vertical scroll position of window. - * - * @return pixels scrolled from top - */ - public int getScrollTop() { - return scrollTop; - } - - /** - * Scrolls window to given position. - * - * @param scrollTop - * pixels to be scrolled from top - */ - public void setScrollTop(int scrollTop) { - this.scrollTop = scrollTop; - } - - /** - * Gets the current horizontal scroll position of window. - * - * @return pixels scrolled from left - */ - public int getScrollLeft() { - return scrollLeft; - } - - /** - * Scrolls window to given position. - * - * @param scrollLeft - * pixels to be scrolled from left - */ - public void setScrollLeft(int scrollLeft) { - this.scrollLeft = scrollLeft; - } - /** * Sets sub-window modal, so that widgets behind it cannot be accessed. *