You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by no...@apache.org on 2009/09/02 09:07:36 UTC
svn commit: r810385 -
/labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java
Author: norman
Date: Wed Sep 2 07:07:36 2009
New Revision: 810385
URL: http://svn.apache.org/viewvc?rev=810385&view=rev
Log:
Better implementation of Tooltip
Modified:
labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java
Modified: labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java
URL: http://svn.apache.org/viewvc/labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java?rev=810385&r1=810384&r2=810385&view=diff
==============================================================================
--- labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java (original)
+++ labs/hupa/widgets/src/main/java/org/apache/hupa/widgets/ui/ToolTip.java Wed Sep 2 07:07:36 2009
@@ -26,6 +26,10 @@
import com.google.gwt.event.dom.client.MouseOutHandler;
import com.google.gwt.event.dom.client.MouseOverEvent;
import com.google.gwt.event.dom.client.MouseOverHandler;
+import com.google.gwt.event.logical.shared.CloseEvent;
+import com.google.gwt.event.logical.shared.CloseHandler;
+import com.google.gwt.user.client.Timer;
+import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.Widget;
@@ -34,8 +38,17 @@
*
*
*/
-public class ToolTip extends PopupPanel {
+public class ToolTip extends Label {
+
+ private final PopupPanel popup = new PopupPanel();
+ private final Timer showTimer = new Timer() {
+ @Override
+ public void run() {
+ popup.show();
+ }
+
+ };
public ToolTip(Widget w) {
if (!(w instanceof HasMouseOverHandlers) || (!( w instanceof HasMouseOutHandlers))) {
throw new IllegalArgumentException("Widget must implement HasMouseOverHandlers and HasMouseOutHandlers");
@@ -43,7 +56,7 @@
((HasMouseOverHandlers) w).addMouseOverHandler(new MouseOverHandler() {
public void onMouseOver(MouseOverEvent event) {
- show();
+ showTimer.schedule(2000);
}
});
@@ -51,12 +64,28 @@
((HasMouseOutHandlers)w).addMouseOutHandler(new MouseOutHandler() {
public void onMouseOut(MouseOutEvent event) {
- hide();
+ showTimer.cancel();
+ popup.hide();
+ }
+
+ });
+ popup.addCloseHandler(new CloseHandler<PopupPanel>() {
+
+ public void onClose(CloseEvent<PopupPanel> event) {
+ showTimer.cancel();
}
});
addStyleName("hupa-ToolTip");
- setAnimationEnabled(true);
- setAutoHideEnabled(true);
+ popup.addStyleName("hupa-ToolTip");
+ popup.setAnimationEnabled(true);
+ popup.setAutoHideEnabled(true);
+ }
+
+ public void setText(String text) {
+ super.setText(text);
+ popup.setWidget(this);
}
+
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org