diff flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/CrossSectionChartThemePanel.java @ 2443:993871f8e2f2

Partial fix flys/issue624 (removing cross section). flys-client/trunk@4111 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Fri, 02 Mar 2012 10:53:40 +0000
parents e0d665661a1d
children 1de15a7bfc59
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/CrossSectionChartThemePanel.java	Fri Mar 02 10:26:08 2012 +0000
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/CrossSectionChartThemePanel.java	Fri Mar 02 10:53:40 2012 +0000
@@ -369,6 +369,21 @@
     }
 
 
+    /** Remove the themes, also from the master (reference) select box. */
+    @Override
+    protected void removeThemes(final ListGridRecord[] records) {
+        // TODO take care of what happens if that was the last
+        // cross section and/or the cross section currently selected as master.
+        for (ListGridRecord record: records) {
+            FacetRecord facet = (FacetRecord) record;
+            Theme theme = facet.getTheme();
+            masters.remove(theme.getArtifact());
+        }
+        masterCb.setValueMap(masters);
+        super.removeThemes(records);
+    }
+
+
     public void spinnerValueEntered(final SpinnerItem item,
         final double enteredKm, final FacetRecord facetRecord
     ) {
@@ -642,9 +657,11 @@
         // Synchron checking.
         MenuItem synchronNavigationMenuItem = new MenuItem();
         if (synchronNavigation == true) {
+            // TODO i18n
             synchronNavigationMenuItem.setTitle("Einzeln navigieren");
         }
         else {
+            // TODO i18n
             synchronNavigationMenuItem.setTitle("Synchron navigieren");
         }
         synchronNavigationMenuItem.addClickHandler(new ClickHandler() {
@@ -729,8 +746,10 @@
      * @param theme The cross section theme.
      */
     protected void addToReferences(Theme theme) {
-        masters.put(theme.getArtifact(), theme.getDescription());
-        masterCb.setValueMap(masters);
+        if (theme.getVisible() != 0) {
+            masters.put(theme.getArtifact(), theme.getDescription());
+            masterCb.setValueMap(masters);
+        }
         findCurrentCSMaster();
         if (masterCb.getSelectedRecord() == null) {
             masterCb.setValue(getCurrentCSMaster());

http://dive4elements.wald.intevation.org