[prev in list] [next in list] [prev in thread] [next in thread]
List: rhq-commits
Subject: [rhq] Branch 'ie-fragment-fix' - modules/enterprise
From: ips () fedoraproject ! org (ips)
Date: 2011-04-29 14:04:35
Message-ID: 20110429140435.47D9112020C () lists ! fedorahosted ! org
[Download RAW message or body]
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java \
| 28 +-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java \
| 18 -- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java \
| 4 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentView.java \
| 2 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java \
| 6 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java \
| 9 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java \
| 9 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/Link.java \
| 65 ++++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ViewLink.java \
| 25 ++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/CanvasField.java \
| 49 ++++- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/EnhancedListGrid.java \
| 15 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java \
| 65 ++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/ViewLinkField.java \
| 16 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformSummaryPortlet.java \
| 2 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/imported/RecentlyAddedResourcesPortlet.java \
| 9 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/operations/OperationSchedulePortlet.java \
| 32 +-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceConfigurationUpdatesPortlet.java \
| 18 -- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui \
/client/inventory/common/detail/operation/history/AbstractOperationHistoryListView.java \
| 19 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java \
| 2 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/c \
lient/inventory/groups/detail/configuration/HistoryGroupResourceConfigurationMembers.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/ \
client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/ResourceGroupMetricGraphView.java \
| 7 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java \
| 16 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java \
| 13 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/ \
client/inventory/groups/detail/operation/history/GroupMemberResourceOperationHistoryListView.java \
| 9 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/AncestryUtil.java \
| 53 +++++- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java \
| 13 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/ \
client/inventory/resource/detail/configuration/AbstractConfigurationHistoryDataSource.java \
| 15 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/ \
client/inventory/resource/detail/configuration/AbstractConfigurationHistoryView.java \
| 30 ++- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricGraphView.java \
| 5 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/c \
lient/inventory/resource/detail/operation/history/ResourceOperationHistoryDetailsView.java \
| 20 -- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/MenuBarView.java \
| 5 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryDataSource.java \
| 87 +++++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/AlertDefinitionReportView.java \
| 39 +--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ResourceInstallReport.java \
| 13 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java \
| 14 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/selenium/SeleniumUtility.java \
| 3 modules/enterprise/gui/coregui/src/main/webapp/CoreGUI.css \
| 12 + 41 files changed, 454 insertions(+), 363 deletions(-)
New commits:
commit a4cd692a8893908fdc66a643830489886519ee78
Author: Ian Springer <ian.springer at redhat.com>
Date: Fri Apr 29 10:04:06 2011 -0400
the work goes on...
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java
index 6475640..0209680 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java
@@ -36,6 +36,7 @@ import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.types.ListGridFieldType;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
+import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -53,7 +54,9 @@ import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.AlertGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -61,7 +64,6 @@ import \
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTyp import \
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository.TypesLoadedCallback;
import org.rhq.enterprise.gui.coregui.client.util.MeasurementConverterClient;
import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* @author Ian Springer
@@ -107,15 +109,14 @@ public class AlertDataSource extends RPCDataSource<Alert, \
AlertCriteria> {
ctimeField.setHoverCustomizer(TimestampCellFormatter.getHoverCustomizer(AlertCriteria.SORT_FIELD_CTIME));
fields.add(ctimeField);
- ListGridField nameField = new ListGridField("name", \
MSG.view_alerts_field_name());
- nameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- Integer resourceId = \
listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID);
- Integer defId = listGridRecord.getAttributeAsInt("definitionId");
+ ViewLinkField nameField = new ViewLinkField("name", \
MSG.view_alerts_field_name()) { + protected ViewLink getViewLink(ListGrid \
grid, ListGridRecord record, Object value) { + Integer resourceId = \
record.getAttributeAsInt(AncestryUtil.RESOURCE_ID); + Integer defId = \
record.getAttributeAsInt("definitionId");
String url = LinkManager.getSubsystemAlertDefinitionLink(resourceId, \
defId);
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ return new ViewLink(value.toString(), url);
}
- });
+ };
fields.add(nameField);
ListGridField conditionField = new ListGridField("conditionText", \
MSG.view_alerts_field_condition_text()); @@ -175,14 +176,13 @@ public class \
AlertDataSource extends RPCDataSource<Alert, AlertCriteria> { \
fields.add(statusField);
if (this.entityContext.type != EntityContext.Type.Resource) {
- ListGridField resourceNameField = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, \
int i1) { + ViewLinkField resourceNameField = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
String url = LinkManager
- \
.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), \
null); + \
.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
index 45dd32c..01e7b7b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
@@ -41,8 +41,10 @@ import org.rhq.core.domain.criteria.AlertCriteria;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.form.EnumSelectItem;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
+import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.components.table.TableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
import org.rhq.enterprise.gui.coregui.client.components.table.TableSection;
@@ -151,16 +153,12 @@ public class AlertHistoryView extends \
TableSection<AlertDataSource> { }
@Override
- protected CellFormatter getDetailsLinkColumnCellFormatter() {
- return new CellFormatter() {
- public String format(Object value, ListGridRecord record, int i, int i1) \
{
- Integer resourceId = \
record.getAttributeAsInt(AncestryUtil.RESOURCE_ID);
- Integer alertHistoryId = getId(record);
- String url = LinkManager.getSubsystemAlertHistoryLink(resourceId, \
alertHistoryId);
- String formattedValue = TimestampCellFormatter.format(value);
- return SeleniumUtility.getLocatableHref(url, formattedValue, null);
- }
- };
+ protected ViewLink createDetailsViewLink(ListGridRecord record, Object value) {
+ Integer resourceId = record.getAttributeAsInt(AncestryUtil.RESOURCE_ID);
+ Integer alertHistoryId = getId(record);
+ String url = LinkManager.getSubsystemAlertHistoryLink(resourceId, \
alertHistoryId); + String formattedValue = \
TimestampCellFormatter.format(value); + return new ViewLink(formattedValue, \
url); }
protected void setupTableInteractions(final boolean hasWriteAccess) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
index d9d2d3d..5c2f5b6 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
@@ -66,7 +66,7 @@ public class BundleDeploymentListView extends \
Table<BundleDeploymentDataSource> // only users that are authorized can see \
deployments if (canManageBundles) {
nameField = new ViewLinkField(BundleDeploymentDataSource.FIELD_NAME, \
MSG.view_bundle_deploy_name()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) \
{ + protected ViewLink getViewLink(ListGrid grid, ListGridRecord \
record, Object value) {
String linkText = \
StringUtility.escapeHtml(record.getAttribute(BundleDeploymentDataSource.FIELD_NAME)); \
String viewPath = getBundleDeploymentLink(record);
return new ViewLink(extendLocatorId("ViewLink"), linkText, \
viewPath); @@ -81,7 +81,7 @@ public class BundleDeploymentListView extends \
Table<BundleDeploymentDataSource>
.common_title_description());
ViewLinkField bundleVersionField = new \
ViewLinkField(BundleDeploymentDataSource.FIELD_BUNDLE_VERSION_VERSION, \
MSG.view_bundle_bundleVersion()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String linkText = \
record.getAttribute(BundleDeploymentDataSource.FIELD_BUNDLE_VERSION_VERSION); String \
viewPath = LinkManager.getBundleVersionLink(record
\
.getAttributeAsInt(BundleDeploymentDataSource.FIELD_BUNDLE_ID), \
record
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentView.java
index 58b5664..e0da95d 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentView.java
@@ -345,7 +345,7 @@ public class BundleDeploymentView extends LocatableVLayout \
implements Bookmarkab
// resource field
ViewLinkField resource = new ViewLinkField("resource", \
MSG.common_title_platform()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String resourceUrl = \
LinkManager.getResourceLink(record.getAttributeAsInt("resourceId"));
String linkText = \
StringUtility.escapeHtml(record.getAttribute("resource"));
return new ViewLink(extendLocatorId("ViewLink"), linkText, \
resourceUrl);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
index 2e94600..88867aa 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
@@ -60,7 +60,7 @@ public class BundleDestinationListView extends \
Table<BundleDestinationDataSource protected void configureTable() {
ListGridField idField = new \
ListGridField(BundleDestinationDataSource.FIELD_ID, \
MSG.common_title_id());
ViewLinkField nameField = new \
ViewLinkField(BundleDestinationDataSource.FIELD_NAME, \
MSG.common_title_name()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String bundleName = \
record.getAttribute(BundleDestinationDataSource.FIELD_NAME); String linkText = \
StringUtility.escapeHtml(bundleName); String viewPath = \
getBundleDestinationLink(record); @@ -71,7 +71,7 @@ public class \
BundleDestinationListView extends Table<BundleDestinationDataSource
.common_title_description());
ViewLinkField bundleNameField = new \
ViewLinkField(BundleDestinationDataSource.FIELD_BUNDLE_NAME, MSG
.view_bundle_bundle()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String bundleName = \
record.getAttribute(BundleDestinationDataSource.FIELD_BUNDLE_NAME); String linkText \
= StringUtility.escapeHtml(bundleName);
Integer bundleId = \
record.getAttributeAsInt(BundleDestinationDataSource.FIELD_BUNDLE_ID); @@ -81,7 +81,7 \
@@ public class BundleDestinationListView extends Table<BundleDestinationDataSource \
};
ViewLinkField groupNameField = new \
ViewLinkField(BundleDestinationDataSource.FIELD_GROUP_NAME, MSG
.view_bundle_dest_group()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String groupName = \
record.getAttribute(BundleDestinationDataSource.FIELD_GROUP_NAME); String linkText = \
StringUtility.escapeHtml(groupName);
Integer groupId = \
record.getAttributeAsInt(BundleDestinationDataSource.FIELD_GROUP_ID);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
index b0313bc..bc2ea3c 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
@@ -34,6 +34,7 @@ import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.authz.Permission;
import org.rhq.core.domain.bundle.Bundle;
import org.rhq.core.domain.bundle.composite.BundleWithLatestVersionComposite;
@@ -91,13 +92,13 @@ public class BundlesListView extends \
Table<BundlesWithLatestVersionDataSource> {
CanvasField nameField = new \
CanvasField(BundlesWithLatestVersionDataSource.FIELD_NAME, MSG
.common_title_name()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) {
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
String name = \
record.getAttribute(BundlesWithLatestVersionDataSource.FIELD_NAME);
String nameLink = \
record.getAttribute(BundlesWithLatestVersionDataSource.FIELD_NAMELINK);
ViewLink viewLink = new ViewLink(extendLocatorId("ViewLink"), \
StringUtility.escapeHtml(name), nameLink);
- hLayout.addMember(viewLink);
- return hLayout;
+ vLayout.addMember(viewLink);
+ return vLayout;
}
};
nameField.setWidth("33%");
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
index 29c9744..bbb38f8 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
@@ -32,6 +32,7 @@ import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
import org.rhq.enterprise.gui.coregui.client.bundle.list.BundleVersionDataSource;
@@ -65,13 +66,13 @@ public class BundleVersionListView extends \
Table<BundleVersionDataSource> {
CanvasField versionField = new \
CanvasField(BundleVersionDataSource.FIELD_VERSION, MSG
.common_title_version()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) {
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
String viewPath = getBundleVersionViewPath(record);
ViewLink viewLink = new ViewLink(extendLocatorId("ViewLink"),
record.getAttribute(BundleVersionDataSource.FIELD_VERSION), \
viewPath);
- hLayout.addMember(viewLink);
- return hLayout;
+ vLayout.addMember(viewLink);
+ return vLayout;
}
};
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/Link.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/Link.java
index 240779a..553e2a0 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/Link.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/Link.java
@@ -33,48 +33,65 @@ import \
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableHTMLFlow;
*/
public class Link extends LocatableHTMLFlow {
- private static final String DEFAULT_MOUSE_OUT_STYLE_NAME = "viewLink";
- private static final String DEFAULT_MOUSE_OVER_STYLE_NAME = "viewLinkHover";
+ private static final String DEFAULT_MOUSE_OVER_STYLE_NAME = "linkHover";
+ private static final String DEFAULT_MOUSE_OUT_STYLE_NAME = "link";
private String mouseOverStyleName;
private String mouseOutStyleName;
+ public Link(String linkText, ClickHandler clickHandler) {
+ this(linkText, linkText, clickHandler);
+ }
+
public Link(String locatorId, String linkText, ClickHandler clickHandler) {
super(locatorId);
- this.mouseOutStyleName = DEFAULT_MOUSE_OUT_STYLE_NAME;
this.mouseOverStyleName = DEFAULT_MOUSE_OVER_STYLE_NAME;
+ this.mouseOutStyleName = DEFAULT_MOUSE_OUT_STYLE_NAME;
- setWidth100();
- setHeight(25);
+ // TODO (ips, 04/28/11): This is lame - find a better way.
+ int width = 0;
+ for (int i = 0; i < linkText.length(); i++) {
+ int charWidth = (Character.isUpperCase(linkText.charAt(i))) ? 8 : 6;
+ width += charWidth;
+ }
+ setWidth(width);
+ //setAutoWidth();
setContents(linkText);
addClickHandler(clickHandler);
-
- addMouseOverHandler(new MouseOverHandler() {
- public void onMouseOver(MouseOverEvent event) {
- if (mouseOutStyleName != null && mouseOverStyleName != null) {
- setStyleName(mouseOverStyleName);
- markForRedraw();
- }
- }
- });
-
- addMouseOutHandler(new MouseOutHandler() {
- public void onMouseOut(MouseOutEvent event) {
- if (mouseOutStyleName != null && mouseOverStyleName != null) {
- setStyleName(mouseOutStyleName);
- markForRedraw();
- }
- }
- });
}
@Override
protected void onInit() {
super.onInit();
- setStyleName(getMouseOutStyleName());
+ if (this.mouseOverStyleName != null) {
+ addMouseOverHandler(new MouseOverHandler() {
+ public void onMouseOver(MouseOverEvent event) {
+ handleMouseOverEvent();
+ }
+ });
+ }
+
+ if (this.mouseOutStyleName != null) {
+ setStyleName(this.mouseOutStyleName);
+ addMouseOutHandler(new MouseOutHandler() {
+ public void onMouseOut(MouseOutEvent event) {
+ handleMouseOutEvent();
+ }
+ });
+ }
+ }
+
+ protected void handleMouseOverEvent() {
+ setStyleName(mouseOverStyleName);
+ markForRedraw();
+ }
+
+ protected void handleMouseOutEvent() {
+ setStyleName(mouseOutStyleName);
+ markForRedraw();
}
public String getMouseOverStyleName() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ViewLink.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ViewLink.java
index 5446a8c..b8246e3 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ViewLink.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ViewLink.java
@@ -19,14 +19,10 @@
*/
package org.rhq.enterprise.gui.coregui.client.components;
+import com.google.gwt.user.client.Window;
import com.smartgwt.client.widgets.events.ClickEvent;
import com.smartgwt.client.widgets.events.ClickHandler;
-import com.smartgwt.client.widgets.events.MouseOutEvent;
-import com.smartgwt.client.widgets.events.MouseOutHandler;
-import com.smartgwt.client.widgets.events.MouseOverEvent;
-import com.smartgwt.client.widgets.events.MouseOverHandler;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableHTMLFlow;
/**
* A link to another view within coregui.war. Clicking on the link will navigate to \
the view via the GWT history API @@ -38,6 +34,10 @@ public class ViewLink extends \
Link {
private String viewPath;
+ public ViewLink(String linkText, final String viewPath) {
+ this(linkText, linkText, viewPath);
+ }
+
public ViewLink(String locatorId, String linkText, final String viewPath) {
super(locatorId, linkText, new ClickHandler() {
public void onClick(ClickEvent event) {
@@ -45,7 +45,20 @@ public class ViewLink extends Link {
}
});
- this.viewPath = viewPath;
+ this.viewPath = (viewPath.charAt(0) == '#') ? viewPath.substring(1) : \
viewPath; + }
+
+ @Override
+ protected void handleMouseOverEvent() {
+ super.handleMouseOverEvent();
+ // NOTE: This doesn't work on Firefox :-(
+ Window.setStatus('#' + this.viewPath);
+ }
+
+ @Override
+ protected void handleMouseOutEvent() {
+ super.handleMouseOutEvent();
+ Window.setStatus("");
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/CanvasField.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/CanvasField.java
index b28e51f..b3ff1b5 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/CanvasField.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/CanvasField.java
@@ -20,12 +20,12 @@
package org.rhq.enterprise.gui.coregui.client.components.table;
import com.google.gwt.core.client.JavaScriptObject;
-import com.smartgwt.client.types.Overflow;
+import com.smartgwt.client.types.VerticalAlignment;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
/**
* Formats a cell value as a SmartGWT canvas.
@@ -59,7 +59,7 @@ public abstract class CanvasField extends ListGridField {
super(field.getName(), field.getTitle());
setWidth(field.getWidth());
- // TODO: clone other commonly used fields
+ // TODO (ips, 04/27/11): clone other commonly used fields
}
/**
@@ -67,18 +67,21 @@ public abstract class CanvasField extends ListGridField {
*
* @param grid
* @param record
+ * @param value
+ *
* @return
*/
- protected abstract Canvas createCanvas(ListGrid grid, ListGridRecord record);
-
- protected HLayout createHLayout(ListGrid grid) {
- HLayout component = new HLayout();
- component.setWidth100();
- // TODO: is this the best way to deal w/ height?
- component.setHeight(25);
- component.setMargin(grid.getCellPadding());
- component.setOverflow(Overflow.HIDDEN);
- return component;
+ protected abstract Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value); +
+ protected VLayout createVLayout(ListGrid grid) {
+ VLayout vLayout = new CanvasFieldVLayout(grid);
+ /*vLayout.setWidth(grid.getFieldWidth(getName()));
+ vLayout.setHeight100();
+ //vLayout.setOverflow(Overflow.VISIBLE);
+ //vLayout.setAutoHeight();
+ vLayout.setMargin(grid.getCellPadding());
+ vLayout.setAlign(VerticalAlignment.CENTER);*/
+ return vLayout;
}
@Override
@@ -86,4 +89,24 @@ public abstract class CanvasField extends ListGridField {
return getClass().getName() + "[name=" + getName() + ", title=" + getTitle() \
+ "]"; }
+ class CanvasFieldVLayout extends VLayout {
+ private ListGrid grid;
+
+ CanvasFieldVLayout(ListGrid grid) {
+ this.grid = grid;
+ setWidth(grid.getFieldWidth(getName()));
+ setHeight100();
+ //setOverflow(Overflow.VISIBLE);
+ //setAutoHeight();
+ setMargin(grid.getCellPadding());
+ setAlign(VerticalAlignment.CENTER);
+ }
+
+ @Override
+ public void redraw() {
+ setWidth(this.grid.getFieldWidth(getName()));
+ super.redraw();
+ }
+ }
+
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/EnhancedListGrid.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/EnhancedListGrid.java
index b383443..972b2b0 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/EnhancedListGrid.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/EnhancedListGrid.java
@@ -19,6 +19,8 @@
*/
package org.rhq.enterprise.gui.coregui.client.components.table;
+import com.google.gwt.core.client.JavaScriptObject;
+import com.smartgwt.client.util.JSOHelper;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.ListGridField;
@@ -73,10 +75,19 @@ public class EnhancedListGrid extends LocatableListGrid {
}
ListGridField field = getField(colNum);
- ListGridField originalField = this.originalFields.get(field.getName());
+ String fieldName = field.getName();
+ ListGridField originalField = this.originalFields.get(fieldName);
if (originalField instanceof CanvasField) {
CanvasField canvasField = (CanvasField)originalField;
- return canvasField.createCanvas(this, record);
+ Object value;
+ try {
+ Object rawValue = record.getAttributeAsObject(fieldName);
+ value = (rawValue instanceof JavaScriptObject) ?
+ JSOHelper.convertToJava((JavaScriptObject) rawValue) : \
rawValue; + } catch (RuntimeException e) {
+ value = record.getAttribute(fieldName);
+ }
+ return canvasField.createCanvas(this, record, value);
} else {
return null;
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
index 4b49302..3b6d11d 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
@@ -27,18 +27,14 @@ import com.google.gwt.user.client.History;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.AnimationEffect;
-import com.smartgwt.client.types.Overflow;
import com.smartgwt.client.types.VerticalAlignment;
import com.smartgwt.client.widgets.AnimationCallback;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.events.DoubleClickEvent;
import com.smartgwt.client.widgets.events.DoubleClickHandler;
-import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import com.smartgwt.client.widgets.layout.HLayout;
-import com.smartgwt.client.widgets.layout.Layout;
import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.enterprise.gui.coregui.client.BookmarkableView;
@@ -122,8 +118,8 @@ public abstract class TableSection<DS extends RPCDataSource> \
extends Table<DS> i }
/**
- * The default implementation wraps the {@link \
#getDetailsLinkColumnCellFormatter()} column with the
- * {@link #getDetailsLinkColumnCellFormatter()}. This is typically the 'name' \
column linking to the detail + * The default implementation renders each cell in \
the {@link #getDetailsLinkColumnName()} column as a hyperlink + * to the details \
for the corresponding row. This is typically the 'name' column \
linking to the detail
* view, given the 'id'. Also, establishes a double click handler for the row \
which invokes
* {@link #showDetails(com.smartgwt.client.widgets.grid.ListGridRecord)}</br>
* </br>
@@ -137,28 +133,14 @@ public abstract class TableSection<DS extends RPCDataSource> \
extends Table<DS> i
ListGrid grid = getListGrid();
- // Make the value of some specific field a link to the details view for \
the corresponding record. + // Make the value of some specific field \
(typically the 'name' field) a link to the details view for the + // \
corresponding record.
ListGridField field = (grid != null) ? \
grid.getField(getDetailsLinkColumnName()) : null; if (field != null) {
- //field.setCellFormatter(getDetailsLinkColumnCellFormatter());
-
- CanvasField canvasField = new CanvasField(field) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord \
record) {
- HLayout hLayout = createHLayout(grid);
- Integer recordId = getId(record);
- String detailsViewPath = getBasePath() + "/" + recordId;
- String recordValue = \
record.getAttribute(getDetailsLinkColumnName());
- String formattedValue = (escapeHtmlInDetailsLinkColumn) ? \
StringUtility.escapeHtml(recordValue.toString())
- : recordValue.toString();
- ViewLink viewLink = new \
ViewLink(extendLocatorId("ViewLink"), formattedValue, \
detailsViewPath);
- hLayout.addMember(viewLink);
- return hLayout;
- }
- };
-
+ CanvasField detailsViewLinkField = createDetailsLinkField(field);
int fieldIndex = grid.getFieldNum(field.getName());
ListGridField[] fields = grid.getFields();
- fields[fieldIndex] = canvasField;
+ fields[fieldIndex] = detailsViewLinkField;
grid.setFields(fields);
}
@@ -175,6 +157,22 @@ public abstract class TableSection<DS extends RPCDataSource> \
extends Table<DS> i }
}
+ protected CanvasField createDetailsLinkField(final ListGridField field) {
+ return new ViewLinkField(field) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) { + return createDetailsViewLink(record, value);
+ }
+ };
+ }
+
+ protected ViewLink createDetailsViewLink(ListGridRecord record, Object value) {
+ Integer recordId = getId(record);
+ String detailsViewPath = getBasePath() + "/" + recordId;
+ String formattedValue = (this.escapeHtmlInDetailsLinkColumn) ? \
StringUtility.escapeHtml(value.toString()) + : value.toString();
+ return new ViewLink(formattedValue, detailsViewPath);
+ }
+
protected boolean isDetailsEnabled() {
return true;
}
@@ -192,25 +190,6 @@ public abstract class TableSection<DS extends RPCDataSource> \
extends Table<DS> i }
/**
- * Override if you don't want the detailsLinkColumn to have the default link \
wrapper.
- * @return the desired CellFormatter.
- */
- protected CellFormatter getDetailsLinkColumnCellFormatter() {
- return new CellFormatter() {
- public String format(Object value, ListGridRecord record, int i, int i1) \
{
- if (value == null) {
- return "";
- }
- Integer recordId = getId(record);
- String detailsUrl = "#" + getBasePath() + "/" + recordId;
- String formattedValue = (escapeHtmlInDetailsLinkColumn) ? \
StringUtility.escapeHtml(value.toString())
- : value.toString();
- return SeleniumUtility.getLocatableHref(detailsUrl, formattedValue, \
null);
- }
- };
- }
-
- /**
* Shows the details view for the given record of the table.
*
* The default implementation of this method assumes there is an
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/ViewLinkField.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/ViewLinkField.java
index b91d48c..31fcced 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/ViewLinkField.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/ViewLinkField.java
@@ -5,10 +5,12 @@ import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
/**
+ * A list grid field that is displayed as a link to another CoreGUI view.
+ *
* @author Ian Springer
*/
public abstract class ViewLinkField extends CanvasField {
@@ -38,14 +40,14 @@ public abstract class ViewLinkField extends CanvasField {
}
@Override
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) {
- HLayout hLayout = createHLayout(grid);
- ViewLink viewLink = getViewLink(grid, record);
- hLayout.addMember(viewLink);
- return hLayout;
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, Object \
value) { + VLayout vLayout = createVLayout(grid);
+ ViewLink viewLink = getViewLink(grid, record, value);
+ vLayout.addMember(viewLink);
+ return vLayout;
}
- protected abstract ViewLink getViewLink(ListGrid grid, ListGridRecord record);
+ protected abstract ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value);
protected ViewLinkField(ListGridField field) {
super(field);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformSummaryPortlet.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformSummaryPortlet.java
index 831993c..bc50d85 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformSummaryPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformSummaryPortlet.java
@@ -124,7 +124,7 @@ public class PlatformSummaryPortlet extends LocatableListGrid \
implements Portlet private void buildUI() {
ViewLinkField nameField = new \
ViewLinkField(ResourceDataSourceField.NAME.propertyName(), MSG
.common_title_name()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) {
String resourceUrl = \
LinkManager.getResourceLink(record.getAttributeAsInt("id"));
String linkText = \
StringUtility.escapeHtml(record.getAttribute(ResourceDataSourceField.NAME.propertyName()));
return new ViewLink(extendLocatorId("ViewLink"), linkText, \
resourceUrl);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/imported/RecentlyAddedResourcesPortlet.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/imported/RecentlyAddedResourcesPortlet.java
index 91289ba..9ee0eca 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/imported/RecentlyAddedResourcesPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/imported/RecentlyAddedResourcesPortlet.java
@@ -34,6 +34,7 @@ import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import com.smartgwt.client.widgets.tree.TreeGrid;
import org.rhq.core.domain.configuration.PropertySimple;
@@ -93,15 +94,15 @@ public class RecentlyAddedResourcesPortlet extends \
LocatableVLayout implements C treeGrid.setTreeFieldTitle("Resource Name");
CanvasField resourceNameField = new CanvasField("name", \
MSG.common_title_resource_name()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) {
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
int resourceId = record.getAttributeAsInt("id");
String resourceName = record.getAttribute("name");
String resourceViewPath = LinkManager.getResourceLink(resourceId);
ViewLink viewLink = new ViewLink(extendLocatorId("ViewLink"), \
StringUtility.escapeHtml(resourceName), resourceViewPath);
- hLayout.addMember(viewLink);
- return hLayout;
+ vLayout.addMember(viewLink);
+ return vLayout;
}
};
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/operations/OperationSchedulePortlet.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/operations/OperationSchedulePortlet.java
index b26405b..3853ea7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/operations/OperationSchedulePortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/operations/OperationSchedulePortlet.java
@@ -31,6 +31,7 @@ import com.smartgwt.client.widgets.form.fields.events.ChangeEvent;
import com.smartgwt.client.widgets.form.fields.events.ChangeHandler;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
+import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.layout.VStack;
@@ -41,7 +42,10 @@ import \
org.rhq.core.domain.configuration.definition.PropertyDefinitionSimple; import \
org.rhq.core.domain.configuration.definition.PropertySimpleType; import \
org.rhq.core.domain.dashboard.DashboardPortlet; import \
org.rhq.enterprise.gui.coregui.client.LinkManager; +import \
org.rhq.enterprise.gui.coregui.client.components.ViewLink; +import \
org.rhq.enterprise.gui.coregui.client.components.table.CanvasField; import \
org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter; \
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField; import \
org.rhq.enterprise.gui.coregui.client.dashboard.AutoRefreshPortlet; import \
org.rhq.enterprise.gui.coregui.client.dashboard.AutoRefreshPortletUtil; import \
org.rhq.enterprise.gui.coregui.client.dashboard.CustomSettingsPortlet; @@ -118,21 \
+122,20 @@ public class OperationSchedulePortlet extends LocatableVLayout implements \
Custom protected void onDraw() {
super.onDraw();
- ListGridField timeNext = new \
ListGridField(ScheduledOperationsDataSource.Field.TIME.propertyName(),
- ScheduledOperationsDataSource.Field.TIME.title(), WIDTH_SCHEDULED_TIME);
- timeNext.setCellFormatter(new TimestampCellFormatter() {
- public String format(Object value, ListGridRecord record, int rowNum, \
int colNum) { + CanvasField timeNext = new \
CanvasField(ScheduledOperationsDataSource.Field.TIME.propertyName(), + \
ScheduledOperationsDataSource.Field.TIME.title(), WIDTH_SCHEDULED_TIME) { + \
protected Canvas createCanvas(ListGrid grid, ListGridRecord record, Object value) { \
if (value != null) {
- String timestamp = super.format(value, record, rowNum, colNum);
+ String timestamp = TimestampCellFormatter.format(value);
Integer resourceId = \
record.getAttributeAsInt(AncestryUtil.RESOURCE_ID);
Integer opScheduleId = record.getAttributeAsInt("id");
String url = \
LinkManager.getSubsystemResourceOperationScheduleLink(resourceId, \
opScheduleId);
- return SeleniumUtility.getLocatableHref(url, timestamp, null);
+ return new ViewLink(timestamp, url);
} else {
- return "<i>" + MSG.common_label_none() + "</i>";
+ return new HTMLFlow("<i>" + MSG.common_label_none() + "</i>");
}
}
- });
+ };
timeNext.setShowHover(true);
timeNext.setHoverCustomizer(TimestampCellFormatter.getHoverCustomizer(ScheduledOperationsDataSource.Field.TIME
.propertyName()));
@@ -140,14 +143,13 @@ public class OperationSchedulePortlet extends LocatableVLayout \
implements Custom
ListGridField operationNext = new \
ListGridField(ScheduledOperationsDataSource.Field.OPERATION.propertyName(), \
ScheduledOperationsDataSource.Field.OPERATION.title());
- ListGridField resourceNext = new \
ListGridField(ScheduledOperationsDataSource.Field.RESOURCE.propertyName(),
- ScheduledOperationsDataSource.Field.RESOURCE.title());
- resourceNext.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ ViewLinkField resourceNext = new \
ViewLinkField(ScheduledOperationsDataSource.Field.RESOURCE.propertyName(), + \
ScheduledOperationsDataSource.Field.RESOURCE.title()) { + protected \
ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { + \
String url = LinkManager.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
+ return new ViewLink(value.toString(), url);
}
- });
+ };
resourceNext.setShowHover(true);
resourceNext.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
index f3738d4..a512bab 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
@@ -47,9 +47,11 @@ import \
org.rhq.core.domain.configuration.definition.PropertyDefinitionSimple; import \
org.rhq.core.domain.configuration.definition.PropertySimpleType; import \
org.rhq.core.domain.dashboard.DashboardPortlet; import \
org.rhq.enterprise.gui.coregui.client.LinkManager; +import \
org.rhq.enterprise.gui.coregui.client.components.ViewLink; import \
org.rhq.enterprise.gui.coregui.client.components.table.IconField; import \
org.rhq.enterprise.gui.coregui.client.components.table.Table; import \
org.rhq.enterprise.gui.coregui.client.components.table.TableWidget; +import \
org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField; import \
org.rhq.enterprise.gui.coregui.client.dashboard.AutoRefreshPortlet; import \
org.rhq.enterprise.gui.coregui.client.dashboard.AutoRefreshPortletUtil; import \
org.rhq.enterprise.gui.coregui.client.dashboard.CustomSettingsPortlet; @@ -120,13 \
+122,13 @@ public class ProblemResourcesPortlet extends \
Table<ProblemResourcesDataSource> i
addExtraWidget(new TimeRange(extendLocatorId("TimeRange"), this), \
false); }
- ListGridField resourceField = new ListGridField(RESOURCE.propertyName(), \
RESOURCE.title());
- resourceField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt("id"));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ ViewLinkField resourceField = new ViewLinkField(RESOURCE.propertyName(), \
RESOURCE.title()) { + @Override
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) { + String url = \
LinkManager.getResourceLink(record.getAttributeAsInt("id")); + return \
new ViewLink(value.toString(), url); }
- });
+ };
resourceField.setShowHover(true);
resourceField.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceConfigurationUpdatesPortlet.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceConfigurationUpdatesPortlet.java
index f9b2d9d..9f9a31a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceConfigurationUpdatesPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceConfigurationUpdatesPortlet.java
@@ -41,6 +41,7 @@ import org.rhq.core.domain.util.PageControl;
import org.rhq.core.domain.util.PageList;
import org.rhq.core.domain.util.PageOrdering;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.dashboard.Portlet;
import org.rhq.enterprise.gui.coregui.client.dashboard.PortletViewFactory;
import org.rhq.enterprise.gui.coregui.client.dashboard.portlets.PortletConfigurationEditorComponent.Constant;
@@ -168,18 +169,11 @@ public class ResourceConfigurationUpdatesPortlet extends \
GroupConfigurationUpdat }
}
- /**
- * Override if you don't want the detailsLinkColumn to have the default link \
wrapper.
- * @return the desired CellFormatter.
- */
- protected CellFormatter getDetailsLinkColumnCellFormatter() {
- return new CellFormatter() {
- public String format(Object value, ListGridRecord record, int i, int \
i1) {
- Integer recordId = getId(record);
- String detailsUrl = "#" + getBasePath() + "/" + recordId;
- return SeleniumUtility.getLocatableHref(detailsUrl, \
value.toString(), null);
- }
- };
+ @Override
+ protected ViewLink createDetailsViewLink(ListGridRecord record, Object \
value) { + Integer recordId = getId(record);
+ String detailsUrl = getBasePath() + "/" + recordId;
+ return new ViewLink(value.toString(), detailsUrl);
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/common/detail/operation/history/AbstractOperationHistoryListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/history/AbstractOperationHistoryListView.java
index 48fea33..c97a67e 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/common/detail/operation/history/AbstractOperationHistoryListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/common/detail/operation/history/AbstractOperationHistoryListView.java @@ \
-35,6 +35,7 @@ import com.smartgwt.client.widgets.events.CloseClickHandler; import \
com.smartgwt.client.widgets.events.CloseClientEvent; import \
com.smartgwt.client.widgets.grid.CellFormatter; import \
com.smartgwt.client.widgets.grid.HoverCustomizer; +import \
com.smartgwt.client.widgets.grid.ListGrid; import \
com.smartgwt.client.widgets.grid.ListGridField; import \
com.smartgwt.client.widgets.grid.ListGridRecord; import \
com.smartgwt.client.widgets.grid.events.RecordClickEvent; @@ -46,9 +47,11 @@ import \
org.rhq.core.domain.operation.ResourceOperationHistory; import \
org.rhq.enterprise.gui.coregui.client.CoreGUI; import \
org.rhq.enterprise.gui.coregui.client.ImageManager; import \
org.rhq.enterprise.gui.coregui.client.LinkManager; +import \
org.rhq.enterprise.gui.coregui.client.components.ViewLink; import \
org.rhq.enterprise.gui.coregui.client.components.table.TableAction; import \
org.rhq.enterprise.gui.coregui.client.components.table.TableSection; import \
org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter; \
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField; import \
org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; import \
org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil; import \
org.rhq.enterprise.gui.coregui.client.operation.OperationHistoryDataSource; @@ \
-246,19 +249,17 @@ public abstract class AbstractOperationHistoryListView<T extends \
AbstractOperati return statusField;
}
- protected ListGridField createResourceField() {
- ListGridField resourceField = new ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource()); + protected ViewLinkField createResourceField() {
+ ViewLinkField resourceField = new ViewLinkField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource()) { + protected ViewLink getViewLink(ListGrid \
grid, ListGridRecord record, Object value) { + String url = \
LinkManager.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); + }
+ };
resourceField.setAlign(Alignment.LEFT);
resourceField.setCellAlign(Alignment.LEFT);
- resourceField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
- }
- });
resourceField.setShowHover(true);
resourceField.setHoverCustomizer(new HoverCustomizer() {
-
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
return AncestryUtil.getResourceHoverHTML(listGridRecord, 0);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
index 0965096..c70f4f4 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
@@ -44,6 +44,7 @@ import org.rhq.core.domain.resource.composite.ResourceComposite;
import org.rhq.core.domain.resource.group.composite.ResourceGroupComposite;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.form.EnumSelectItem;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
@@ -212,14 +213,11 @@ public class EventCompositeHistoryView extends \
TableSection<EventCompositeDataso return "timestamp";
}
- protected CellFormatter getDetailsLinkColumnCellFormatter() {
- return new CellFormatter() {
- public String format(Object value, ListGridRecord record, int rowNum, \
int colNum) {
- Integer recordId = getId(record);
- String detailsUrl = "#" + getBasePath() + "/" + recordId;
- return SeleniumUtility.getLocatableHref(detailsUrl, \
TimestampCellFormatter.format(value), null);
- }
- };
+ @Override
+ protected ViewLink createDetailsViewLink(ListGridRecord record, Object value) {
+ Integer recordId = getId(record);
+ String detailsUrl = getBasePath() + "/" + recordId;
+ return new ViewLink(TimestampCellFormatter.format(value), detailsUrl);
}
private void setupTableInteractions() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
index c0ae2d7..7ab79dd 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
@@ -46,10 +46,12 @@ import org.rhq.core.domain.search.SearchSubsystem;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.AuthorizedTableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.Table;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGroupGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.inventory.groups.wizard.GroupCreateWizard;
@@ -136,16 +138,14 @@ public class ResourceGroupListView extends \
Table<ResourceGroupCompositeDataSourc }
});
- ListGridField nameField = new ListGridField(NAME.propertyName(), \
NAME.title());
- nameField.setWidth("40%");
-
- nameField.setCellFormatter(new CellFormatter() {
- public String format(Object value, ListGridRecord record, int i, int i1) \
{ + ViewLinkField nameField = new ViewLinkField(NAME.propertyName(), \
NAME.title()) { + protected ViewLink getViewLink(ListGrid grid, \
ListGridRecord record, Object value) { String groupId = record.getAttribute("id");
String groupUrl = \
LinkManager.getResourceGroupLink(Integer.valueOf(groupId));
- return SeleniumUtility.getLocatableHref(groupUrl, value.toString(), \
null); + return new ViewLink(value.toString(), groupUrl);
}
- });
+ };
+ nameField.setWidth("40%");
ListGridField descriptionField = new \
ListGridField(DESCRIPTION.propertyName(), DESCRIPTION.title()); \
descriptionField.setWidth("30%");
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
index 3d2c15d..daf2c1a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
@@ -251,7 +251,7 @@ public class SingleGroupDefinitionView extends LocatableVLayout \
implements Bookm idField.setWidth("50");
ViewLinkField nameField = new ViewLinkField(NAME.propertyName(), \
NAME.title()) {
- protected ViewLink getViewLink(ListGrid grid, ListGridRecord record) \
{ + protected ViewLink getViewLink(ListGrid grid, ListGridRecord \
record, Object value) {
String linkName = \
StringUtility.escapeHtml(record.getAttributeAsString(NAME.propertyName()));
String linkUrl = \
LinkManager.getResourceGroupLink(record.getAttributeAsInt("id"));
return new ViewLink(extendLocatorId("ViewLink"), linkName, \
linkUrl);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/groups/detail/configuration/HistoryGroupResourceConfigurationMembers.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/i \
nventory/groups/detail/configuration/HistoryGroupResourceConfigurationMembers.java \
index 31520bd..c0692dd 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/groups/detail/configuration/HistoryGroupResourceConfigurationMembers.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/groups/detail/configuration/HistoryGroupResourceConfigurationMembers.java
@@ -50,9 +50,11 @@ import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ErrorMessageWindow;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.buttons.BackButton;
import org.rhq.enterprise.gui.coregui.client.components.table.Table;
import org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.ConfigurationGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -103,17 +105,15 @@ public class HistoryGroupResourceConfigurationMembers extends \
LocatableVLayout {
@Override
protected void configureTable() {
- ListGridField fieldResource = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- fieldResource.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, \
int i1) { + ViewLinkField fieldResource = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
String url = LinkManager
- \
.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), \
null); + \
.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
fieldResource.setShowHover(true);
fieldResource.setHoverCustomizer(new HoverCustomizer() {
-
public String hoverHTML(Object value, ListGridRecord listGridRecord, \
int rowNum, int colNum) {
return AncestryUtil.getResourceHoverHTML(listGridRecord, 0);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
index 2699dff..cdb8551 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
@@ -50,9 +50,11 @@ import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ErrorMessageWindow;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.buttons.BackButton;
import org.rhq.enterprise.gui.coregui.client.components.table.Table;
import org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.ConfigurationGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -102,17 +104,15 @@ public class HistoryGroupPluginConfigurationMembers extends \
LocatableVLayout {
@Override
protected void configureTable() {
- ListGridField fieldResource = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- fieldResource.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, \
int i1) { + ViewLinkField fieldResource = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
String url = LinkManager
- \
.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), \
null); + \
.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
fieldResource.setShowHover(true);
fieldResource.setHoverCustomizer(new HoverCustomizer() {
-
public String hoverHTML(Object value, ListGridRecord listGridRecord, \
int rowNum, int colNum) {
return AncestryUtil.getResourceHoverHTML(listGridRecord, 0);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/ResourceGroupMetricGraphView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/ResourceGroupMetricGraphView.java
index 61a30ce..ae11ac8 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/ResourceGroupMetricGraphView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/ResourceGroupMetricGraphView.java
@@ -32,11 +32,12 @@ import org.rhq.core.domain.resource.group.ResourceGroup;
import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGroupGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMetricGraphView;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
+import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
/**
* @author Greg Hinkle
@@ -44,7 +45,7 @@ import \
org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
*/
public class ResourceGroupMetricGraphView extends AbstractMetricGraphView {
- private HTMLFlow resourceGroupTitle;
+ private ViewLink resourceGroupTitle;
public ResourceGroupMetricGraphView(String locatorId) {
super(locatorId);
@@ -84,7 +85,7 @@ public class ResourceGroupMetricGraphView extends \
AbstractMetricGraphView {
final ResourceGroup group = result.get(0);
String url = LinkManager.getResourceGroupLink(group.getId());
- resourceGroupTitle = new \
HTMLFlow(SeleniumUtility.getLocatableHref(url, group.getName(), null)); + \
resourceGroupTitle = new ViewLink(StringUtility.escapeHtml(group.getName()), url);
\
ResourceTypeRepository.Cache.getInstance().getResourceTypes(group.getResourceType().getId(),
\
EnumSet.of(ResourceTypeRepository.MetadataType.measurements),
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
index e93a1cb..4d3122e 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
@@ -19,17 +19,16 @@
package org.rhq.enterprise.gui.coregui.client.inventory.groups.detail.monitoring.traits;
import com.smartgwt.client.data.Criteria;
-import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
import com.smartgwt.client.widgets.grid.ListGrid;
-import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.criteria.MeasurementDataTraitCriteria;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementDataTraitListDetailView;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* The detail view for the group Monitoring>Traits subtab.
@@ -47,13 +46,12 @@ public class TraitsDetailView extends \
AbstractMeasurementDataTraitListDetailView
ListGrid listGrid = getListGrid();
- ListGridField resourceNameField = \
listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME);
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ ViewLinkField resourceNameField = new \
ViewLinkField(listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME)) \
{ + protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) { + String url = \
LinkManager.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
index f1c7cfa..5de7e79 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
@@ -29,6 +29,8 @@ import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.criteria.MeasurementDataTraitCriteria;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementDataTraitListView;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
@@ -54,13 +56,12 @@ public class TraitsView extends \
AbstractMeasurementDataTraitListView { \
listGrid.setGroupStartOpen(GroupStartOpen.ALL);
listGrid.groupBy(MeasurementDataTraitCriteria.SORT_FIELD_DISPLAY_NAME);
- ListGridField resourceNameField = \
listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME);
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ ViewLinkField resourceNameField = new \
ViewLinkField(listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME)) \
{ + protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, \
Object value) { + String url = \
LinkManager.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/groups/detail/operation/history/GroupMemberResourceOperationHistoryListView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/i \
nventory/groups/detail/operation/history/GroupMemberResourceOperationHistoryListView.java
index b9eb6bb..59e4ac2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/groups/detail/operation/history/GroupMemberResourceOperationHistoryListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/groups/detail/operation/history/GroupMemberResourceOperationHistoryListView.java
@@ -13,6 +13,7 @@ import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.resource.group.composite.ResourceGroupComposite;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.inventory.common.detail.operation.history.AbstractOperationHistoryDataSource;
import org.rhq.enterprise.gui.coregui.client.inventory.common.detail.operation.history.AbstractOperationHistoryListView;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -44,14 +45,8 @@ public class GroupMemberResourceOperationHistoryListView extends
idField.setWidth(38);
fields.add(idField);
- ListGridField resourceField = createResourceField();
+ ViewLinkField resourceField = createResourceField();
resourceField.setWidth("25%");
- resourceField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
- }
- });
resourceField.setShowHover(true);
resourceField.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/AncestryUtil.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/AncestryUtil.java
index b451c0e..5b8d1a3 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/AncestryUtil.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/AncestryUtil.java
@@ -24,16 +24,23 @@ import java.util.Map;
import com.smartgwt.client.data.Record;
import com.smartgwt.client.types.Alignment;
+import com.smartgwt.client.types.Overflow;
+import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.HTMLFlow;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
+import com.smartgwt.client.widgets.layout.HStack;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.resource.Resource;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
+import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
@@ -63,11 +70,53 @@ public abstract class AncestryUtil {
* @return ancestry field
*/
public static ListGridField setupAncestryListGridField() {
- ListGridField ancestryField = new \
ListGridField(AncestryUtil.RESOURCE_ANCESTRY, \
CoreGUI.getMessages().common_title_ancestry()); + CanvasField ancestryField = \
new CanvasField(AncestryUtil.RESOURCE_ANCESTRY, + \
CoreGUI.getMessages().common_title_ancestry()) { + protected Canvas \
createCanvas(ListGrid grid, ListGridRecord record, Object value) { + \
VLayout vLayout = createVLayout(grid); +
+ if (value == null) {
+ // no ancestry - render a blank cell
+ return vLayout;
+ }
+
+ HStack hStack = new HStack();
+ hStack.setMembersMargin(4);
+ hStack.setOverflow(Overflow.AUTO);
+ Integer resourceId = getResourceId(record);
+ String[] ancestryEntries = \
value.toString().split(Resource.ANCESTRY_DELIM); + for (int i = 0; i < \
ancestryEntries.length; ++i) { + String[] entryTokens = \
ancestryEntries[i].split(Resource.ANCESTRY_ENTRY_DELIM); + int \
ancestorResourceId = Integer.valueOf(entryTokens[1]); + String \
ancestorName = StringUtility.escapeHtml(entryTokens[2]); +
+ if (i > 0) {
+ HTMLFlow html = new HTMLFlow("<");
+ html.setAutoWidth();
+ hStack.addMember(html);
+ }
+ boolean generateLinks = true; // TODO
+ if (generateLinks) {
+ String url = \
LinkManager.getResourceLink(ancestorResourceId); + String \
suffix = resourceId + "_" + entryTokens[1]; + ViewLink \
viewLink = new ViewLink(ancestorName + suffix, ancestorName, url); + \
hStack.addMember(viewLink); + } else {
+ HTMLFlow html = new HTMLFlow(ancestorName);
+ html.setAutoWidth();
+ hStack.addMember(html);
+ }
+ }
+
+ vLayout.addMember(hStack);
+ return vLayout;
+ }
+ };
+
ancestryField.setAlign(Alignment.LEFT);
ancestryField.setCellAlign(Alignment.LEFT);
- setupAncestryListGridFieldCellFormatter(ancestryField);
setupAncestryListGridFieldHover(ancestryField);
+
return ancestryField;
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
index 025ee97..a33b8be 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
@@ -30,7 +30,6 @@ import com.smartgwt.client.data.Record;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.widgets.events.DoubleClickEvent;
import com.smartgwt.client.widgets.events.DoubleClickHandler;
-import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
@@ -43,6 +42,7 @@ import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.core.domain.search.SearchSubsystem;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.table.EscapedHtmlCellFormatter;
import org.rhq.enterprise.gui.coregui.client.components.table.RecordExtractor;
import org.rhq.enterprise.gui.coregui.client.components.table.ResourceAuthorizedTableAction;
@@ -51,6 +51,7 @@ import \
org.rhq.enterprise.gui.coregui.client.components.table.ResourceCategoryCe import \
org.rhq.enterprise.gui.coregui.client.components.table.Table; import \
org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement; import \
org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter; \
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField; import \
org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; import \
org.rhq.enterprise.gui.coregui.client.gwt.ResourceGWTServiceAsync; import \
org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; @@ -58,7 +59,6 @@ import \
org.rhq.enterprise.gui.coregui.client.util.StringUtility; import \
org.rhq.enterprise.gui.coregui.client.util.TableUtility; import \
org.rhq.enterprise.gui.coregui.client.util.message.Message; import \
org.rhq.enterprise.gui.coregui.client.util.message.Message.Severity;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* The list view for {@link Resource}s.
@@ -193,14 +193,13 @@ public class ResourceSearchView extends Table {
});
fields.add(iconField);
- ListGridField nameField = new ListGridField(NAME.propertyName(), \
NAME.title(), 250);
- nameField.setCellFormatter(new CellFormatter() {
- public String format(Object value, ListGridRecord record, int rowNum, \
int colNum) { + ViewLinkField nameField = new \
ViewLinkField(NAME.propertyName(), NAME.title(), 250) { + protected \
ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object \
value) {
String url = \
LinkManager.getResourceLink(record.getAttributeAsInt("id")); String name = \
StringUtility.escapeHtml(value.toString());
- return SeleniumUtility.getLocatableHref(url, name, null);
+ return new ViewLink(name, url);
}
- });
+ };
nameField.setShowHover(true);
nameField.setHoverCustomizer(new HoverCustomizer() {
public String hoverHTML(Object value, ListGridRecord listGridRecord, int \
rowNum, int colNum) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/resource/detail/configuration/AbstractConfigurationHistoryDataSource.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/i \
nventory/resource/detail/configuration/AbstractConfigurationHistoryDataSource.java \
index 7993957..05a00b6 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/resource/detail/configuration/AbstractConfigurationHistoryDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/resource/detail/configuration/AbstractConfigurationHistoryDataSource.java
@@ -47,6 +47,7 @@ import org.rhq.enterprise.gui.coregui.client.LinkManager;
import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.ConfigurationGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -201,7 +202,7 @@ public abstract class AbstractConfigurationHistoryDataSource<T \
extends AbstractR
CanvasField updateTypeField = new CanvasField(Field.GROUP_CONFIG_UPDATE_ID, \
MSG
.dataSource_configurationHistory_updateType()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) {
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) {
Integer groupConfigUpdateId = \
record.getAttributeAsInt(Field.GROUP_CONFIG_UPDATE_ID); if (groupConfigUpdateId == \
null) {
return new \
HTMLFlow(MSG.dataSource_configurationHistory_updateType_individual()); @@ -217,17 \
+218,15 @@ public abstract class AbstractConfigurationHistoryDataSource<T extends \
AbstractR
// determine the widths of our columns
if (includeResourceFields) {
- ListGridField resourceNameField = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, \
int i1) { + ViewLinkField resourceNameField = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
String url = LinkManager
- \
.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), \
null); + \
.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
-
public String hoverHTML(Object value, ListGridRecord listGridRecord, \
int rowNum, int colNum) {
return AncestryUtil.getResourceHoverHTML(listGridRecord, 0);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/resource/detail/configuration/AbstractConfigurationHistoryView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/AbstractConfigurationHistoryView.java
index 72966cf..0d848a7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/AbstractConfigurationHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/AbstractConfigurationHistoryView.java
@@ -23,21 +23,25 @@ import java.util.List;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.widgets.Canvas;
-import com.smartgwt.client.widgets.grid.CellFormatter;
+import com.smartgwt.client.widgets.Img;
+import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
+import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.configuration.AbstractResourceConfigurationUpdate;
import org.rhq.core.domain.criteria.AbstractResourceConfigurationUpdateCriteria;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.configuration.ConfigurationComparisonView;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
+import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
import org.rhq.enterprise.gui.coregui.client.components.table.TableSection;
import org.rhq.enterprise.gui.coregui.client.util.message.Message;
import org.rhq.enterprise.gui.coregui.client.util.message.Message.Severity;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* The superclass to the main plugin/resource views that lists all configuration \
history items. @@ -153,18 +157,24 @@ public abstract class \
AbstractConfigurationHistoryView<T extends AbstractConfigu }
@Override
- protected CellFormatter getDetailsLinkColumnCellFormatter() {
- return new CellFormatter() {
- public String format(Object value, ListGridRecord record, int i, int i1) \
{
- Integer recordId = getId(record);
- String detailsUrl = "#" + getBasePath() + "/" + recordId;
- String cellHtml = SeleniumUtility.getLocatableHref(detailsUrl, \
value.toString(), null); + protected CanvasField \
createDetailsLinkField(ListGridField field) { + return new CanvasField(field) \
{ + protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
+ HLayout hLayout = new HLayout();
+
String isCurrentConfig = record
\
.getAttribute(AbstractConfigurationHistoryDataSource.Field.CURRENT_CONFIG); if \
(Boolean.parseBoolean(isCurrentConfig)) {
- cellHtml = Canvas.imgHTML(ImageManager.getApproveIcon()) + \
cellHtml; + Img approveIcon = new \
Img(ImageManager.getApproveIcon()); + \
hLayout.addMember(approveIcon); }
- return cellHtml;
+
+ ViewLink detailsViewLink = createDetailsViewLink(record, value);
+ hLayout.addMember(detailsViewLink);
+
+ vLayout.addMember(hLayout);
+ return vLayout;
}
};
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricGraphView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricGraphView.java
index d051b92..def6455 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricGraphView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricGraphView.java
@@ -34,11 +34,13 @@ import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMetricGraphView;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
+import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
@@ -99,8 +101,7 @@ public class ResourceMetricGraphView extends \
AbstractMetricGraphView {
public void onTypesLoaded(Map<Integer, ResourceType> \
types) {
String url = \
LinkManager.getResourceLink(resource.getId());
- resourceTitle = new \
HTMLFlow(SeleniumUtility.getLocatableHref(url, resource.getName(),
- null));
+ resourceTitle = new \
ViewLink(StringUtility.escapeHtml(resource.getName()), url);
\
resourceTitle.setTooltip(AncestryUtil.getAncestryHoverHTMLForResource(resource, \
types, 0));
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coreg \
ui/client/inventory/resource/detail/operation/history/ResourceOperationHistoryDetailsView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/i \
nventory/resource/detail/operation/history/ResourceOperationHistoryDetailsView.java \
index b94f59b..51f2027 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/resource/detail/operation/history/ResourceOperationHistoryDetailsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/clie \
nt/inventory/resource/detail/operation/history/ResourceOperationHistoryDetailsView.java
@@ -27,7 +27,6 @@ import com.smartgwt.client.widgets.HTMLFlow;
import com.smartgwt.client.widgets.Label;
import com.smartgwt.client.widgets.form.fields.CanvasItem;
import com.smartgwt.client.widgets.form.fields.FormItem;
-import com.smartgwt.client.widgets.form.fields.StaticTextItem;
import com.smartgwt.client.widgets.layout.HLayout;
import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
@@ -45,15 +44,14 @@ import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.configuration.ConfigurationEditor;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.common.detail.operation.history.AbstractOperationHistoryDetailsView;
+import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* @author Ian Springer
*/
public class ResourceOperationHistoryDetailsView extends \
AbstractOperationHistoryDetailsView<ResourceOperationHistory> {
- private String disambiguatedResourceName;
private boolean showResourceField;
private ResourceComposite resourceComposite;
@@ -77,9 +75,11 @@ public class ResourceOperationHistoryDetailsView extends \
AbstractOperationHistor List<FormItem> items = super.createFields(operationHistory);
if (this.showResourceField) {
- StaticTextItem resourceItem = new \
StaticTextItem(ResourceOperationHistoryDataSource.Field.RESOURCE,
- "Resource");
- resourceItem.setValue(this.disambiguatedResourceName);
+ CanvasItem resourceItem = new \
CanvasItem(ResourceOperationHistoryDataSource.Field.RESOURCE, "Resource"); + \
Resource resource = resourceComposite.getResource(); + String url = \
LinkManager.getResourceLink(resource.getId()); + ViewLink viewLink = new \
ViewLink(StringUtility.escapeHtml(resource.getName()), url); + \
resourceItem.setCanvas(viewLink); items.add(1, resourceItem);
}
@@ -120,14 +120,6 @@ public class ResourceOperationHistoryDetailsView extends \
AbstractOperationHistor
public void onSuccess(PageList<ResourceOperationHistory> result) {
ResourceOperationHistory resourceOperationHistory = \
result.get(0);
-
- if (showResourceField) {
- Resource resource = resourceOperationHistory.getResource();
- String url = LinkManager.getResourceLink(resource.getId());
- disambiguatedResourceName = \
SeleniumUtility.getLocatableHref(url, resource.getName(), String
- .valueOf(resource.getId()));
- }
-
displayDetails(resourceOperationHistory);
}
});
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/MenuBarView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/MenuBarView.java
index 70fdc4c..0eff890 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/MenuBarView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/MenuBarView.java
@@ -155,9 +155,8 @@ public class MenuBarView extends LocatableVLayout {
viewLinkContainer.setAlign(VerticalAlignment.CENTER);
ViewLink viewLink = new \
ViewLink(extendLocatorId(sectionName.getName()), sectionName.getTitle(), \
sectionName.getName());
- viewLink.setStyleName(null);
- viewLink.setMouseOutStyleName(null);
- viewLink.setMouseOverStyleName(null);
+ viewLink.setMouseOutStyleName("menuBarLink");
+ viewLink.setMouseOverStyleName("menuBarLinkHover");
this.sectionNameToViewLinkMap.put(sectionName.getName(), \
viewLinkContainer); viewLinkContainer.addMember(viewLink);
updateViewLinkStyle(sectionName.getName());
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryDataSource.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryDataSource.java
index 93a59a8..c910b32 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryDataSource.java
@@ -16,7 +16,6 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-
package org.rhq.enterprise.gui.coregui.client.operation;
import java.util.ArrayList;
@@ -32,11 +31,13 @@ import com.smartgwt.client.rpc.RPCResponse;
import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.types.Overflow;
import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.HTMLFlow;
import com.smartgwt.client.widgets.Window;
import com.smartgwt.client.widgets.events.CloseClickHandler;
import com.smartgwt.client.widgets.events.CloseClientEvent;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
+import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.grid.events.RecordClickEvent;
@@ -54,7 +55,10 @@ import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
+import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.components.table.TimestampCellFormatter;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.gwt.OperationGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -63,7 +67,6 @@ import \
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTyp import \
org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; import \
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableHTMLPane; import \
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableWindow;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/**
* @author Jay Shaughnessy
@@ -123,14 +126,13 @@ public class OperationHistoryDataSource extends
fields.add(statusField);
if (this.entityContext.type != EntityContext.Type.Resource) {
- ListGridField resourceNameField = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, \
int i1) { + ViewLinkField resourceNameField = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
String url = LinkManager
- \
.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), \
null); + \
.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
@@ -160,23 +162,22 @@ public class OperationHistoryDataSource extends
}
protected ListGridField createStartedTimeField() {
- ListGridField startedTimeField = new ListGridField(Field.STARTED_TIME, MSG
- .view_operationHistoryDetails_dateSubmitted());
- startedTimeField.setAlign(Alignment.LEFT);
- startedTimeField.setCellAlign(Alignment.LEFT);
- startedTimeField.setCellFormatter(new TimestampCellFormatter() {
- public String format(Object value, ListGridRecord record, int rowNum, \
int colNum) { + CanvasField startedTimeField = new \
CanvasField(Field.STARTED_TIME, MSG + \
.view_operationHistoryDetails_dateSubmitted()) { + protected Canvas \
createCanvas(ListGrid grid, ListGridRecord record, Object value) { if (value != \
null) {
- String timestamp = super.format(value, record, rowNum, colNum);
+ String timestamp = TimestampCellFormatter.format(value);
Integer resourceId = \
record.getAttributeAsInt(AncestryUtil.RESOURCE_ID); Integer opHistoryId = \
record.getAttributeAsInt("id");
String url = \
LinkManager.getSubsystemResourceOperationHistoryLink(resourceId, \
opHistoryId);
- return SeleniumUtility.getLocatableHref(url, timestamp, null);
+ return new ViewLink(timestamp, url);
} else {
- return "<i>" + MSG.view_operationHistoryList_notYetStarted() + \
"</i>"; + return new HTMLFlow("<i>" + \
MSG.view_operationHistoryList_notYetStarted() + "</i>"); }
}
- });
+ };
+ startedTimeField.setAlign(Alignment.LEFT);
+ startedTimeField.setCellAlign(Alignment.LEFT);
startedTimeField.setShowHover(true);
startedTimeField.setHoverCustomizer(TimestampCellFormatter.getHoverCustomizer(Field.STARTED_TIME));
@@ -194,18 +195,18 @@ public class OperationHistoryDataSource extends
String statusStr = record.getAttribute(Field.STATUS);
OperationRequestStatus status = \
OperationRequestStatus.valueOf(statusStr); switch (status) {
- case SUCCESS: {
- return MSG.common_status_success();
- }
- case FAILURE: {
- return MSG.common_status_failed();
- }
- case INPROGRESS: {
- return MSG.common_status_inprogress();
- }
- case CANCELED: {
- return MSG.common_status_canceled();
- }
+ case SUCCESS: {
+ return MSG.common_status_success();
+ }
+ case FAILURE: {
+ return MSG.common_status_failed();
+ }
+ case INPROGRESS: {
+ return MSG.common_status_inprogress();
+ }
+ case CANCELED: {
+ return MSG.common_status_canceled();
+ }
}
// should never get here
return MSG.common_status_unknown();
@@ -276,22 +277,22 @@ public class OperationHistoryDataSource extends
final long start = System.currentTimeMillis();
this.operationService.findResourceOperationHistoriesByCriteria(criteria,
- new AsyncCallback<PageList<ResourceOperationHistory>>() {
+ new AsyncCallback<PageList<ResourceOperationHistory>>() {
- public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler()
- \
.handleError(MSG.view_operationHistoryDetails_error_fetchFailure(), \
caught);
- response.setStatus(RPCResponse.STATUS_FAILURE);
- processResponse(request.getRequestId(), response);
- }
+ public void onFailure(Throwable caught) {
+ CoreGUI.getErrorHandler()
+ \
.handleError(MSG.view_operationHistoryDetails_error_fetchFailure(), caught); + \
response.setStatus(RPCResponse.STATUS_FAILURE); + \
processResponse(request.getRequestId(), response); + }
- public void onSuccess(PageList<ResourceOperationHistory> result) {
- long fetchTime = System.currentTimeMillis() - start;
- Log.info(result.size() + " operation histories fetched in: " + \
fetchTime + "ms"); + public void \
onSuccess(PageList<ResourceOperationHistory> result) { + long \
fetchTime = System.currentTimeMillis() - start; + \
Log.info(result.size() + " operation histories fetched in: " + fetchTime + "ms");
- dataRetrieved(result, response, request);
- }
- });
+ dataRetrieved(result, response, request);
+ }
+ });
}
/**
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/AlertDefinitionReportView.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/AlertDefinitionReportView.java
index 23c6546..f8dcdb4 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/AlertDefinitionReportView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/AlertDefinitionReportView.java
@@ -22,7 +22,7 @@ import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.alert.AlertDefinition;
import org.rhq.core.domain.criteria.AlertDefinitionCriteria;
import org.rhq.core.domain.criteria.ResourceCriteria;
@@ -37,6 +37,7 @@ import org.rhq.enterprise.gui.coregui.client.components.Link;
import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
import org.rhq.enterprise.gui.coregui.client.components.table.CanvasField;
import org.rhq.enterprise.gui.coregui.client.components.table.Table;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
@@ -127,27 +128,24 @@ public class AlertDefinitionReportView extends \
Table<AlertDefinitionReportView.D
if (fieldName.equals(FIELD_CTIME) || fieldName.equals(FIELD_MTIME)) \
{ field.setHidden(true);
} else if (fieldName.equals(FIELD_NAME)) {
- CanvasField canvasField = new CanvasField(field) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord \
record) {
- HLayout hLayout = createHLayout(grid);
+ ViewLinkField nameField = new ViewLinkField(field) {
+ protected ViewLink getViewLink(ListGrid grid, ListGridRecord \
record, Object value) {
AlertDefinition alertDef = copyValues(record);
int resourceId = alertDef.getResource().getId();
int alertDefId = alertDef.getId();
String link = \
LinkManager.getSubsystemAlertDefinitionLink(resourceId, alertDefId);
- ViewLink viewLink = new \
ViewLink(extendLocatorId("ViewLink"),
- StringUtility.escapeHtml(alertDef.getName()), \
link);
- hLayout.addMember(viewLink);
- return hLayout;
+ String linkText = \
StringUtility.escapeHtml(alertDef.getName()); + return new \
ViewLink(linkText, link); }
};
- fields.set(i, canvasField);
+ fields.set(i, nameField);
}
}
// add more columns
CanvasField parentField = new CanvasField(FIELD_PARENT, \
MSG.view_alerts_field_parent(), 100) {
- protected Canvas createCanvas(ListGrid grid, final ListGridRecord \
record) {
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, final ListGridRecord \
record, Object value) { + VLayout vLayout = createVLayout(grid);
final AlertDefinition alertDef = copyValues(record);
boolean hasParent;
@@ -208,12 +206,12 @@ public class AlertDefinitionReportView extends \
Table<AlertDefinitionReportView.D }
}
});
- hLayout.addMember(link);
+ vLayout.addMember(link);
} else {
- hLayout.addMember(new HTMLFlow(MSG.common_val_na()));
+ vLayout.addMember(new HTMLFlow(MSG.common_val_na()));
}
- return hLayout;
+ return vLayout;
}
};
parentField.setShowHover(true);
@@ -228,15 +226,15 @@ public class AlertDefinitionReportView extends \
Table<AlertDefinitionReportView.D fields.add(parentField);
CanvasField resourceField = new CanvasField(FIELD_RESOURCE, \
MSG.common_title_resource()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) \
{
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
Integer resourceId = \
record.getAttributeAsInt(AncestryUtil.RESOURCE_ID); String url = \
LinkManager.getResourceLink(resourceId);
String resourceName = record.getAttribute(FIELD_RESOURCE);
ViewLink viewLink = new ViewLink(extendLocatorId("ViewLink"),
StringUtility.escapeHtml(resourceName), url);
- hLayout.addMember(viewLink);
- return hLayout;
+ vLayout.addMember(viewLink);
+ return vLayout;
}
};
resourceField.setShowHover(true);
@@ -303,10 +301,7 @@ public class AlertDefinitionReportView extends \
Table<AlertDefinitionReportView.D }
/**
- * Additional processing to support a cross-resource view)
- * @param result
- * @param response
- * @param request
+ * Additional processing to support a cross-resource view.
*/
protected void dataRetrieved(final PageList<AlertDefinition> result, final \
DSResponse response, final DSRequest request) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ResourceInstallReport.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ResourceInstallReport.java
index caf8e8d..d03c62a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ResourceInstallReport.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ResourceInstallReport.java
@@ -18,7 +18,7 @@ import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.core.domain.resource.composite.ResourceInstallCount;
import org.rhq.enterprise.gui.coregui.client.BookmarkableView;
@@ -34,7 +34,6 @@ import \
org.rhq.enterprise.gui.coregui.client.gwt.ResourceGWTServiceAsync; import \
org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField; \
import org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceSearchView; \
import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
-import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
/**
@@ -119,18 +118,18 @@ public class ResourceInstallReport extends LocatableVLayout \
implements Bookmarka @Override
protected void configureTable() {
CanvasField fieldTypeName = new CanvasField(DataSource.Field.TYPENAME, \
MSG.common_title_resource_type()) {
- protected Canvas createCanvas(ListGrid grid, ListGridRecord record) \
{
- HLayout hLayout = createHLayout(grid);
+ protected Canvas createCanvas(ListGrid grid, ListGridRecord record, \
Object value) { + VLayout vLayout = createVLayout(grid);
String typeName = \
record.getAttribute(DataSource.Field.TYPENAME); String url = \
getResourceTypeTableUrl(record); if (url != null) {
ViewLink viewLink = new \
ViewLink(extendLocatorId("ViewLink"), typeName, url);
- hLayout.addMember(viewLink);
+ vLayout.addMember(viewLink);
} else {
HTMLFlow html = new HTMLFlow(typeName);
- hLayout.addMember(html);
+ vLayout.addMember(html);
}
- return hLayout;
+ return vLayout;
}
};
ListGridField fieldPlugin = new \
ListGridField(DataSource.Field.TYPEPLUGIN, \
MSG.common_title_plugin());
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java
index d47b4f0..7794e3a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java
@@ -37,6 +37,7 @@ import com.smartgwt.client.data.Record;
import com.smartgwt.client.widgets.HTMLFlow;
import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.HoverCustomizer;
+import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -47,6 +48,8 @@ import org.rhq.core.domain.util.PageControl;
import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
+import org.rhq.enterprise.gui.coregui.client.components.ViewLink;
+import org.rhq.enterprise.gui.coregui.client.components.table.ViewLinkField;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
@@ -76,13 +79,12 @@ public class MeasurementOOBDataSource extends \
RPCDataSource<MeasurementOOBCompos public ArrayList<ListGridField> \
getListGridFields() { ArrayList<ListGridField> fields = new \
ArrayList<ListGridField>();
- ListGridField resourceNameField = new \
ListGridField(AncestryUtil.RESOURCE_NAME, \
MSG.common_title_resource());
- resourceNameField.setCellFormatter(new CellFormatter() {
- public String format(Object o, ListGridRecord listGridRecord, int i, int \
i1) {
- String url = \
LinkManager.getResourceLink(listGridRecord.getAttributeAsInt(AncestryUtil.RESOURCE_ID));
- return SeleniumUtility.getLocatableHref(url, o.toString(), null);
+ ViewLinkField resourceNameField = new \
ViewLinkField(AncestryUtil.RESOURCE_NAME, MSG.common_title_resource()) { + \
protected ViewLink getViewLink(ListGrid grid, ListGridRecord record, Object value) { \
+ String url = \
LinkManager.getResourceLink(record.getAttributeAsInt(AncestryUtil.RESOURCE_ID)); + \
return new ViewLink(value.toString(), url); }
- });
+ };
resourceNameField.setShowHover(true);
resourceNameField.setHoverCustomizer(new HoverCustomizer() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/selenium/SeleniumUtility.java \
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/selenium/SeleniumUtility.java
index 60291bc..38df4b4 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/selenium/SeleniumUtility.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/selenium/SeleniumUtility.java
@@ -75,7 +75,8 @@ public class SeleniumUtility {
}
/**
- * A utility for assigning an ID to a gwt uiobject. For a smartgwt widget use \
{@link setId(BaseWidget)}. + * A utility for assigning an ID to a gwt uiobject. \
For a smartgwt widget, use + * {@link \
#setID(com.smartgwt.client.widgets.BaseWidget, String)}.
* Any current ID will be overwritten. The algorithm is:
* <pre>
* If the unsafeId parameter is non-empty, the ID is set to the unsafeId, \
with spaces removed.
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/CoreGUI.css \
b/modules/enterprise/gui/coregui/src/main/webapp/CoreGUI.css index aebf32b..628c67c \
100644
--- a/modules/enterprise/gui/coregui/src/main/webapp/CoreGUI.css
+++ b/modules/enterprise/gui/coregui/src/main/webapp/CoreGUI.css
@@ -22,13 +22,19 @@ hr {
width: 100%;
}
-a, a:link, a:visited, a:hover, .viewLink, .viewLinkHover {
- color: #4A5D75 !important;
+a, a:link, a:visited, a:hover, .link, .linkHover, .menuBarLink, .menuBarLinkHover {
font-weight: bold !important;
+}
+
+a, a:link, a:visited, a:hover, .link, .linkHover {
+ color: #4A5D75 !important;
+}
+
+a, a:link, a:visited, .link, .menuBarLink {
text-decoration: none !important;
}
-a:hover, .viewLinkHover {
+a:hover, .linkHover, .menuBarLinkHover {
text-decoration: underline !important;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic