Greg Sheremeta has uploaded a new change for review.

Change subject: userportal, webadmin: convert LabelWithTextTruncation to use 
PatternFly tooltips
......................................................................

userportal, webadmin: convert LabelWithTextTruncation to use PatternFly tooltips

Renamed LabelWithTextOverflow --> LabelWithTextTruncation. "overflow" has a 
very specific
meaning in CSS, and what is actually happening in this Label is "truncation."

Converted LabelWithTextTruncation to use PatternFly tooltips.

Change-Id: I4c22d5003c26ef2df418d2df7c76af009ab383e4
Signed-off-by: Greg Sheremeta <gsher...@redhat.com>
---
R 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextTruncation.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.ui.xml
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkLabelPanel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/host/StatisticsPanel.java
5 files changed, 48 insertions(+), 44 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/62/37762/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextOverflow.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextTruncation.java
similarity index 69%
rename from 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextOverflow.java
rename to 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextTruncation.java
index 6978e1c..82fd499 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextOverflow.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/label/LabelWithTextTruncation.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.ui.common.widget.label;
 
 import org.ovirt.engine.ui.common.utils.ElementUtils;
+import org.ovirt.engine.ui.common.widget.tooltip.WidgetTooltip;
 
 import com.google.gwt.dom.client.Style.Overflow;
 import com.google.gwt.dom.client.Style.TextOverflow;
@@ -11,25 +12,27 @@
 import com.google.gwt.user.client.ui.HasEnabled;
 import com.google.gwt.user.client.ui.Label;
 
-/*
- * In case the label's text is cropped, the text is visually trimmed. To let 
the user know that the text was trimmed
- * '...' (three dots) are appended to the string. The tooltip contains the 
full text
- * string.
+/**
+ * A Label that supports text truncation. If the entire Label content doesn't 
fit in the space allotted,
+ * the text is truncated, and an ellipse (...) is appended to the string. The 
full text will be rendered
+ * in a tooltip.
  */
-public class LabelWithTextOverflow extends Composite implements 
IsEditor<LeafValueEditor<String>>, HasEnabled {
+public class LabelWithTextTruncation extends Composite implements 
IsEditor<LeafValueEditor<String>>, HasEnabled {
 
+    WidgetTooltip tooltip;
     private Label label;
     private boolean enabled = true;
 
-    public LabelWithTextOverflow() {
+    public LabelWithTextTruncation() {
         label = new Label();
-        initWidget(label);
+        tooltip = new WidgetTooltip(label);
+        initWidget(tooltip.asWidget());
         getElement().getStyle().setWhiteSpace(WhiteSpace.NOWRAP);
         getElement().getStyle().setOverflow(Overflow.HIDDEN);
         getElement().getStyle().setTextOverflow(TextOverflow.ELLIPSIS);
     }
 
-    public LabelWithTextOverflow(String text) {
+    public LabelWithTextTruncation(String text) {
         this();
         setText(text);
     }
@@ -49,10 +52,11 @@
         }
 
         if (ElementUtils.detectOverflowUsingScrollWidth(label.getElement())) {
-            label.setTitle(getText());
+            tooltip.setText(getText());
         } else {
-            label.setTitle(null);
+            tooltip.setText(null);
         }
+        tooltip.reconfigure();
     }
 
     @Override
@@ -74,6 +78,6 @@
     @Override
     public void setEnabled(boolean enabled) {
         this.enabled = enabled;
-        getElement().getStyle().setColor(enabled ? "#333333" : "gray"); 
//$NON-NLS-1$ $NON-NLS-2$
+        getElement().getStyle().setColor(enabled ? "#333333" : "gray"); 
//$NON-NLS-1$ //$NON-NLS-2$
     }
 }
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.java
index a2659b1..d8094a0 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.java
@@ -4,7 +4,7 @@
 import org.ovirt.engine.core.common.businessentities.network.VnicProfileView;
 import org.ovirt.engine.ui.common.idhandler.HasElementId;
 import org.ovirt.engine.ui.common.utils.ElementIdUtils;
-import org.ovirt.engine.ui.common.widget.label.LabelWithTextOverflow;
+import org.ovirt.engine.ui.common.widget.label.LabelWithTextTruncation;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import org.ovirt.engine.ui.uicommonweb.models.vms.VnicInstanceType;
 import org.ovirt.engine.ui.uicompat.Event;
@@ -41,7 +41,7 @@
 
     @UiField
     @Path(value = "networkInterface.name")
-    LabelWithTextOverflow vnicLabel;
+    LabelWithTextTruncation vnicLabel;
 
     @UiField
     @Path(value = "selectedItem")
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.ui.xml
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.ui.xml
index 476482d..d79e150 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.ui.xml
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfileInstanceTypeEditor.ui.xml
@@ -1,38 +1,38 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent";>
 <ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
-       xmlns:g="urn:import:com.google.gwt.user.client.ui"
-       xmlns:e="urn:import:org.ovirt.engine.ui.common.widget.editor"
-       xmlns:p="urn:import:org.ovirt.engine.ui.common.widget.profile"
-       xmlns:l="urn:import:org.ovirt.engine.ui.common.widget.label">
+    xmlns:g="urn:import:com.google.gwt.user.client.ui"
+    xmlns:e="urn:import:org.ovirt.engine.ui.common.widget.editor"
+    xmlns:p="urn:import:org.ovirt.engine.ui.common.widget.profile"
+    xmlns:l="urn:import:org.ovirt.engine.ui.common.widget.label">
 
-       <ui:style 
type="org.ovirt.engine.ui.common.widget.profile.ProfileInstanceTypeEditor.Style">
-               .labelStyle {
-                       float: left;
-                       width: 70px;
-               }
+    <ui:style 
type="org.ovirt.engine.ui.common.widget.profile.ProfileInstanceTypeEditor.Style">
+        .labelStyle {
+            float: left;
+            width: 70px;
+        }
 
-               .noDisplay {
-                       display: none;
-               }
+        .noDisplay {
+            display: none;
+        }
 
-               .contentStyle {
-                       float: left;
-               }
+        .contentStyle {
+            float: left;
+        }
 
-               .containerStyle {
-                       width: 310px;
-                       margin-right: 10px;
-               }
+        .containerStyle {
+            width: 310px;
+            margin-right: 10px;
+        }
 
-               .panelStyle {
-                       line-height: 30px;
-               }
-       </ui:style>
+        .panelStyle {
+            line-height: 30px;
+        }
+    </ui:style>
 
-       <g:FlowPanel addStyleNames="{style.panelStyle}">
-               <l:LabelWithTextOverflow ui:field="vnicLabel" 
addStyleNames="{style.labelStyle}" />
-               <p:ProfileEditor ui:field="profileEditor" 
addStyleNames="{style.containerStyle}" />
-       </g:FlowPanel>
+    <g:FlowPanel addStyleNames="{style.panelStyle}">
+        <l:LabelWithTextTruncation ui:field="vnicLabel" 
addStyleNames="{style.labelStyle}" />
+        <p:ProfileEditor ui:field="profileEditor" 
addStyleNames="{style.containerStyle}" />
+    </g:FlowPanel>
 
 </ui:UiBinder>
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkLabelPanel.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkLabelPanel.java
index a111aec..e0544b3 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkLabelPanel.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkLabelPanel.java
@@ -3,7 +3,7 @@
 import java.util.Collections;
 import java.util.List;
 
-import org.ovirt.engine.ui.common.widget.label.LabelWithTextOverflow;
+import org.ovirt.engine.ui.common.widget.label.LabelWithTextTruncation;
 import 
org.ovirt.engine.ui.uicommonweb.models.hosts.network.LogicalNetworkModel;
 import org.ovirt.engine.ui.uicommonweb.models.hosts.network.NetworkLabelModel;
 
@@ -34,7 +34,7 @@
         titleRow.setWidth("100%"); //$NON-NLS-1$
         titleRow.setHeight("27px"); //$NON-NLS-1$
 
-        LabelWithTextOverflow titleLabel = new 
LabelWithTextOverflow(item.getName());
+        LabelWithTextTruncation titleLabel = new 
LabelWithTextTruncation(item.getName());
         titleLabel.setWidth("185px"); //$NON-NLS-1$
         titleLabel.setHeight("100%"); //$NON-NLS-1$
         Image labelImage = new Image(resources.bond());
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/host/StatisticsPanel.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/host/StatisticsPanel.java
index 4eb3cc6..b6b533b 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/host/StatisticsPanel.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/host/StatisticsPanel.java
@@ -3,7 +3,7 @@
 import java.util.List;
 
 import org.ovirt.engine.ui.common.widget.TogglePanel;
-import org.ovirt.engine.ui.common.widget.label.LabelWithTextOverflow;
+import org.ovirt.engine.ui.common.widget.label.LabelWithTextTruncation;
 import org.ovirt.engine.ui.common.widget.renderer.RxTxRateRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.SumUpRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.hosts.HostInterface;
@@ -57,7 +57,7 @@
         row.getColumnFormatter().setWidth(6, "100px"); //$NON-NLS-1$
 
         // MAC
-        LabelWithTextOverflow macLabel = new 
LabelWithTextOverflow(hostInterface.getMAC());
+        LabelWithTextTruncation macLabel = new 
LabelWithTextTruncation(hostInterface.getMAC());
         macLabel.setWidth("120px"); //$NON-NLS-1$
         row.setWidget(0, 0, macLabel);
 


-- 
To view, visit http://gerrit.ovirt.org/37762
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4c22d5003c26ef2df418d2df7c76af009ab383e4
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Greg Sheremeta <gsher...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to