modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
| 83 +++++++++-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
| 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
| 27 +++
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
| 6
5 files changed, 114 insertions(+), 7 deletions(-)
New commits:
commit 67bdf6e52f3fc71ed22400ae58519a759cf78886
Merge: 06e438b... 8a2e19e...
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Wed Nov 24 13:22:07 2010 -0500
Merge branch 'master' of
ssh://git.fedorahosted.org/git/rhq/rhq.git
commit 06e438b0b91e5a18a3f5928a9fade7073f4695ee
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Wed Nov 24 13:21:42 2010 -0500
provide better looking alert def list views.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
index f960bc7..aa59e54 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
@@ -18,6 +18,7 @@
*/
package org.rhq.enterprise.gui.coregui.client.alert.definitions;
+import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -28,7 +29,13 @@ import com.smartgwt.client.data.DataSourceField;
import com.smartgwt.client.data.Record;
import com.smartgwt.client.data.fields.DataSourceImageField;
import com.smartgwt.client.data.fields.DataSourceTextField;
+import com.smartgwt.client.types.Alignment;
+import com.smartgwt.client.types.AutoFitWidthApproach;
+import com.smartgwt.client.types.DateDisplayFormat;
import com.smartgwt.client.types.FieldType;
+import com.smartgwt.client.types.ListGridFieldType;
+import com.smartgwt.client.widgets.grid.HoverCustomizer;
+import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.alert.AlertDefinition;
@@ -51,7 +58,7 @@ public abstract class AbstractAlertDefinitionsDataSource extends
RPCDataSource<A
protected static final String FIELD_MTIME = "mtime";
protected static final String FIELD_ENABLED = "enabled";
protected static final String FIELD_DELETED = "deleted";
- protected static final String FIELD_PRIORITY = "priority"; // not the
actual object; a string for the UI
+ protected static final String FIELD_PRIORITY = "priority"; // an image URL
protected static final String FIELD_OBJECT = "_object"; // the actual
AlertDefinition object
public AbstractAlertDefinitionsDataSource() {
@@ -60,6 +67,71 @@ public abstract class AbstractAlertDefinitionsDataSource extends
RPCDataSource<A
addFields(fields);
}
+ /**
+ * The view that contains the list grid which will display this datasource's data
will call this
+ * method to get the field information which is used to control the display of the
data.
+ *
+ * @return list grid fields used to display the datasource data
+ */
+ public ArrayList<ListGridField> getListGridFields() {
+ ArrayList<ListGridField> fields = new ArrayList<ListGridField>(6);
+
+ ListGridField nameField = new ListGridField(FIELD_NAME,
MSG.view_alerts_field_name());
+ nameField.setWidth("25%");
+ fields.add(nameField);
+
+ ListGridField descriptionField = new ListGridField(FIELD_DESCRIPTION,
MSG.common_title_description());
+ descriptionField.setWidth("30%");
+ fields.add(descriptionField);
+
+ ListGridField ctimeField = new ListGridField(FIELD_CTIME,
MSG.view_alerts_field_created_time());
+ ctimeField.setType(ListGridFieldType.DATE);
+ ctimeField.setDateFormatter(DateDisplayFormat.TOLOCALESTRING);
+ ctimeField.setWidth("15%");
+ fields.add(ctimeField);
+
+ ListGridField mtimeField = new ListGridField(FIELD_MTIME,
MSG.view_alerts_field_modified_time());
+ mtimeField.setType(ListGridFieldType.DATE);
+ mtimeField.setDateFormatter(DateDisplayFormat.TOLOCALESTRING);
+ mtimeField.setWidth("15%");
+ fields.add(mtimeField);
+
+ ListGridField enabledField = new ListGridField(FIELD_ENABLED,
MSG.view_alerts_field_enabled());
+ enabledField.setType(ListGridFieldType.IMAGE);
+ enabledField.setAlign(Alignment.CENTER);
+ enabledField.setAutoFitWidth(true);
+ enabledField.setAutoFitWidthApproach(AutoFitWidthApproach.BOTH);
+ fields.add(enabledField);
+
+ ListGridField priorityField = new ListGridField(FIELD_PRIORITY,
MSG.view_alerts_field_priority());
+ priorityField.setType(ListGridFieldType.IMAGE);
+ priorityField.setAutoFitWidth(true);
+ priorityField.setAutoFitWidthApproach(AutoFitWidthApproach.BOTH);
+ priorityField.setAlign(Alignment.CENTER);
+ priorityField.setShowHover(true);
+ priorityField.setHoverCustomizer(new HoverCustomizer() {
+ @Override
+ public String hoverHTML(Object value, ListGridRecord record, int rowNum, int
colNum) {
+ AlertDefinition alertDef = (AlertDefinition)
record.getAttributeAsObject(FIELD_OBJECT);
+ switch (alertDef.getPriority()) {
+ case HIGH: {
+ return MSG.common_alert_high();
+ }
+ case MEDIUM: {
+ return MSG.common_alert_medium();
+ }
+ case LOW: {
+ return MSG.common_alert_low();
+ }
+ }
+ return ""; // will never get here
+ }
+ });
+ fields.add(priorityField);
+
+ return fields;
+ }
+
@Override
public AlertDefinition copyValues(Record from) {
AlertDefinition alertDef = (AlertDefinition)
from.getAttributeAsObject(FIELD_OBJECT);
@@ -74,7 +146,11 @@ public abstract class AbstractAlertDefinitionsDataSource extends
RPCDataSource<A
record.setAttribute(FIELD_DESCRIPTION, from.getDescription());
record.setAttribute(FIELD_CTIME, new Date(from.getCtime()));
record.setAttribute(FIELD_MTIME, new Date(from.getMtime()));
- record.setAttribute(FIELD_ENABLED, from.getEnabled());
+ if (from.getEnabled()) {
+ record.setAttribute(FIELD_ENABLED,
"/images/icons/availability_green_16.png");
+ } else {
+ record.setAttribute(FIELD_ENABLED,
"/images/icons/availability_red_16.png");
+ }
record.setAttribute(FIELD_DELETED, from.getDeleted());
switch (from.getPriority()) {
case HIGH: {
@@ -117,8 +193,7 @@ public abstract class AbstractAlertDefinitionsDataSource extends
RPCDataSource<A
mtimeField.setType(FieldType.DATETIME);
fields.add(mtimeField);
- DataSourceTextField enabledField = new DataSourceTextField(FIELD_ENABLED,
MSG.view_alerts_field_enabled());
- enabledField.setType(FieldType.BOOLEAN);
+ DataSourceImageField enabledField = new DataSourceImageField(FIELD_ENABLED,
MSG.view_alerts_field_enabled());
fields.add(enabledField);
DataSourceImageField priorityField = new DataSourceImageField(FIELD_PRIORITY,
MSG.view_alerts_field_priority());
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
index 491bff5..811c4d8 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
@@ -22,6 +22,7 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.data.Criteria;
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 org.rhq.core.domain.alert.AlertDampening;
@@ -56,6 +57,7 @@ public abstract class AbstractAlertDefinitionsView extends
TableSection<Abstract
AbstractAlertDefinitionsDataSource ds = getAlertDefinitionDataSource();
setDataSource(ds);
listGrid.setDataSource(ds);
+ listGrid.setFields(ds.getListGridFields().toArray(new ListGridField[0]));
Criteria criteria = getCriteria();
listGrid.setCriteria(criteria);
@@ -98,7 +100,6 @@ public abstract class AbstractAlertDefinitionsView extends
TableSection<Abstract
}
});
-
}
@Override
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
index 14f587d..2068a23 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
@@ -23,6 +23,7 @@
package org.rhq.enterprise.gui.coregui.client.alert.definitions;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -31,6 +32,10 @@ import com.smartgwt.client.data.DSRequest;
import com.smartgwt.client.data.DataSourceField;
import com.smartgwt.client.data.fields.DataSourceLinkField;
import com.smartgwt.client.data.fields.DataSourceTextField;
+import com.smartgwt.client.types.Alignment;
+import com.smartgwt.client.types.AutoFitWidthApproach;
+import com.smartgwt.client.types.ListGridFieldType;
+import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.alert.AlertDefinition;
@@ -55,6 +60,26 @@ public class ResourceAlertDefinitionsDataSource extends
AbstractAlertDefinitions
}
@Override
+ public ArrayList<ListGridField> getListGridFields() {
+ ArrayList<ListGridField> fields = super.getListGridFields();
+
+ // add two more columns
+ ListGridField parentIdField = new ListGridField(FIELD_PARENT,
MSG.view_alerts_field_parent());
+ parentIdField.setType(ListGridFieldType.LINK);
+ parentIdField.setAutoFitWidth(true);
+ parentIdField.setAutoFitWidthApproach(AutoFitWidthApproach.BOTH);
+ fields.add(parentIdField);
+
+ ListGridField readOnlyField = new ListGridField(FIELD_READONLY,
MSG.view_alerts_field_protected());
+ readOnlyField.setAutoFitWidth(true);
+ readOnlyField.setAutoFitWidthApproach(AutoFitWidthApproach.BOTH);
+ readOnlyField.setAlign(Alignment.CENTER);
+ fields.add(readOnlyField);
+
+ return fields;
+ }
+
+ @Override
public ListGridRecord copyValues(AlertDefinition from) {
ListGridRecord record = super.copyValues(from);
@@ -76,7 +101,7 @@ public class ResourceAlertDefinitionsDataSource extends
AbstractAlertDefinitions
+ "/Alerts/Definitions/" + groupAlertDefinition.getId());
record.setLinkText(MSG.view_alert_definition_for_group());
}
- record.setAttribute(FIELD_READONLY, readOnly);
+ record.setAttribute(FIELD_READONLY, (readOnly) ? MSG.common_val_yes() :
MSG.common_val_no());
}
return record;
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index a99b4ed..90c6014 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -179,6 +179,12 @@ common_val_never = Never~
common_val_na = N/A~
common_val_none = None~
+# Common Alert Priorities
+#------------------------
+common_alert_high=HIGH
+common_alert_medium=MEDIUM
+common_alert_low=LOW
+
# Common Calendar
#--------------
common_calendar_january_short=jan~
commit 07648b0b03b1fd9d345c13ec8b11fced0c502eeb
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Wed Nov 24 12:37:19 2010 -0500
typo - should be using minutes label
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
index d896479..3527da5 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
@@ -578,7 +578,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm
implement
private String getTimeUnitsTitle(AlertDampening.TimeUnits units) {
switch (units) {
case MINUTES: {
- return MSG.common_label_month();
+ return MSG.common_label_minutes();
}
case HOURS: {
return MSG.common_label_hours();