Greg Sheremeta has uploaded a new change for review.
Change subject: userportal, webadmin: add WidgetTooltip
......................................................................
userportal, webadmin: add WidgetTooltip
Added a WidgetTooltip class that wraps b:Tooltip. This wrapper class just
facilitates sharing of configuration values with ElementTooltip.
WrapperTooltip is used to wrap Widgets. ElementTooltip works on non-widget
Elements.
Example usage:
<t:WidgetTooltip text="some tooltip text">
<g:Label> ... </g:Label>
</t:WidgetTooltip>
Change-Id: Ic8380921c9a2a206e58fd737059e66212dbc52a9
Signed-off-by: Greg Sheremeta <[email protected]>
---
M
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractTooltipCell.java
M
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/ElementTooltip.java
A
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/TooltipConfig.java
A
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/WidgetTooltip.java
M packaging/branding/ovirt.brand/ovirt.css
5 files changed, 103 insertions(+), 8 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/57/37757/1
diff --git
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractTooltipCell.java
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractTooltipCell.java
index 4a1f3cd..eb41733 100644
---
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractTooltipCell.java
+++
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractTooltipCell.java
@@ -176,7 +176,6 @@
*/
private ElementTooltip addTooltipToCell(SafeHtml tooltipContent, Element
parent, NativeEvent event) {
ElementTooltip tooltip = new ElementTooltip(parent);
- tooltip.setContainer("body"); //$NON-NLS-1$
tooltip.setContent(tooltipContent);
tooltip.reconfigure();
diff --git
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/ElementTooltip.java
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/ElementTooltip.java
index ad7cfa0..969907a 100644
---
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/ElementTooltip.java
+++
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/ElementTooltip.java
@@ -52,16 +52,16 @@
private static final String HIDE = "hide"; //$NON-NLS-1$
private static final String DESTROY = "destroy"; //$NON-NLS-1$
- private boolean isAnimated = true;
- private boolean isHTML = true;
- private Placement placement = Placement.TOP;
- private Trigger trigger = Trigger.HOVER;
+ private boolean isAnimated = TooltipConfig.IS_ANIMATED;
+ private boolean isHTML = TooltipConfig.IS_HTML;
+ private Placement placement = TooltipConfig.PLACEMENT;
+ private Trigger trigger = TooltipConfig.TRIGGER;
private SafeHtml content = null;
- private String container = null;
+ private String container = TooltipConfig.CONTAINER;
private final String selector = null;
- private int hideDelayMs = 0;
- private int showDelayMs = 200;
+ private int hideDelayMs = TooltipConfig.HIDE_DELAY_MS;
+ private int showDelayMs = TooltipConfig.SHOW_DELAY_MS;
private int reaperInterval = 200;
private Timer reaperTimer = null;
diff --git
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/TooltipConfig.java
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/TooltipConfig.java
new file mode 100644
index 0000000..f41b614
--- /dev/null
+++
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/TooltipConfig.java
@@ -0,0 +1,37 @@
+package org.ovirt.engine.ui.common.widget.tooltip;
+
+import org.gwtbootstrap3.client.ui.constants.Placement;
+import org.gwtbootstrap3.client.ui.constants.Trigger;
+
+/**
+ * Constant configuration values shared across all tooltips.
+ */
+public class TooltipConfig {
+
+ public enum Width {
+ W220 ("tooltip-w220"), //$NON-NLS-1$
+ W320 ("tooltip-w320"), //$NON-NLS-1$
+ W420 ("tooltip-w420"), //$NON-NLS-1$
+ W520 ("tooltip-w520"), //$NON-NLS-1$
+ W620 ("tooltip-w620"); //$NON-NLS-1$
+
+ private final String widthClass; // in px
+
+ Width(String widthClass) {
+ this.widthClass = widthClass;
+ }
+
+ public String getWidthClass() {
+ return widthClass;
+ }
+ }
+
+ public final static boolean IS_ANIMATED = true;
+ public final static boolean IS_HTML = true;
+ public final static Placement PLACEMENT = Placement.TOP;
+ public final static Trigger TRIGGER = Trigger.HOVER;
+ public final static String CONTAINER = "body"; //$NON-NLS-1$
+ public final static int HIDE_DELAY_MS = 0;
+ public final static int SHOW_DELAY_MS = 500;
+
+}
diff --git
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/WidgetTooltip.java
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/WidgetTooltip.java
new file mode 100644
index 0000000..a129f13
--- /dev/null
+++
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/WidgetTooltip.java
@@ -0,0 +1,33 @@
+package org.ovirt.engine.ui.common.widget.tooltip;
+
+import org.gwtbootstrap3.client.ui.Tooltip;
+
+import com.google.gwt.user.client.ui.Widget;
+
+/**
+ * Wrapper around Bootstrap Tooltip that sets up oVirt-specific config values.
+ * Use as a drop-in for b:Tooltip.
+ */
+public class WidgetTooltip extends Tooltip {
+
+ public WidgetTooltip(Widget w) {
+ super(w);
+ init();
+ }
+
+ public WidgetTooltip() {
+ super();
+ init();
+ }
+
+ private void init() {
+ this.setIsAnimated(TooltipConfig.IS_ANIMATED);
+ this.setPlacement(TooltipConfig.PLACEMENT);
+ this.setIsHtml(TooltipConfig.IS_HTML);
+ this.setTrigger(TooltipConfig.TRIGGER);
+ this.setShowDelayMs(TooltipConfig.SHOW_DELAY_MS);
+ this.setHideDelayMs(TooltipConfig.HIDE_DELAY_MS);
+ this.setContainer(TooltipConfig.CONTAINER);
+ }
+
+}
diff --git a/packaging/branding/ovirt.brand/ovirt.css
b/packaging/branding/ovirt.brand/ovirt.css
index 49dc1fc..da8bddb 100644
--- a/packaging/branding/ovirt.brand/ovirt.css
+++ b/packaging/branding/ovirt.brand/ovirt.css
@@ -22,3 +22,29 @@
.labelDisabled {
color: gray;
}
+
+
+/***************************************
+Tooltips
+TODO: use SASS, break into tooltips.sass
+****************************************/
+
+.tooltip-w220 .tooltip-inner {
+ max-width: 220px !important;
+}
+
+.tooltip-w320 .tooltip-inner {
+ max-width: 320px !important;
+}
+
+.tooltip-w420 .tooltip-inner {
+ max-width: 420px !important;
+}
+
+.tooltip-w520 .tooltip-inner {
+ max-width: 520px !important;
+}
+
+.tooltip-w620 .tooltip-inner {
+ max-width: 620px !important;
+}
--
To view, visit http://gerrit.ovirt.org/37757
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic8380921c9a2a206e58fd737059e66212dbc52a9
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Greg Sheremeta <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches