[Schmitzm-commits] r427 - in branches/1.0-gt2-2.6/src: schmitzm/geotools/feature schmitzm/geotools/gui skrueger/geotools/selection

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Fri Oct 2 21:38:45 CEST 2009


Author: alfonx
Date: 2009-10-02 21:38:44 +0200 (Fri, 02 Oct 2009)
New Revision: 427

Modified:
   branches/1.0-gt2-2.6/src/schmitzm/geotools/feature/CQLFilterParser.java
   branches/1.0-gt2-2.6/src/schmitzm/geotools/gui/FeatureLayerFilterDialog.java
   branches/1.0-gt2-2.6/src/skrueger/geotools/selection/FeatureMapLayerSelectionSynchronizer.java
Log:
* GP-Feature: Some more stuff with FilterDialogs and AtlasStyler

Modified: branches/1.0-gt2-2.6/src/schmitzm/geotools/feature/CQLFilterParser.java
===================================================================
--- branches/1.0-gt2-2.6/src/schmitzm/geotools/feature/CQLFilterParser.java	2009-10-02 17:20:00 UTC (rev 426)
+++ branches/1.0-gt2-2.6/src/schmitzm/geotools/feature/CQLFilterParser.java	2009-10-02 19:38:44 UTC (rev 427)
@@ -61,12 +61,12 @@
   /**
    * Creates a CQL-{@link Filter} for the rule string.
    * @param rule a rule string
-   * @return TRUE filter, if rule is {@code null} or empty
+   * @return Filter.INCLUDE if the rule is empty
    */
   @Override
   public Filter parseFilter(String rule) {
     if (rule == null || rule.trim().equals(""))
-      return Filter.EXCLUDE;
+      return Filter.INCLUDE;
     try {
       return CQL.toFilter(rule);
     } catch (CQLException err) {

Modified: branches/1.0-gt2-2.6/src/schmitzm/geotools/gui/FeatureLayerFilterDialog.java
===================================================================
--- branches/1.0-gt2-2.6/src/schmitzm/geotools/gui/FeatureLayerFilterDialog.java	2009-10-02 17:20:00 UTC (rev 426)
+++ branches/1.0-gt2-2.6/src/schmitzm/geotools/gui/FeatureLayerFilterDialog.java	2009-10-02 19:38:44 UTC (rev 427)
@@ -30,6 +30,7 @@
 package schmitzm.geotools.gui;
 
 import java.awt.BorderLayout;
+import java.awt.Component;
 import java.awt.FlowLayout;
 import java.awt.Frame;
 import java.awt.Window;
@@ -58,233 +59,310 @@
 import schmitzm.swing.ExceptionDialog;
 import schmitzm.swing.SwingUtil;
 
-
 /**
  * Diese Klasse stellt einen Dialog dar, in dem eine {@link FeatureCollection}
- * ueber eine Formel gefiltert werden kann. Beim Anwenden des Filters wird
- * ein {@link FeatureSelectedEvent} ausgeloest, auf das z.B. mit dem
- * Einfuegen eines neuen Layers reagiert werden kann.
- * Standardmaessig wird ein {@link FeatureOperationTreeParser} verwendet,
- * um die eingegebene Formel zu parsen (und einen {@link FeatureOperationTreeFilter}
- * zu erstellen). Ueber {@code getFeatureCollectionFilterPanel().setFilterParser(FilterParser)}
- * kann dieser jedoch einfach geaendert werden.
+ * ueber eine Formel gefiltert werden kann. Beim Anwenden des Filters wird ein
+ * {@link FeatureSelectedEvent} ausgeloest, auf das z.B. mit dem Einfuegen eines
+ * neuen Layers reagiert werden kann. Standardmaessig wird ein
+ * {@link FeatureOperationTreeParser} verwendet, um die eingegebene Formel zu
+ * parsen (und einen {@link FeatureOperationTreeFilter} zu erstellen). Ueber
+ * {@code getFeatureCollectionFilterPanel().setFilterParser(FilterParser)} kann
+ * dieser jedoch einfach geaendert werden.
+ * 
  * @see FeatureCollectionFilterPanel
- * @author <a href="mailto:martin.schmitz at koeln.de">Martin Schmitz</a> (University of Bonn/Germany)
+ * @author <a href="mailto:martin.schmitz at koeln.de">Martin Schmitz</a>
+ *         (University of Bonn/Germany)
  * @version 1.0
  */
-public class FeatureLayerFilterDialog extends JDialog implements CaptionsChangeable {
-  /** Key, um den Titel des FeatureCollection-Filter-Dialogs in der {@link CaptionsChangeable}-Map anzusprechen. */
-  public static final String DIALOG_TITLE = FeatureLayerFilterDialog.class.getName()+".TITLE";
-  /** Key, um den OK-Button des FeatureCollection-Filter-Dialogs in der {@link CaptionsChangeable}-Map anzusprechen. */
-  public static final String OK_BUTTON = FeatureLayerFilterDialog.class.getName()+".OK";
-  /** Key, um den ABBRECHEN-Button des FeatureCollection-Filter-Dialogs in der {@link CaptionsChangeable}-Map anzusprechen. */
-  public static final String CANCEL_BUTTON = FeatureLayerFilterDialog.class.getName()+".CANCEL";
-  /** Key, um den ÜBERNEHMEN-Button des FeatureCollection-Filter-Dialogs in der {@link CaptionsChangeable}-Map anzusprechen. */
-  public static final String APPLY_BUTTON = FeatureLayerFilterDialog.class.getName()+".APPLY";
+public class FeatureLayerFilterDialog extends JDialog implements
+		CaptionsChangeable {
+	/**
+	 * Key, um den Titel des FeatureCollection-Filter-Dialogs in der
+	 * {@link CaptionsChangeable}-Map anzusprechen.
+	 */
+	public static final String DIALOG_TITLE = FeatureLayerFilterDialog.class
+			.getName()
+			+ ".TITLE";
+	/**
+	 * Key, um den OK-Button des FeatureCollection-Filter-Dialogs in der
+	 * {@link CaptionsChangeable}-Map anzusprechen.
+	 */
+	public static final String OK_BUTTON = FeatureLayerFilterDialog.class
+			.getName()
+			+ ".OK";
+	/**
+	 * Key, um den ABBRECHEN-Button des FeatureCollection-Filter-Dialogs in der
+	 * {@link CaptionsChangeable}-Map anzusprechen.
+	 */
+	public static final String CANCEL_BUTTON = FeatureLayerFilterDialog.class
+			.getName()
+			+ ".CANCEL";
+	/**
+	 * Key, um den ÜBERNEHMEN-Button des FeatureCollection-Filter-Dialogs in der
+	 * {@link CaptionsChangeable}-Map anzusprechen.
+	 */
+	public static final String APPLY_BUTTON = FeatureLayerFilterDialog.class
+			.getName()
+			+ ".APPLY";
 
-  /** Panel in dem der Filter definiert und getestet werden kann. */
-  protected FeatureCollectionFilterPanel filterPanel = null;
-  /** Der OK-Button. */
-  protected JButton okButton = null;
-  /** Der ABBRECHEN-Button. */
-  protected JButton cancelButton = null;
-  /** Der ANWENDEN-Button. */
-  protected JButton applyButton = null;
+	/** Panel in dem der Filter definiert und getestet werden kann. */
+	protected FeatureCollectionFilterPanel filterPanel = null;
+	/** Der OK-Button. */
+	protected final JButton okButton = new JButton(SwingUtil.RESOURCE.getString("Ok"));
 
-  /** Parser, der standardmaessig verwendet wird, um den {@link Filter} zu
-   *  erstellen. */
-  public static final FilterParser FILTER_PARSER = new FeatureOperationTreeParser();
-  
-  private String   frameTitle = GeotoolsGUIUtil.RESOURCE.getString(DIALOG_TITLE);
-  private JMapPane mapPane = null;
-  private MapLayer layer = null;
+	/** Der ABBRECHEN-Button. */
+	protected final JButton cancelButton = new JButton(SwingUtil.RESOURCE.getString("Cancel"));
 
-  /**
-   * Erzeugt einen neuen Dialog.
-   * @param parent Uebergeordnetes Fenster (kann {@code null} sein)
-   * @param mapPane MapPane fuer welches {@link FeatureSelectedEvent} ausgeloest
-   *                werden
-   * @param mapLayer MapLayer, aus dem die FeatureCollection stammt, auf der der
-   *                 Filter definiert wird
-   * @exception IOException falls beim Ermitteln der {@link FeatureCollection} aus
-   *            dem Layer ein Fehler auftritt
-   *           
-   * CHANGE BY SK: Takes {@link Window} instead of {@link Frame}
-   * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons Kr&uuml;ger</a>
-   */
-  public FeatureLayerFilterDialog(Window parent, JMapPane mapPane, MapLayer mapLayer) throws IOException {
-    this(parent, mapPane, mapLayer, true);
-  }
+	/** Der ANWENDEN-Button. */
+	protected final JButton applyButton =  new JButton(SwingUtil.RESOURCE.getString("Apply"));
 
+	/**
+	 * Parser, der standardmaessig verwendet wird, um den {@link Filter} zu
+	 * erstellen.
+	 */
+	public static final FilterParser FILTER_PARSER = new FeatureOperationTreeParser();
 
-  /**
-   * Erzeugt einen neuen Dialog.
-   * @param parent Uebergeordnetes Fenster (kann {@code null} sein)
-   * @param mapPane MapPane fuer welches {@link FeatureSelectedEvent} ausgeloest
-   *                werden
-   * @param mapLayer MapLayer, aus dem die FeatureCollection stammt, auf der der
-   *                 Filter definiert wird
-   * @param initGUI bestimmt, ob {@link #initGUI()} aufgerufen werden soll. Wenn
-   *                {@code false}, muss der Konstruktor der Unterklasse dafuer
-   *                sorgen, dass {@link #initGUI()} aufgerufen wird
-   * @exception IOException falls beim Ermitteln der {@link FeatureCollection} aus
-   *            dem Layer ein Fehler auftritt
-   *            
-   * CHANGE BY SK: Takes {@link Window} instead of {@link Frame}     
-   * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons Kr&uuml;ger</a>       
-   */
-  protected FeatureLayerFilterDialog(Window parent, JMapPane mapPane, MapLayer mapLayer, boolean initGUI) throws IOException {
-    super(parent);
-    setModal(true);
-    this.setTitle( frameTitle + " ["+mapLayer.getTitle()+"]" );
-    this.setLayout( new BorderLayout() );
-    this.setSize(380,200);
-    this.mapPane = mapPane;
-    this.layer   = mapLayer;
-    if ( initGUI ) {
-      initGUI();
-      pack();
-    }
-  }
+	private String frameTitle = GeotoolsGUIUtil.RESOURCE
+			.getString(DIALOG_TITLE);
+	private JMapPane mapPane = null;
+	private MapLayer layer = null;
 
-  /**
-   * Initalisiert die GUI.
-   */
-  protected void initGUI() throws IOException {
-    filterPanel = new FeatureCollectionFilterPanel(FILTER_PARSER, (FeatureCollection<SimpleFeatureType, SimpleFeature>) layer.getFeatureSource().getFeatures(), true ) {
-      @Override
-      protected void resetComponentsAfterTest(Throwable err) {
-        super.resetComponentsAfterTest(err);
-        // OK- und Uebernehmen-Button (de)aktivieren
-        okButton.setEnabled( err == null );
-        applyButton.setEnabled( err == null );
-      }
-      @Override
-      protected boolean acceptOperator(String operator) {
-        // Operatoren durch Methode des Dialogs filtern
-        return super.acceptOperator(operator) &&
-               FeatureLayerFilterDialog.this.acceptOperator(operator);
-      }
-    };
-    okButton = new JButton( SwingUtil.RESOURCE.getString("Ok") );
-    cancelButton = new JButton( SwingUtil.RESOURCE.getString("Cancel") );
-    applyButton = new JButton( SwingUtil.RESOURCE.getString("Apply") );
-    add( filterPanel, BorderLayout.CENTER);
-    JPanel buttonPanel = new JPanel( new FlowLayout(FlowLayout.CENTER, 10, 5) );
-    buttonPanel.add( okButton);
-    buttonPanel.add( cancelButton);
-    buttonPanel.add( applyButton);
-    add( buttonPanel, BorderLayout.SOUTH );
+	/**
+	 * Erzeugt einen neuen Dialog.
+	 * 
+	 * @param parent
+	 *            Uebergeordnetes Fenster (kann {@code null} sein)
+	 * @param mapPane
+	 *            MapPane fuer welches {@link FeatureSelectedEvent} ausgeloest
+	 *            werden
+	 * @param mapLayer
+	 *            MapLayer, aus dem die FeatureCollection stammt, auf der der
+	 *            Filter definiert wird
+	 * @exception IOException
+	 *                falls beim Ermitteln der {@link FeatureCollection} aus dem
+	 *                Layer ein Fehler auftritt
+	 * 
+	 *                CHANGE BY SK: Takes {@link Window} instead of
+	 *                {@link Frame}
+	 * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons
+	 *         Kr&uuml;ger</a>
+	 */
+	public FeatureLayerFilterDialog(Window parent, JMapPane mapPane,
+			MapLayer mapLayer) {
+		this(parent, mapPane, mapLayer, true);
+	}
 
-    // Aktionen der Filter-Fenster-Button
-    ActionListener action = new ActionListener() {
-      public void actionPerformed(ActionEvent e) {
-        // Ok- und Apply-Button > Filter anwenden und Event erzeugen
-        if ( e.getSource() == okButton || e.getSource() == applyButton ) {
-          // FeatureCollection filtern
-          try {
-            FeatureCollection<SimpleFeatureType, SimpleFeature> fc = filterPanel.filterFeatureCollection();
-            FeatureSelectedEvent fse = new FeatureSelectedEvent(getMapPane() , layer, fc.getBounds(), fc, FeatureLayerFilterDialog.this);
-            getMapPane().fireMapPaneEvent( fse );
-          } catch ( Exception err ) {
-            ExceptionDialog.show(filterPanel,err);
-            // Fenster nicht schliessen, bei OK!!
-            return;
-          }
-        }
-        // Ok- und Cancel-Button > Dialog schliessen
-        if ( e.getSource() == okButton || e.getSource() == cancelButton ) {
-          setVisible( false );
-        }
-      }
-    };
-    okButton.addActionListener( action );
-    cancelButton.addActionListener( action );
-    applyButton.addActionListener( action );
+	/**
+	 * Erzeugt einen neuen Dialog.
+	 * 
+	 * @param parent
+	 *            Uebergeordnetes Fenster (kann {@code null} sein)
+	 * @param mapPane
+	 *            MapPane fuer welches {@link FeatureSelectedEvent} ausgeloest
+	 *            werden
+	 * @param mapLayer
+	 *            MapLayer, aus dem die FeatureCollection stammt, auf der der
+	 *            Filter definiert wird
+	 * @param initGUI
+	 *            bestimmt, ob {@link #initGUI()} aufgerufen werden soll. Wenn
+	 *            {@code false}, muss der Konstruktor der Unterklasse dafuer
+	 *            sorgen, dass {@link #initGUI()} aufgerufen wird
+	 * @exception IOException
+	 *                falls beim Ermitteln der {@link FeatureCollection} aus dem
+	 *                Layer ein Fehler auftritt
+	 * 
+	 *                CHANGE BY SK: Takes {@link Window} instead of
+	 *                {@link Frame}
+	 * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons
+	 *         Kr&uuml;ger</a>
+	 */
+	protected FeatureLayerFilterDialog(Window parent, JMapPane mapPane,
+			MapLayer mapLayer, boolean initGUI) {
+		super(parent);
+		setModal(true);
+		if (mapLayer != null)
+			this.setTitle(frameTitle + " [" + mapLayer.getTitle() + "]");
+		else
+			this.setTitle(frameTitle);
+		this.setLayout(new BorderLayout());
+		this.setSize(380, 200);
+		this.mapPane = mapPane;
+		this.layer = mapLayer;
+		if (initGUI) {
+			initGUI();
+			pack();
+		}
+	}
 
-    // Wenn sich die die Bezeichnung des Layers aendert, soll auch der
-    // Titel des Filter-Fensters geaendert werden
-    layer.addMapLayerListener( new MapLayerAdapter() {
-      public void layerChanged(MapLayerEvent e) {
-        // Bezeichnung der Checkbox aendern
-        setTitle(frameTitle + " ["+layer.getTitle()+"]");
-      }
-    });
-  }
+	/**
+	 * Initalisiert die GUI.
+	 */
+	protected void initGUI() {
 
-  /**
-   * Kann von Sub-Klassen ueberschrieben werden, um bestimmte Operatoren
-   * in der Auswahl-Liste auszublenden.
-   * @param operator ein Operator
-   * @return immer {@code true}
-   */
-  protected boolean acceptOperator(String operator) {
-    return true;
-  }
+		add(getFilterPanel(), BorderLayout.CENTER);
+		JPanel buttonPanel = new JPanel(
+				new FlowLayout(FlowLayout.CENTER, 10, 5));
+		buttonPanel.add(okButton);
+		buttonPanel.add(cancelButton);
+		buttonPanel.add(applyButton);
+		add(buttonPanel, BorderLayout.SOUTH);
 
-  /**
-   * Liefert das MapPane, fuer das {@link FeatureSelectedEvent FeatureSelectedEvents}
-   * ausgeloest werden.
-   */
-  public JMapPane getMapPane() {
-    return mapPane;
-  }
+		// Aktionen der Filter-Fenster-Button
+		ActionListener action = new ActionListener() {
+			public void actionPerformed(ActionEvent e) {
+				// Ok- und Apply-Button > Filter anwenden und Event erzeugen
+				if (e.getSource() == okButton || e.getSource() == applyButton) {
+					// FeatureCollection filtern
+					final Filter newFilter;
+					if (getFilterPanel().getRule() == null
+							|| getFilterPanel().getRule().equals("")) {
+						newFilter = Filter.INCLUDE;
+					} else {
+						newFilter = getFilter();
+					}
 
-  /**
-   * Liefert das Layer, aus dem die {@link FeatureCollection} stammt auf der
-   * der Filter definiert wird.
-   */
-  public MapLayer getMapLayer() {
-    return layer;
-  }
+					final Filter fiterInAction = getMapLayer().getQuery()
+							.getFilter();
 
-  /**
-   * Liefert das Panel, in dem der Filter definiert und die Vorschau angezeigt
-   * wird.
-   */
-  public FeatureCollectionFilterPanel getFeatureCollectionFilterPanel() {
-    return filterPanel;
-  }
+					if (getMapPane() != null
+							&& !fiterInAction.equals(newFilter)) {
 
-  /**
-   * Liefert die aktuell im Dialog eingegebene Formel.
-   */
-  public String getFilterRule() {
-    return filterPanel.getRule();
-  }
+						try {
+							FeatureCollection<SimpleFeatureType, SimpleFeature> fc = getFilterPanel()
+									.filterFeatureCollection();
+							FeatureSelectedEvent fse = new FeatureSelectedEvent(
+									getMapPane(), layer, fc.getBounds(), fc,
+									FeatureLayerFilterDialog.this);
+							getMapPane().fireMapPaneEvent(fse);
+						} catch (Exception err) {
+							ExceptionDialog.show(getFilterPanel(), err);
+							// Fenster nicht schliessen, bei OK!!
+							return;
+						}
+					}
+				}
+				// Ok- und Cancel-Button > Dialog schliessen
+				if (e.getSource() == okButton || e.getSource() == cancelButton) {
+					dispose();
+				}
+			}
+		};
+		okButton.addActionListener(action);
+		cancelButton.addActionListener(action);
+		applyButton.addActionListener(action);
 
-  /**
-   * Setzt die im Dialog eingegebene Formel und aktualisiert entsprechend die
-   * Vorschau
-   * @param rule Formel als String
-   */
-  public void setFilterRule(String rule) {
-    filterPanel.setRule(rule);
-  }
+		// Wenn sich die die Bezeichnung des Layers aendert, soll auch der
+		// Titel des Filter-Fensters geaendert werden
+		layer.addMapLayerListener(new MapLayerAdapter() {
+			public void layerChanged(MapLayerEvent e) {
+				// Bezeichnung der Checkbox aendern
+				setTitle(frameTitle + " [" + layer.getTitle() + "]");
+			}
+		});
+	}
 
-  /**
-   * Liefert den Filter der aktuell im Dialog eingegebenen Formel.
-   */
-  public Filter getFilter() {
-    return filterPanel.createFilter();
-  }
+	public FeatureCollectionFilterPanel getFilterPanel() {
+		if (filterPanel == null) {
+			try {
 
-  /**
-   * Belegt die Labels und Buttons im Dialog neu
-   * @param captionMap Map in der die neuen Labels hinterlegt sind.
-   * @see FeatureLayerFilterDialog
-   */
-  public void resetCaptions(Map<String,Object> captionMap) {
-    SwingUtil.resetCaption ( okButton, captionMap.get(OK_BUTTON) );
-    SwingUtil.resetCaption ( applyButton, captionMap.get(APPLY_BUTTON) );
-    SwingUtil.resetCaption ( cancelButton, captionMap.get(CANCEL_BUTTON) );
-    Object caption = captionMap.get( DIALOG_TITLE );
-    if ( caption != null ) {
-      frameTitle = caption.toString();
-      // Damit Layer-Bezeichnung in Titel uebernommen wird, ein MapLayerEvent
-      // ausloesen
-      layer.setTitle( layer.getTitle() );
-    }
-    filterPanel.resetCaptions( captionMap );
-  }
+				filterPanel = new FeatureCollectionFilterPanel(FILTER_PARSER,
+						(FeatureCollection<SimpleFeatureType, SimpleFeature>) layer
+								.getFeatureSource().getFeatures(), true) {
+					@Override
+					protected void resetComponentsAfterTest(Throwable err) {
+						super.resetComponentsAfterTest(err);
+						// OK- und Uebernehmen-Button (de)aktivieren
+						okButton.setEnabled(err == null);
+						applyButton.setEnabled(err == null);
+					}
+
+					@Override
+					protected boolean acceptOperator(String operator) {
+						// Operatoren durch Methode des Dialogs filtern
+						return super.acceptOperator(operator)
+								&& FeatureLayerFilterDialog.this
+										.acceptOperator(operator);
+					}
+				};
+			} catch (Exception e) {
+				throw new RuntimeException("Unable to create filterPanel:", e);
+			}
+		}
+		return filterPanel;
+	}
+
+	/**
+	 * Kann von Sub-Klassen ueberschrieben werden, um bestimmte Operatoren in
+	 * der Auswahl-Liste auszublenden.
+	 * 
+	 * @param operator
+	 *            ein Operator
+	 * @return immer {@code true}
+	 */
+	protected boolean acceptOperator(String operator) {
+		return true;
+	}
+
+	/**
+	 * Liefert das MapPane, fuer das {@link FeatureSelectedEvent
+	 * FeatureSelectedEvents} ausgeloest werden.
+	 */
+	public JMapPane getMapPane() {
+		return mapPane;
+	}
+
+	/**
+	 * Liefert das Layer, aus dem die {@link FeatureCollection} stammt auf der
+	 * der Filter definiert wird.
+	 */
+	public MapLayer getMapLayer() {
+		return layer;
+	}
+
+	/**
+	 * Liefert die aktuell im Dialog eingegebene Formel.
+	 */
+	public String getFilterRule() {
+		return getFilterPanel().getRule();
+	}
+
+	/**
+	 * Setzt die im Dialog eingegebene Formel und aktualisiert entsprechend die
+	 * Vorschau
+	 * 
+	 * @param rule
+	 *            Formel als String
+	 */
+	public void setFilterRule(String rule) {
+		getFilterPanel().setRule(rule);
+	}
+
+	/**
+	 * Liefert den Filter der aktuell im Dialog eingegebenen Formel.
+	 */
+	public Filter getFilter() {
+		return getFilterPanel().createFilter();
+	}
+
+	/**
+	 * Belegt die Labels und Buttons im Dialog neu
+	 * 
+	 * @param captionMap
+	 *            Map in der die neuen Labels hinterlegt sind.
+	 * @see FeatureLayerFilterDialog
+	 */
+	public void resetCaptions(Map<String, Object> captionMap) {
+		SwingUtil.resetCaption(okButton, captionMap.get(OK_BUTTON));
+		SwingUtil.resetCaption(applyButton, captionMap.get(APPLY_BUTTON));
+		SwingUtil.resetCaption(cancelButton, captionMap.get(CANCEL_BUTTON));
+		Object caption = captionMap.get(DIALOG_TITLE);
+		if (caption != null) {
+			frameTitle = caption.toString();
+			// Damit Layer-Bezeichnung in Titel uebernommen wird, ein
+			// MapLayerEvent
+			// ausloesen
+			layer.setTitle(layer.getTitle());
+		}
+		filterPanel.resetCaptions(captionMap);
+	}
 }

Modified: branches/1.0-gt2-2.6/src/skrueger/geotools/selection/FeatureMapLayerSelectionSynchronizer.java
===================================================================
--- branches/1.0-gt2-2.6/src/skrueger/geotools/selection/FeatureMapLayerSelectionSynchronizer.java	2009-10-02 17:20:00 UTC (rev 426)
+++ branches/1.0-gt2-2.6/src/skrueger/geotools/selection/FeatureMapLayerSelectionSynchronizer.java	2009-10-02 19:38:44 UTC (rev 427)
@@ -318,7 +318,7 @@
 			
 			RenderingHints java2DHints = oldRenderer.getJava2DHints();
 			if (java2DHints != null) {
-				newRenderer.setRendererHints(java2DHints);
+				newRenderer.setJava2DHints(java2DHints);
 			}
 			
 			oldRenderer.setContext(null);



More information about the Schmitzm-commits mailing list