From 408059b7e34a97bf77571dad8dbf4db9f3a74ac2 Mon Sep 17 00:00:00 2001 From: Mike Duff Date: Thu, 10 Apr 2014 13:31:42 -0500 Subject: [PATCH] Issue #2892 - Fix problems loading saved configs for data browser dialog. Change-Id: I73b98714642f5852f7209fd8533d49aa473412f9 Former-commit-id: 578aa185289e5575993308dab11779bf32c46774 [formerly 635684bb4e9bc172e0d8a8fe7746f1bc89d22010] [formerly 33a2259cf464f5686cb482bd8ee1bdd963116c32] [formerly 578aa185289e5575993308dab11779bf32c46774 [formerly 635684bb4e9bc172e0d8a8fe7746f1bc89d22010] [formerly 33a2259cf464f5686cb482bd8ee1bdd963116c32] [formerly da65756e3b122f750fd2bd5f63f32b1a4c7280eb [formerly 33a2259cf464f5686cb482bd8ee1bdd963116c32 [formerly 323badf58cf12a35b3a4d93ff0188b638e60969b]]]] Former-commit-id: da65756e3b122f750fd2bd5f63f32b1a4c7280eb Former-commit-id: 29b9ea212f5b2f19001468db9c215eb6e01f7aaa [formerly a23608ec590d016f06cc4434b219ee3ce675a065] [formerly b538cf660c9cfb4fa877799b800a871c591269c0 [formerly 67ff4371b3b03fe4e8a7f6778227dea50c57774a]] Former-commit-id: 71f32d74c2777424ba3bb3443dc8759186877477 [formerly bc82bf8f86372a101f14856b2bb1c9fb92d4bbde] Former-commit-id: b432d6a4f67be3c0494900aae8a7c98fefdf6ee2 --- .../datadelivery/browser/DataBrowserDlg.java | 7 +++--- .../datadelivery/filter/FilterExpandBar.java | 21 ++++++++++++---- .../filter/config/xml/FilterTypeXML.java | 24 ++++++++++++++++++- 3 files changed, 42 insertions(+), 10 deletions(-) diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/browser/DataBrowserDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/browser/DataBrowserDlg.java index c529ec8b43..fe95371d7d 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/browser/DataBrowserDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/browser/DataBrowserDlg.java @@ -124,6 +124,7 @@ import com.vividsolutions.jts.geom.Coordinate; * Sep 26, 2013 2412 mpduff Handle auto selecting data type. * Sep 26, 2013 2413 mpduff Added isDirty check to New Configuration menu selection. * Oct 11, 2013 2386 mpduff Refactor DD Front end. + * Apr 10, 2014 2892 mpduff Fix problems with loading of saved configs. * * * @@ -371,7 +372,6 @@ public class DataBrowserDlg extends CaveSWTDialog implements IDataTableUpdate, @Override public void widgetSelected(SelectionEvent event) { displayLoadSaveConfigDlg(DialogType.OPEN); - setClean(); } }); @@ -970,7 +970,6 @@ public class DataBrowserDlg extends CaveSWTDialog implements IDataTableUpdate, "Selection Required", "Must make a selection before saving."); } - } else if (type == DialogType.OPEN) { setText(WINDOW_TITLE + " - (" + locFile.getFile().getName() + ")"); @@ -978,7 +977,7 @@ public class DataBrowserDlg extends CaveSWTDialog implements IDataTableUpdate, xml = fm.getXml(); updateFilters(); selectedFile = locFile.getFile().getName(); - + setClean(); } else if (type == DialogType.DELETE) { try { if (locFile != null) { @@ -1070,9 +1069,9 @@ public class DataBrowserDlg extends CaveSWTDialog implements IDataTableUpdate, int i = 0; for (String s : dataTypes) { if (s.equals(valueList.get(0))) { - i++; break; } + i++; } datatypeList.select(i); handleDataTypeSelection(); diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/FilterExpandBar.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/FilterExpandBar.java index 3caecb0620..55410bd8cd 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/FilterExpandBar.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/FilterExpandBar.java @@ -85,7 +85,8 @@ import com.raytheon.viz.ui.widgets.duallist.DualListConfig; * Jul 05, 2013 2137 mpduff Only a single data type can be selected. * Jul 05, 2013 2138 mpduff Fixed to not use filter if filter is disabled. * Sep 26, 2013 2412 mpduff Don't create expand items if no data type is selected. - * + * Apr 10, 2014 2892 mpduff Clear selected items when changing data types. + * * * * @author lvenable @@ -93,6 +94,13 @@ import com.raytheon.viz.ui.widgets.duallist.DualListConfig; */ public class FilterExpandBar extends Composite implements IFilterUpdate, IExpandControlAction { + private final String DATA_PROVIDER = "Data Provider"; + + private final String DATA_SET = "Data Set"; + + private final String PARAMETER = "Parameter"; + + private final String LEVEL = "Level"; /** * Filter expand bar. @@ -290,10 +298,6 @@ public class FilterExpandBar extends Composite implements IFilterUpdate, * TODO : this needs to be reworked as this only has 4 display * (filters). This should be configurable. */ - final String DATA_PROVIDER = "Data Provider"; - final String DATA_SET = "Data Set"; - final String PARAMETER = "Parameter"; - final String LEVEL = "Level"; if (displayName.equals(DATA_PROVIDER)) { Set providerSet = dataManager .getAvailableDataProvidersByType(dataType); @@ -596,6 +600,13 @@ public class FilterExpandBar extends Composite implements IFilterUpdate, this.dataType = dataType; setEnvelope(envelope); disposeExpandItemsAndControls(); + + // Clear previously selected items + if (filterSettingsXml != null) { + for (FilterTypeXML xml : this.filterSettingsXml.getFilterTypeList()) { + xml.clearValues(); + } + } if (!dataType.isEmpty()) { createExpandItems(); } diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/config/xml/FilterTypeXML.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/config/xml/FilterTypeXML.java index 479e3e5cc8..3dbfa6a034 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/config/xml/FilterTypeXML.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/filter/config/xml/FilterTypeXML.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlElements; import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml; /** - * Filter Type Definition object. + * Filter Type Definition object. Stores the filter type and values. * *
  * 
@@ -40,6 +40,7 @@ import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml;
  * ------------ ---------- ----------- --------------------------
  * Jan 30, 2012            mpduff      Initial creation.
  * Jun 04, 2013            mpduff      Changed method name.
+ * Apr 10, 2014   2892     mpduff      Added javadoc comments and toString
  * 
  * 
* @@ -49,9 +50,11 @@ import com.raytheon.uf.viz.datadelivery.common.xml.IDisplayXml; @XmlAccessorType(XmlAccessType.NONE) public class FilterTypeXML implements IDisplayXml { + /** Type of filter */ @XmlAttribute(name = "type") protected String filterType; + /** Selected filter values */ @XmlElements({ @XmlElement(name = "Value", type = String.class) }) protected ArrayList values = new ArrayList(); @@ -89,6 +92,9 @@ public class FilterTypeXML implements IDisplayXml { this.values.add(value); } + /** + * Clear the selected values. + */ public void clearValues() { this.values.clear(); } @@ -113,4 +119,20 @@ public class FilterTypeXML implements IDisplayXml { return sb.toString(); } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(this.filterType).append("||"); + for (String s : values) { + sb.append(s).append(" "); + } + + return sb.toString(); + } }