aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2008-09-16 06:15:10 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2008-09-16 06:15:10 +0000
commit0f5f66e23307d33e14a952965daca3c5d417d647 (patch)
tree84522615ce344e0caee814fc8acebcb7ad1f08f4 /src
parenta24e1bd0f7fa2b561ad9497b2fcf1747d56846fb (diff)
downloadvaadin-framework-0f5f66e23307d33e14a952965daca3c5d417d647.tar.gz
vaadin-framework-0f5f66e23307d33e14a952965daca3c5d417d647.zip
fixes tooltip issues #2074,#2075
svn changeset:5406/svn branch:trunk
Diffstat (limited to 'src')
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/ILabel.java14
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java45
2 files changed, 20 insertions, 39 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILabel.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILabel.java
index 15e1eab9ef..9d0c78b55a 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILabel.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILabel.java
@@ -4,23 +4,35 @@
package com.itmill.toolkit.terminal.gwt.client.ui;
+import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.HTML;
import com.itmill.toolkit.terminal.gwt.client.ApplicationConnection;
+import com.itmill.toolkit.terminal.gwt.client.ITooltip;
import com.itmill.toolkit.terminal.gwt.client.Paintable;
import com.itmill.toolkit.terminal.gwt.client.UIDL;
public class ILabel extends HTML implements Paintable {
public static final String CLASSNAME = "i-label";
+ private ApplicationConnection client;
public ILabel() {
super();
setStyleName(CLASSNAME);
+ sinkEvents(ITooltip.TOOLTIP_EVENTS);
}
public ILabel(String text) {
super(text);
setStyleName(CLASSNAME);
+ sinkEvents(ITooltip.TOOLTIP_EVENTS);
+ }
+
+ public void onBrowserEvent(Event event) {
+ super.onBrowserEvent(event);
+ if (client != null) {
+ client.handleTooltipEvent(event, this);
+ }
}
public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
@@ -29,6 +41,8 @@ public class ILabel extends HTML implements Paintable {
return;
}
+ this.client = client;
+
final String mode = uidl.getStringAttribute("mode");
if (mode == null || "text".equals(mode)) {
setText(uidl.getChildString(0));
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java
index 4b9b86d1a3..edb924f797 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java
@@ -12,7 +12,6 @@ import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Widget;
import com.itmill.toolkit.terminal.gwt.client.ApplicationConnection;
-import com.itmill.toolkit.terminal.gwt.client.IErrorMessage;
import com.itmill.toolkit.terminal.gwt.client.Paintable;
import com.itmill.toolkit.terminal.gwt.client.UIDL;
@@ -42,10 +41,10 @@ public class ILink extends HTML implements Paintable, ClickListener {
private final Element captionElement = DOM.createSpan();
- private IErrorMessage errorMessage;
-
private Icon icon;
+ private ApplicationConnection client;
+
public ILink() {
super();
DOM.appendChild(getElement(), captionElement);
@@ -61,6 +60,8 @@ public class ILink extends HTML implements Paintable, ClickListener {
return;
}
+ this.client = client;
+
enabled = uidl.hasAttribute("disabled") ? false : true;
readonly = uidl.hasAttribute("readonly") ? true : false;
@@ -100,11 +101,6 @@ public class ILink extends HTML implements Paintable, ClickListener {
sinkEvents(Event.MOUSEEVENTS);
}
DOM.insertChild(getElement(), errorIndicatorElement, 0);
- if (errorMessage == null) {
- errorMessage = new IErrorMessage();
- }
- errorMessage.updateFromUIDL(errorUidl);
-
} else if (errorIndicatorElement != null) {
DOM.setStyleAttribute(errorIndicatorElement, "display", "none");
}
@@ -117,11 +113,6 @@ public class ILink extends HTML implements Paintable, ClickListener {
icon.setUri(uidl.getStringAttribute("icon"));
}
- // handle description
- if (uidl.hasAttribute("description")) {
- setTitle(uidl.getStringAttribute("description"));
- }
-
}
public void onClick(Widget sender) {
@@ -157,22 +148,8 @@ public class ILink extends HTML implements Paintable, ClickListener {
public void onBrowserEvent(Event event) {
final Element target = DOM.eventGetTarget(event);
- if (errorIndicatorElement != null
- && DOM.compare(target, errorIndicatorElement)) {
- switch (DOM.eventGetType(event)) {
- case Event.ONMOUSEOVER:
- showErrorMessage();
- break;
- case Event.ONMOUSEOUT:
- hideErrorMessage();
- break;
- case Event.ONCLICK:
- ApplicationConnection.getConsole().log(
- DOM.getInnerHTML(errorMessage.getElement()));
- return;
- default:
- break;
- }
+ if (client != null) {
+ client.handleTooltipEvent(event, this);
}
if (DOM.compare(target, captionElement)
|| (icon != null && DOM.compare(target, icon.getElement()))) {
@@ -180,14 +157,4 @@ public class ILink extends HTML implements Paintable, ClickListener {
}
}
- private void hideErrorMessage() {
- errorMessage.hide();
- }
-
- private void showErrorMessage() {
- if (errorMessage != null) {
- errorMessage.showAt(errorIndicatorElement);
- }
- }
-
}