modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java | 18 +++++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/test/configuration/TestConfigurationFactory.java | 16 ++++++-- 2 files changed, 21 insertions(+), 13 deletions(-)
New commits: commit cf4407c4f5b77323777758f8e9d2e9d54151f604 Author: Ian Springer ian.springer@redhat.com Date: Mon Feb 13 15:41:54 2012 -0500
[BZ 790179] temptoray workaround for https://bugzilla.redhat.com/show_bug.cgi?id=790179 that makes list-o-map members always editable
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java index c1fb328..1fc8349 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java @@ -600,19 +600,13 @@ public class ConfigurationEditor extends LocatableVLayout { return; }
- public void addItemsForPropertyRecursively(String locatorId, PropertyDefinition propertyDefinition, + private void addItemsForPropertyRecursively(String locatorId, PropertyDefinition propertyDefinition, Property property, boolean oddRow, List<FormItem> fields) { List<FormItem> fieldsForThisProperty;
if (propertyDefinition instanceof PropertyDefinitionSimple) { final PropertyDefinitionSimple propertyDefinitionSimple = (PropertyDefinitionSimple) propertyDefinition; PropertySimple propertySimple = (PropertySimple) property; - - if (propertySimple == null) { - propertySimple = new PropertySimple(propertyDefinitionSimple.getName(), null); - configuration.put(propertySimple); - } - fieldsForThisProperty = buildFieldsForPropertySimple(propertyDefinition, propertyDefinitionSimple, propertySimple); } else if (propertyDefinition instanceof PropertyDefinitionList) { @@ -1067,14 +1061,20 @@ public class ConfigurationEditor extends LocatableVLayout { }
private static boolean isAllReadOnly(List<PropertyDefinition> propertyDefinitions) { - boolean allPropsDefsReadOnly = true; + // TODO (ips, 02/13/12): If we are going to do this correctly, we need to call isPropertyReadOnly() on each + // member property to determine whether that particular property is read-only or not, + // rather than relying solely on whether the member property definition is read-only; this + // is because, for a couple special cases, isPropertyReadOnly() returns false even when + // the prop def is read-only. + /*boolean allPropsDefsReadOnly = true; for (PropertyDefinition subDef : propertyDefinitions) { if (!subDef.isReadOnly()) { allPropsDefsReadOnly = false; break; } } - return allPropsDefsReadOnly; + return allPropsDefsReadOnly;*/ + return false; }
private PropertyMapListGridRecord[] buildSummaryRecords(PropertyList propertyList, diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/test/configuration/TestConfigurationFactory.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/test/configuration/TestConfigurationFactory.java index f5e7993..2142764 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/test/configuration/TestConfigurationFactory.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/test/configuration/TestConfigurationFactory.java @@ -155,10 +155,18 @@ public abstract class TestConfigurationFactory {
PropertyDefinitionMap mapInReadOnlyListPropDef = new PropertyDefinitionMap("MapOfSimplesInReadOnlyList", "a map of simples in a list", false); - mapInReadOnlyListPropDef.put(createStringPropDef1()); - mapInReadOnlyListPropDef.put(createStringPropDef2()); - mapInReadOnlyListPropDef.put(createBooleanPropDef()); - mapInReadOnlyListPropDef.put(createIntegerPropDef()); + PropertyDefinitionSimple propDef = createStringPropDef1(); + propDef.setReadOnly(true); + mapInReadOnlyListPropDef.put(propDef); + propDef = createStringPropDef2(); + propDef.setReadOnly(true); + mapInReadOnlyListPropDef.put(propDef); + propDef = createBooleanPropDef(); + propDef.setReadOnly(true); + mapInReadOnlyListPropDef.put(propDef); + propDef = createIntegerPropDef(); + propDef.setReadOnly(true); + mapInReadOnlyListPropDef.put(propDef); mapInReadOnlyListPropDef.setDisplayName(mapInReadOnlyListPropDef.getName());
PropertyDefinitionList readOnlyListPropDef = new PropertyDefinitionList("ReadOnlyListOfMaps",
rhq-commits@lists.fedorahosted.org