From e420751790f2f4cfcfa7a5b1077e167a3807c372 Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 5 Apr 2012 10:40:23 +0300 Subject: [PATCH] Fixed GridLayout caption rendering Components that do not delegate caption handling to parent should not get a caption --- .../terminal/gwt/client/ComponentConnector.java | 15 +++++++++++++++ .../client/ui/AbstractComponentConnector.java | 16 ++++++---------- .../terminal/gwt/client/ui/ButtonConnector.java | 2 +- .../gwt/client/ui/CheckBoxConnector.java | 2 +- .../terminal/gwt/client/ui/FormConnector.java | 2 +- .../gwt/client/ui/GridLayoutConnector.java | 4 +++- .../terminal/gwt/client/ui/LinkConnector.java | 2 +- .../gwt/client/ui/NativeButtonConnector.java | 2 +- .../terminal/gwt/client/ui/PanelConnector.java | 2 +- .../gwt/client/ui/PopupViewConnector.java | 2 +- .../gwt/client/ui/UnknownComponentConnector.java | 2 +- .../terminal/gwt/client/ui/WindowConnector.java | 2 +- 12 files changed, 33 insertions(+), 20 deletions(-) diff --git a/src/com/vaadin/terminal/gwt/client/ComponentConnector.java b/src/com/vaadin/terminal/gwt/client/ComponentConnector.java index 48d988be76..34f3f13f03 100644 --- a/src/com/vaadin/terminal/gwt/client/ComponentConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ComponentConnector.java @@ -104,4 +104,19 @@ public interface ComponentConnector extends ServerConnector { public boolean hasEventListener(String eventIdentifier); + /** + * Return true if parent handles caption, false if the paintable handles the + * caption itself. + * + *

+ * This should always return true and all components should let the parent + * handle the caption and use other attributes for internal texts in the + * component + *

+ * + * @return true if caption handling is delegated to the parent, false if + * parent should not be allowed to render caption + */ + public boolean delegateCaptionHandling(); + } diff --git a/src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java b/src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java index 023023293d..9ea03381c4 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java @@ -219,18 +219,14 @@ public abstract class AbstractComponentConnector extends AbstractConnector } } - /** - * Return true if parent handles caption, false if the paintable handles the - * caption itself. - * + /* + * (non-Javadoc) * - * @deprecated This should always return true and all components should let - * the parent handle the caption and use other attributes for - * internal texts in the component - * @return + * @see + * com.vaadin.terminal.gwt.client.ComponentConnector#delegateCaptionHandling + * () */ - @Deprecated - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return true; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/ButtonConnector.java b/src/com/vaadin/terminal/gwt/client/ui/ButtonConnector.java index b905af3d44..ddc9b59430 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/ButtonConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/ButtonConnector.java @@ -43,7 +43,7 @@ public class ButtonConnector extends AbstractComponentConnector implements } @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/CheckBoxConnector.java b/src/com/vaadin/terminal/gwt/client/ui/CheckBoxConnector.java index 2c7f43fede..5c9193f08b 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/CheckBoxConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/CheckBoxConnector.java @@ -19,7 +19,7 @@ public class CheckBoxConnector extends AbstractFieldConnector implements Paintable { @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/FormConnector.java b/src/com/vaadin/terminal/gwt/client/ui/FormConnector.java index 0ac6f0cb69..8e05522eb5 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/FormConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/FormConnector.java @@ -49,7 +49,7 @@ public class FormConnector extends AbstractComponentContainerConnector } @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/GridLayoutConnector.java b/src/com/vaadin/terminal/gwt/client/ui/GridLayoutConnector.java index b3bcc3e58d..1aad705109 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/GridLayoutConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/GridLayoutConnector.java @@ -168,7 +168,9 @@ public class GridLayoutConnector extends AbstractComponentContainerConnector needCaptionUpdate = false; for (ComponentConnector child : getChildren()) { - updateCaption(child); + if (child.delegateCaptionHandling()) { + updateCaption(child); + } } } getLayoutManager().setNeedsUpdate(this); diff --git a/src/com/vaadin/terminal/gwt/client/ui/LinkConnector.java b/src/com/vaadin/terminal/gwt/client/ui/LinkConnector.java index 12fbefa80c..715e902b24 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/LinkConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/LinkConnector.java @@ -17,7 +17,7 @@ public class LinkConnector extends AbstractComponentConnector implements Paintable { @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/NativeButtonConnector.java b/src/com/vaadin/terminal/gwt/client/ui/NativeButtonConnector.java index 991a184e57..bf1299ed27 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/NativeButtonConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/NativeButtonConnector.java @@ -27,7 +27,7 @@ public class NativeButtonConnector extends AbstractComponentConnector implements } @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/PanelConnector.java b/src/com/vaadin/terminal/gwt/client/ui/PanelConnector.java index 19470da73a..529353f990 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/PanelConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/PanelConnector.java @@ -86,7 +86,7 @@ public class PanelConnector extends AbstractComponentContainerConnector } @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/PopupViewConnector.java b/src/com/vaadin/terminal/gwt/client/ui/PopupViewConnector.java index 5da77c7e56..a409b3e5a5 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/PopupViewConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/PopupViewConnector.java @@ -20,7 +20,7 @@ public class PopupViewConnector extends AbstractComponentContainerConnector private boolean centerAfterLayout = false; @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java b/src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java index 42b6bbaf50..54e6043f1b 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java @@ -15,7 +15,7 @@ public class UnknownComponentConnector extends AbstractComponentConnector implements Paintable { @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/WindowConnector.java b/src/com/vaadin/terminal/gwt/client/ui/WindowConnector.java index 7c50b0f34f..34a3f9a94f 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/WindowConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/WindowConnector.java @@ -112,7 +112,7 @@ public class WindowConnector extends AbstractComponentContainerConnector private WindowServerRPC rpc; @Override - protected boolean delegateCaptionHandling() { + public boolean delegateCaptionHandling() { return false; }; -- 2.39.5