[Schmitzm-commits] r1505 - in trunk: schmitzm-core/src/main/java/de/schmitzm/swing schmitzm-core/src/main/java/de/schmitzm/swing/log4j schmitzm-gt/src/main/java/de/schmitzm/geotools/gui schmitzm-gt/src/main/java/de/schmitzm/geotools/io
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Sat Mar 5 11:42:53 CET 2011
Author: alfonx
Date: 2011-03-05 11:42:50 +0100 (Sat, 05 Mar 2011)
New Revision: 1505
Modified:
trunk/schmitzm-core/src/main/java/de/schmitzm/swing/HeapBar.java
trunk/schmitzm-core/src/main/java/de/schmitzm/swing/OkButton.java
trunk/schmitzm-core/src/main/java/de/schmitzm/swing/ThinButton.java
trunk/schmitzm-core/src/main/java/de/schmitzm/swing/TranslationsAskJPanel.java
trunk/schmitzm-core/src/main/java/de/schmitzm/swing/log4j/LoggerFrame.java
trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/JMapEditorToolBar.java
trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/LayeredMapFrame.java
trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsServerList.java
trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsSettingsJComboBox.java
Log:
Added some Serialization IDs
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/swing/HeapBar.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/swing/HeapBar.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/swing/HeapBar.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -16,14 +16,20 @@
import de.schmitzm.lang.ResourceProvider;
import de.schmitzm.swing.formatter.MbDecimalFormatter;
+/**
+ * A progress bar shwoing the
+ *
+ * @author stefan
+ *
+ */
public class HeapBar extends JProgressBar {
private static final Logger LOGGER = Logger.getLogger(HeapBar.class);
- protected static ResourceProvider RESOURCE = ResourceProvider.newInstance(LangUtil
- .extendPackagePath(SwingUtil.class,
+ protected static ResourceProvider RESOURCE = ResourceProvider.newInstance(
+ LangUtil.extendPackagePath(SwingUtil.class,
"resource.locales.SwingResourceBundle"), Locale.ENGLISH);
- private Timer updateTimer;
+ private final Timer updateTimer;
String valueAsText = "";
MbDecimalFormatter formatter = new MbDecimalFormatter();
@@ -35,9 +41,9 @@
setMaximum(100);
SwingUtil.setPreferredWidth(this, 200);
-
+
// Clicking the bar triggers a GC
- addMouseListener( new MouseAdapter() {
+ addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
LangUtil.gcTotal();
@@ -75,7 +81,7 @@
int percentaUsed = (int) (used * 100 / heapMaxSize);
if (percentaUsed > 80)
- LOGGER.warn(percentaUsed + "% belegt");
+ LOGGER.warn(percentaUsed + "% belegt"); // i8n
if (percentaUsed > 70) {
if (percentaUsed > 90)
@@ -87,8 +93,9 @@
}
setValue(percentaUsed);
- valueAsText = RESOURCE.getString("HeapMemoryBar.status", formatter
- .format(used), percentaUsed, formatter.format(heapMaxSize));
+ valueAsText = RESOURCE.getString("HeapMemoryBar.status",
+ formatter.format(used), percentaUsed,
+ formatter.format(heapMaxSize));
repaint();
}
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/swing/OkButton.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/swing/OkButton.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/swing/OkButton.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -44,6 +44,8 @@
*/
public class OkButton extends SmallButton {
+ private static final long serialVersionUID = 3402872547623368825L;
+
public static final Icon ICON_OK_SMALL = new ImageIcon(
OkButton.class.getResource("resource/icons/small/ok.png"));
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/swing/ThinButton.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/swing/ThinButton.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/swing/ThinButton.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -9,6 +9,7 @@
public class ThinButton extends JButton {
+ private static final long serialVersionUID = -4587411014968907487L;
public static final float BUTTON_FONT_SIZE = 11;
public static final int BUTTON_FONT_STYLE = Font.PLAIN;
static final Font thinFont = new JLabel().getFont().deriveFont(
@@ -20,7 +21,7 @@
public ThinButton(Action action) {
super(action);
-
+
init();
}
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/swing/TranslationsAskJPanel.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/swing/TranslationsAskJPanel.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/swing/TranslationsAskJPanel.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -8,7 +8,7 @@
public class TranslationsAskJPanel extends JPanel implements Cancellable,
Checkable {
-
+ private static final long serialVersionUID = -7223129731116411227L;
private final String[] backup = new String[50]; // Maximum 50 languages
private final JComponent[] translationEditJPanelsOrJustComponents;
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/swing/log4j/LoggerFrame.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/swing/log4j/LoggerFrame.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/swing/log4j/LoggerFrame.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -64,204 +64,246 @@
* Diese Klasse stellt ein Fenster dar, in dem die aktuell im {@link LogManager}
* registrierten Log4j-Logger als Tabelle dargestellt sind.
* <ol>
- * <li>Logger-Name</li>
- * <li>Level</li>
- * <li>Additivitaet (ob rekursiv auch die Vater-Appender ausgefuehrt werden)</li>
- * <li>Dateinamen der {@link FileAppender}, "CONSOLE" fuer {@link ConsoleAppender}</li>
+ * <li>Logger-Name</li>
+ * <li>Level</li>
+ * <li>Additivitaet (ob rekursiv auch die Vater-Appender ausgefuehrt werden)</li>
+ * <li>Dateinamen der {@link FileAppender}, "CONSOLE" fuer
+ * {@link ConsoleAppender}</li>
* </ol>
- * Ueber einen {@linkplain #refresh() Refresh-Button} kann die Tabelle jederzeit aktualisiert
- * werden. Es koennen <b>keine</b> Logger hinzugefuegt oder entfernt werden.
- * Veraendert werden koennen die Logger nur hinsichtlich ihres Levels und ihrer
- * Addititvitaet.<br>
+ * Ueber einen {@linkplain #refresh() Refresh-Button} kann die Tabelle jederzeit
+ * aktualisiert werden. Es koennen <b>keine</b> Logger hinzugefuegt oder
+ * entfernt werden. Veraendert werden koennen die Logger nur hinsichtlich ihres
+ * Levels und ihrer Addititvitaet.<br>
* Die Eingabe-Maske bietet jedoch die Moeglichkeit, eine Logger-Konfiguration
- * aus einer {@linkplain PropertyConfigurator#doConfigure(String,LoggerRepository) Log4j-Konfigurationsdatei}
- * (neu) zu laden.<br>
+ * aus einer
+ * {@linkplain PropertyConfigurator#doConfigure(String,LoggerRepository)
+ * Log4j-Konfigurationsdatei} (neu) zu laden.<br>
* <b><u>Beachte</u>:</b><br>
- * Beim Neu-Laden werden lediglich die <u>explizit</u> in der Datei spezifizierten
- * Logger-Konfigurationen aktualisiert. Vom der Applikation erzeugte Logger bleiben
- * erhalten (und koennen auch nicht mehr geloescht werden)!
- * Ebenso bleiben alle Logger-Properties unveraendert erhalten, die nicht
- * <u>explizit</u> in der Konfigurationsdatei angegeben sind. Wird z.B. die
- * Additivitaet eines Loggers in der Datei nicht gesetzt, wird sie beim ersten
- * Einlesen per Default auf {@code true} gesetzt. Wird sie durch den Anwender
- * abgeaendert, bleibt diese Einstellung erhalten, auch wenn die Datei neu
- * eingelesen wird.
+ * Beim Neu-Laden werden lediglich die <u>explizit</u> in der Datei
+ * spezifizierten Logger-Konfigurationen aktualisiert. Vom der Applikation
+ * erzeugte Logger bleiben erhalten (und koennen auch nicht mehr geloescht
+ * werden)! Ebenso bleiben alle Logger-Properties unveraendert erhalten, die
+ * nicht <u>explizit</u> in der Konfigurationsdatei angegeben sind. Wird z.B.
+ * die Additivitaet eines Loggers in der Datei nicht gesetzt, wird sie beim
+ * ersten Einlesen per Default auf {@code true} gesetzt. Wird sie durch den
+ * Anwender abgeaendert, bleibt diese Einstellung erhalten, auch wenn die Datei
+ * neu eingelesen wird.
+ *
* @see LoggerConfigurationTableModel
* @see Logger
* @see LogManager
* @see PropertyConfigurator#configure(String)
- * @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 LoggerFrame extends JFrame {
- /** Eingabe-Feld fuer die Log4j-Konfigurationsdatei. */
- protected FileInputOption configFileField = new FileInputOption(null,false);
- /** Butten, ueber den die Log4j-Konfigurationsdatei neu geladen wird.
- * @see #reload() */
- protected JButton reloadButton = new JButton( SwingUtil.RESOURCE.getString("Reload") );
- /** Butten, ueber den die Logger-Tabelle aktualisiert wird.
- * @see #refresh() */
- protected JButton refreshButton = new JButton( SwingUtil.RESOURCE.getString("Refresh") );
- /** Tabelle, in der die Logger angezeigt werden.
- * @see #loggerTableModel */
- protected JTable loggerTable = null;
- /** Datenbasis fuer die Logger-Tabelle. */
- protected LoggerConfigurationTableModel loggerTableModel = null;
+ /** Eingabe-Feld fuer die Log4j-Konfigurationsdatei. */
+ protected FileInputOption configFileField = new FileInputOption(null, false);
+ /**
+ * Butten, ueber den die Log4j-Konfigurationsdatei neu geladen wird.
+ *
+ * @see #reload()
+ */
+ protected JButton reloadButton = new JButton(
+ SwingUtil.RESOURCE.getString("Reload"));
+ /**
+ * Butten, ueber den die Logger-Tabelle aktualisiert wird.
+ *
+ * @see #refresh()
+ */
+ protected JButton refreshButton = new JButton(
+ SwingUtil.RESOURCE.getString("Refresh"));
+ /**
+ * Tabelle, in der die Logger angezeigt werden.
+ *
+ * @see #loggerTableModel
+ */
+ protected JTable loggerTable = null;
+ /** Datenbasis fuer die Logger-Tabelle. */
+ protected LoggerConfigurationTableModel loggerTableModel = null;
- /**
- * Erzeugt ein neues Fenster.
- * @param file vorgeblendete Log4j-Konfigurationsdatei
- */
- public LoggerFrame(File file) {
- super("Log4j Logger configuration");
- initGUI();
- configFileField.setValue(file);
- }
+ /**
+ * Erzeugt ein neues Fenster.
+ *
+ * @param file
+ * vorgeblendete Log4j-Konfigurationsdatei
+ */
+ public LoggerFrame(File file) {
+ super("Log4j Logger configuration");
+ initGUI();
+ configFileField.setValue(file);
+ }
- /**
- * Erzeugt ein neues Fenster.
- */
- public LoggerFrame() {
- this(null);
- }
+ /**
+ * Erzeugt ein neues Fenster.
+ */
+ public LoggerFrame() {
+ this(null);
+ }
- /**
- * Initialisiert das Fenster-Layout.
- */
- protected void initGUI() {
- this.setLayout( new GridBagLayout() );
- this.setSize(400,300);
- // Logger-Tabelle
- loggerTableModel = new LoggerConfigurationTableModel();
- loggerTable = new JTable(loggerTableModel);
- loggerTable.setCellSelectionEnabled(false);
- loggerTable.setRowHeight( new JComboBox().getPreferredSize().height );
- loggerTable.setDefaultRenderer( Enumeration.class, new ComponentRenderer() {
- public Component createRendererComponent( JTable table,
- Object value,
- boolean isSelected,
- boolean hasFocus,
- int row,
- int column) {
+ /**
+ * Initialisiert das Fenster-Layout.
+ */
+ protected void initGUI() {
+ this.setLayout(new GridBagLayout());
+ this.setSize(400, 300);
+ // Logger-Tabelle
+ loggerTableModel = new LoggerConfigurationTableModel();
+ loggerTable = new JTable(loggerTableModel);
+ loggerTable.setCellSelectionEnabled(false);
+ loggerTable.setRowHeight(new JComboBox().getPreferredSize().height);
+ loggerTable.setDefaultRenderer(Enumeration.class,
+ new ComponentRenderer() {
+ @Override
+ public Component createRendererComponent(JTable table,
+ Object value, boolean isSelected, boolean hasFocus,
+ int row, int column) {
- // Appender in String umwandeln
- if ( value instanceof Enumeration )
- value = getStringFromAppenders((Enumeration<Appender>)value);
- return super.createRendererComponent(table,value,isSelected,hasFocus,row,column);
- }
- });
- loggerTable.setDefaultRenderer( Boolean.class, new ComponentRenderer.JCheckBox());
- loggerTable.setDefaultEditor( Boolean.class, new DefaultCellEditor( new JCheckBox() {
- public int getHorizontalAlignment() {
- return this.CENTER;
- }
- public int getVerticalAlignment() {
- return this.CENTER;
- }
- }));
+ // Appender in String umwandeln
+ if (value instanceof Enumeration)
+ value = getStringFromAppenders((Enumeration<Appender>) value);
+ return super.createRendererComponent(table, value,
+ isSelected, hasFocus, row, column);
+ }
+ });
+ loggerTable.setDefaultRenderer(Boolean.class,
+ new ComponentRenderer.JCheckBox());
+ loggerTable.setDefaultEditor(Boolean.class, new DefaultCellEditor(
+ new JCheckBox() {
+ private static final long serialVersionUID = -2478321390196185070L;
- loggerTable.setDefaultRenderer( Level.class, new ComponentRenderer.JComboBox() );
- loggerTable.setDefaultEditor( Level.class, new DefaultCellEditor( new JComboBox( new Object[] {
- Level.ALL,
- Level.DEBUG,
- Level.ERROR,
- Level.FATAL,
- Level.INFO,
- Level.OFF,
- Level.WARN
- })));
+ @Override
+ public int getHorizontalAlignment() {
+ return this.CENTER;
+ }
- // Button-Aktionen
- refreshButton.addActionListener( new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- refresh();
- }
- });
- reloadButton.addActionListener( new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- reload();
- }
- });
+ @Override
+ public int getVerticalAlignment() {
+ return this.CENTER;
+ }
+ }));
- // Componenten in GUI einbinden
- this.getContentPane().add( reloadButton, new GridBagConstraints(0,0,1,1,0.0,0.0,GridBagConstraints.WEST,GridBagConstraints.NONE,new Insets(5,5,5,5),0,0) );
- this.getContentPane().add( configFileField, new GridBagConstraints(1,0,1,1,1.0,0.0,GridBagConstraints.WEST,GridBagConstraints.HORIZONTAL,new Insets(5,5,5,5),0,0) );
- this.getContentPane().add( new JScrollPane( loggerTable ), new GridBagConstraints(0,1,2,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(5,5,5,5),0,0) );
- this.getContentPane().add( refreshButton, new GridBagConstraints(0,2,1,1,0.0,0.0,GridBagConstraints.EAST,GridBagConstraints.NONE,new Insets(5,5,5,5),0,0) );
- }
+ loggerTable.setDefaultRenderer(Level.class,
+ new ComponentRenderer.JComboBox());
+ loggerTable.setDefaultEditor(Level.class, new DefaultCellEditor(
+ new JComboBox(new Object[] { Level.ALL, Level.DEBUG,
+ Level.ERROR, Level.FATAL, Level.INFO, Level.OFF,
+ Level.WARN })));
- /**
- * Aktualisiert die Logger auf Basis der Konfigurationsdatei. Dies entspricht
- * der Aktion des {@linkplain #reloadButton Reload-Button}.
- */
- public void reload() {
- if ( loggerTableModel != null && configFileField.getValue() != null ) {
- try {
- String configFileName = configFileField.getValue().getAbsolutePath();
- PropertyConfigurator.configure(configFileName);
- refresh();
- } catch (Exception err) {
- ExceptionDialog.show(this,err);
- }
- }
- }
+ // Button-Aktionen
+ refreshButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ refresh();
+ }
+ });
+ reloadButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ reload();
+ }
+ });
- /**
- * Aktualisiert die Logger-Tabelle auf Basis der aktuelle geladenen
- * Log4j-Logger. Dies entspricht der Aktion des
- * {@linkplain #refreshButton Refresh-Button}.
- * @see LoggerConfigurationTableModel#refresh()
- */
- public void refresh() {
- if ( loggerTableModel != null ) {
- loggerTableModel.refresh();
- }
- }
+ // Componenten in GUI einbinden
+ this.getContentPane().add(
+ reloadButton,
+ new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
+ GridBagConstraints.WEST, GridBagConstraints.NONE,
+ new Insets(5, 5, 5, 5), 0, 0));
+ this.getContentPane().add(
+ configFileField,
+ new GridBagConstraints(1, 0, 1, 1, 1.0, 0.0,
+ GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+ new Insets(5, 5, 5, 5), 0, 0));
+ this.getContentPane().add(
+ new JScrollPane(loggerTable),
+ new GridBagConstraints(0, 1, 2, 1, 1.0, 1.0,
+ GridBagConstraints.CENTER, GridBagConstraints.BOTH,
+ new Insets(5, 5, 5, 5), 0, 0));
+ this.getContentPane().add(
+ refreshButton,
+ new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0,
+ GridBagConstraints.EAST, GridBagConstraints.NONE,
+ new Insets(5, 5, 5, 5), 0, 0));
+ }
- /**
- * Liefert einen String, der die {@link Appender} eines Loggers darstellt.
- * <ul>
- * <li>{@link FileAppender} werden durch den Dateinamen dargestellt</li>
- * <li>{@link ConsoleAppender} werden durch das Schluesselwort "CONSOLE" dargestellt</li>
- * <li>Alle anderen {@link Appender} werden NICHT dargestellt</li>
- * </ul>
- * Sub-Klassen koennen diese Methode ueberschreiben, um auch andere
- * Appender-Arten darzustellen.
- * @param appenders {@link Appender}-Liste
- */
- public String getStringFromAppenders(Enumeration<Appender> appenders) {
- StringBuffer buffer = new StringBuffer();
- for(;appenders != null && appenders.hasMoreElements();) {
- Appender appender = appenders.nextElement();
- if ( appender instanceof ConsoleAppender )
- buffer.append("CONSOLE");
- if ( appender instanceof FileAppender )
- buffer.append( ((FileAppender)appender).getFile() );
- if ( appenders.hasMoreElements() )
- buffer.append("; ");
- }
- return buffer.toString();
- }
+ /**
+ * Aktualisiert die Logger auf Basis der Konfigurationsdatei. Dies
+ * entspricht der Aktion des {@linkplain #reloadButton Reload-Button}.
+ */
+ public void reload() {
+ if (loggerTableModel != null && configFileField.getValue() != null) {
+ try {
+ String configFileName = configFileField.getValue()
+ .getAbsolutePath();
+ PropertyConfigurator.configure(configFileName);
+ refresh();
+ } catch (Exception err) {
+ ExceptionDialog.show(this, err);
+ }
+ }
+ }
-// /**
-// * Ermittelt einen String, der die {@link Appender} eines Loggers darstellt.
-// * {@link FileAppender} werden durch den Dateinamen dargestellt und
-// * {@link ConsoleAppender} durch das Schluesselwort "CONSOLE".
-// * @param appenders {@link Appender}-Liste
-// */
-// private void setAppendersFromString(String appendersStr, Logger logger) {
-// logger.removeAllAppenders();
-// StringTokenizer tok = new StringTokenizer(appendersStr);
-// for(;tok.hasMoreTokens();) {
-// String appenderStr = tok.nextToken(" ;\t\n");
-// Appender appender = null;
-// if ( appenderStr.equalsIgnoreCase("CONSOLE") )
-// appender = new ConsoleAppender();
-// else {
-// appender = new RollingFileAppender();
-// ((RollingFileAppender)appender).setFile(appenderStr);
-// }
-// logger.addAppender( appender );
-// }
-// }
+ /**
+ * Aktualisiert die Logger-Tabelle auf Basis der aktuelle geladenen
+ * Log4j-Logger. Dies entspricht der Aktion des {@linkplain #refreshButton
+ * Refresh-Button}.
+ *
+ * @see LoggerConfigurationTableModel#refresh()
+ */
+ public void refresh() {
+ if (loggerTableModel != null) {
+ loggerTableModel.refresh();
+ }
+ }
+
+ /**
+ * Liefert einen String, der die {@link Appender} eines Loggers darstellt.
+ * <ul>
+ * <li>{@link FileAppender} werden durch den Dateinamen dargestellt</li>
+ * <li>{@link ConsoleAppender} werden durch das Schluesselwort "CONSOLE"
+ * dargestellt</li>
+ * <li>Alle anderen {@link Appender} werden NICHT dargestellt</li>
+ * </ul>
+ * Sub-Klassen koennen diese Methode ueberschreiben, um auch andere
+ * Appender-Arten darzustellen.
+ *
+ * @param appenders
+ * {@link Appender}-Liste
+ */
+ public String getStringFromAppenders(Enumeration<Appender> appenders) {
+ StringBuffer buffer = new StringBuffer();
+ for (; appenders != null && appenders.hasMoreElements();) {
+ Appender appender = appenders.nextElement();
+ if (appender instanceof ConsoleAppender)
+ buffer.append("CONSOLE");
+ if (appender instanceof FileAppender)
+ buffer.append(((FileAppender) appender).getFile());
+ if (appenders.hasMoreElements())
+ buffer.append("; ");
+ }
+ return buffer.toString();
+ }
+
+ // /**
+ // * Ermittelt einen String, der die {@link Appender} eines Loggers
+ // darstellt.
+ // * {@link FileAppender} werden durch den Dateinamen dargestellt und
+ // * {@link ConsoleAppender} durch das Schluesselwort "CONSOLE".
+ // * @param appenders {@link Appender}-Liste
+ // */
+ // private void setAppendersFromString(String appendersStr, Logger logger) {
+ // logger.removeAllAppenders();
+ // StringTokenizer tok = new StringTokenizer(appendersStr);
+ // for(;tok.hasMoreTokens();) {
+ // String appenderStr = tok.nextToken(" ;\t\n");
+ // Appender appender = null;
+ // if ( appenderStr.equalsIgnoreCase("CONSOLE") )
+ // appender = new ConsoleAppender();
+ // else {
+ // appender = new RollingFileAppender();
+ // ((RollingFileAppender)appender).setFile(appenderStr);
+ // }
+ // logger.addAppender( appender );
+ // }
+ // }
}
Modified: trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/JMapEditorToolBar.java
===================================================================
--- trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/JMapEditorToolBar.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/JMapEditorToolBar.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -311,9 +311,12 @@
getResourceString("NewLayer.layer.type.polygon") });
FeatureTypeInputOption ftOption = new FeatureTypeInputOption(
getResourceString("NewLayer.ftype.title"), false) {
+ private static final long serialVersionUID = 2604570176928671464L;
+
// Checks whether "the_geom" is used as attribute name
// --> not allowed because JEditorPane uses this attribute
// for the default geometry of new layers
+ @Override
public boolean performIsInputValid() {
if (super.performIsInputValid()) {
SimpleFeatureType ft = inpTableModel.createFeatureType();
@@ -495,8 +498,8 @@
}
protected static String getResourceString(String key, Object... params) {
- return GeotoolsGUIUtil.RESOURCE.getString(
- "JMapEditorToolBar." + key, params);
+ return GeotoolsGUIUtil.RESOURCE.getString("JMapEditorToolBar." + key,
+ params);
}
/**
Modified: trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/LayeredMapFrame.java
===================================================================
--- trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/LayeredMapFrame.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/gui/LayeredMapFrame.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -80,197 +80,210 @@
* </ul>
* Um Layer einzufuegen koennen die {@code addLayer(.)}-Methoden des
* {@link #getLayeredMapPane() LayeredMapPane} (dabei wird ein Default-Style
- * verwendet) oder die entsprechenden Methoden des {@link MapContext} ({@code
- * getLayeredMapPane().getMapPane().getContext()}).
+ * verwendet) oder die entsprechenden Methoden des {@link MapContext} (
+ * {@code getLayeredMapPane().getMapPane().getContext()}).
+ *
* @author <a href="mailto:martin.schmitz at koeln.de">Martin Schmitz</a>
* (University of Bonn/Germany)
* @version 1.0
*/
public class LayeredMapFrame extends JFrame {
- private JPanel contentPane = null;
- /** Karten- und Layer-Kontroll-Bereich. */
- protected LayeredMapPane layeredMapPane = null;
- private SelectableXMapPane mapPane = null;
- private MapContext mapContext = null;
- /** Toolbar zur Kontroller der Karten-Aktionen (z.B. Zoom oder Select). */
- protected MapActionControlPane mapControl = null;
- /** Status-Balken. */
- protected MapPaneStatusBar statusBar = null;
- /** Fenster fuer SimpleFeature-Details */
- protected FeatureCollectionFrame featuresFrame = null;
- /**
- * Auswahlfeld fuer das Raster, fuer welches die Koordinaten angezeigt werden.
- */
- protected SelectionInputOption<MapLayer> rasterComboBox = null;
+ private JPanel contentPane = null;
+ /** Karten- und Layer-Kontroll-Bereich. */
+ protected LayeredMapPane layeredMapPane = null;
+ private SelectableXMapPane mapPane = null;
+ private MapContext mapContext = null;
+ /** Toolbar zur Kontroller der Karten-Aktionen (z.B. Zoom oder Select). */
+ protected MapActionControlPane mapControl = null;
+ /** Status-Balken. */
+ protected MapPaneStatusBar statusBar = null;
+ /** Fenster fuer SimpleFeature-Details */
+ protected FeatureCollectionFrame featuresFrame = null;
+ /**
+ * Auswahlfeld fuer das Raster, fuer welches die Koordinaten angezeigt
+ * werden.
+ */
+ protected SelectionInputOption<MapLayer> rasterComboBox = null;
- /**
- * Erzeugt ein neues (leeres) Map-Fenster.
- */
- public LayeredMapFrame() {
- this(null, "");
- }
+ /**
+ * Erzeugt ein neues (leeres) Map-Fenster.
+ */
+ public LayeredMapFrame() {
+ this(null, "");
+ }
- /**
- * Erzeugt ein neues (leeres) Map-Fenster.
- * @param lmp {@link LayeredMapPane} welches zur Anzeige der Karten verwendet
- * wird (wenn {@code null} wird eine neue {@link LayeredMapPane}
- * -Instanz erzeugt)
- */
- public LayeredMapFrame(LayeredMapPane lmp) {
- this(lmp, "");
- }
+ /**
+ * Erzeugt ein neues (leeres) Map-Fenster.
+ *
+ * @param lmp
+ * {@link LayeredMapPane} welches zur Anzeige der Karten
+ * verwendet wird (wenn {@code null} wird eine neue
+ * {@link LayeredMapPane} -Instanz erzeugt)
+ */
+ public LayeredMapFrame(LayeredMapPane lmp) {
+ this(lmp, "");
+ }
- /**
- * Erzeugt ein neues (leeres) Map-Fenster.
- * @param title Titel des Fensters
- */
- public LayeredMapFrame(String title) {
- this(null, title);
- }
+ /**
+ * Erzeugt ein neues (leeres) Map-Fenster.
+ *
+ * @param title
+ * Titel des Fensters
+ */
+ public LayeredMapFrame(String title) {
+ this(null, title);
+ }
- /**
- * Erzeugt ein neues (leeres) Map-Fenster.
- * @param title Titel des Fensters
- * @param lmp {@link LayeredMapPane} welches zur Anzeige der Karten verwendet
- * wird (wenn {@code null} wird eine neue {@link LayeredMapPane}
- * -Instanz erzeugt)
- */
- public LayeredMapFrame(LayeredMapPane lmp, String title) {
- super();
- this.setSize(new Dimension(500, 400));
- this.setTitle(title);
- contentPane = (JPanel) this.getContentPane();
- contentPane.setLayout(new GridBagLayout());
+ /**
+ * Erzeugt ein neues (leeres) Map-Fenster.
+ *
+ * @param title
+ * Titel des Fensters
+ * @param lmp
+ * {@link LayeredMapPane} welches zur Anzeige der Karten
+ * verwendet wird (wenn {@code null} wird eine neue
+ * {@link LayeredMapPane} -Instanz erzeugt)
+ */
+ public LayeredMapFrame(LayeredMapPane lmp, String title) {
+ super();
+ this.setSize(new Dimension(500, 400));
+ this.setTitle(title);
+ contentPane = (JPanel) this.getContentPane();
+ contentPane.setLayout(new GridBagLayout());
- // Karte und Layer-Kontrolle
- layeredMapPane = lmp != null ? lmp : new LayeredMapPane();
- mapPane = layeredMapPane.getMapPane();
- mapContext = mapPane.getMapContext();
- mapControl = new MapActionControlPane(mapPane, MapActionControlPane.VERTICAL);
- mapControl.setFloatable(false);
+ // Karte und Layer-Kontrolle
+ layeredMapPane = lmp != null ? lmp : new LayeredMapPane();
+ mapPane = layeredMapPane.getMapPane();
+ mapContext = mapPane.getMapContext();
+ mapControl = new MapActionControlPane(mapPane,
+ MapActionControlPane.VERTICAL);
+ mapControl.setFloatable(false);
- // unter Layer-Liste eine ComboBox mit Raster-Auswahl einfuegen
- this.rasterComboBox = new SelectionInputOption.Combo<MapLayer>("", false);
- this.mapContext.addMapLayerListListener(new MapLayerListListener() {
- public void layerChanged(MapLayerListEvent e) {
- updateRasterComboBox();
- }
+ // unter Layer-Liste eine ComboBox mit Raster-Auswahl einfuegen
+ this.rasterComboBox = new SelectionInputOption.Combo<MapLayer>("",
+ false);
+ this.mapContext.addMapLayerListListener(new MapLayerListListener() {
+ public void layerChanged(MapLayerListEvent e) {
+ updateRasterComboBox();
+ }
- public void layerMoved(MapLayerListEvent e) {
- }
+ public void layerMoved(MapLayerListEvent e) {
+ }
- public void layerAdded(MapLayerListEvent e) {
- updateRasterComboBox();
- }
+ public void layerAdded(MapLayerListEvent e) {
+ updateRasterComboBox();
+ }
- public void layerRemoved(MapLayerListEvent e) {
- updateRasterComboBox();
- }
- });
- this.layeredMapPane.horSplitPane.getContainer(0).add(rasterComboBox,
- BorderLayout.SOUTH);
+ public void layerRemoved(MapLayerListEvent e) {
+ updateRasterComboBox();
+ }
+ });
+ this.layeredMapPane.horSplitPane.getContainer(0).add(rasterComboBox,
+ BorderLayout.SOUTH);
- // Spezielles RasterPositionLabel in dem die Koordinaten des in der
- // ComboBox ausgewaehlten Rasters angezeigt werden
- RasterPositionLabel rpLabel = new RasterPositionLabel(1) {
- protected MapLayer determineRasterLayer(final SelectableXMapPane mapPane) {
- return rasterComboBox.getValue();
- }
- };
+ // Spezielles RasterPositionLabel in dem die Koordinaten des in der
+ // ComboBox ausgewaehlten Rasters angezeigt werden
+ RasterPositionLabel rpLabel = new RasterPositionLabel(1) {
+ private static final long serialVersionUID = -1847776403111941093L;
- // Status-Zeile mit Raster-Auswahlfeld
- statusBar = new MapPaneStatusBar(mapPane, rpLabel, null);
- statusBar.setBorder(BorderFactory.createCompoundBorder(
- BorderFactory.createLoweredBevelBorder(),
- BorderFactory.createEmptyBorder(
- 2,
- 5,
- 2,
- 5)));
+ protected MapLayer determineRasterLayer(
+ final SelectableXMapPane mapPane) {
+ return rasterComboBox.getValue();
+ }
+ };
- // Status-Zeile mit Raster-Auswahlfeld kombinieren
- JPanel statusBarContainer = new JPanel();
- statusBarContainer.setLayout(new BorderLayout());
- statusBarContainer.add(rasterComboBox, BorderLayout.WEST);
- statusBarContainer.add(statusBar, BorderLayout.CENTER);
+ // Status-Zeile mit Raster-Auswahlfeld
+ statusBar = new MapPaneStatusBar(mapPane, rpLabel, null);
+ statusBar.setBorder(BorderFactory.createCompoundBorder(
+ BorderFactory.createLoweredBevelBorder(),
+ BorderFactory.createEmptyBorder(2, 5, 2, 5)));
- // Root-SplitPane in Fenster einfuegen
- contentPane.add(layeredMapPane, new GridBagConstraints(0, 0, 1, 1, 1.0,
- 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0,
- 0, 0, 0), 0, 0));
- contentPane.add(mapControl, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(2, 0, 0,
- 0), 0, 0));
- contentPane.add(statusBarContainer, new GridBagConstraints(0, 1, 2, 1, 1.0,
- 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(2,
- 0, 0, 0), 0, 0));
+ // Status-Zeile mit Raster-Auswahlfeld kombinieren
+ JPanel statusBarContainer = new JPanel();
+ statusBarContainer.setLayout(new BorderLayout());
+ statusBarContainer.add(rasterComboBox, BorderLayout.WEST);
+ statusBarContainer.add(statusBar, BorderLayout.CENTER);
- // Fenster fuer SimpleFeature-Details
- featuresFrame = new FeatureCollectionFrame(null, true);
- featuresFrame.setSize(new Dimension(400, 200));
- // Ausgewaehlte Features werden im Detail-Frame angezeigt
- mapPane.addMapPaneListener(new JMapPaneListener() {
- public void performMapPaneEvent(XMapPaneEvent e) {
- // Wenn Features ueber die Maus aus der Karte ausgewaehlt werden,
- // oeffnet sich ein Detail-Fenster
- if (e instanceof FeatureSelectedEvent && e.getSourceObject() == mapPane) {
- FeatureSelectedEvent fse = (FeatureSelectedEvent) e;
- FeatureCollection fc = fse.getSelectionResult();
- featuresFrame.setFeatureCollection(fc);
- featuresFrame.setTitle(fse.getSourceLayer().getTitle() + " [" +
- fse.getSelectionRange() + "]");
- if (!featuresFrame.isVisible()) {
- SwingUtil.setRelativeFramePosition(featuresFrame, 1, 0);
- }
- featuresFrame.setVisible(true);
- }
+ // Root-SplitPane in Fenster einfuegen
+ contentPane.add(layeredMapPane, new GridBagConstraints(0, 0, 1, 1, 1.0,
+ 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH,
+ new Insets(0, 0, 0, 0), 0, 0));
+ contentPane.add(mapControl, new GridBagConstraints(1, 0, 1, 1, 0.0,
+ 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH,
+ new Insets(2, 0, 0, 0), 0, 0));
+ contentPane.add(statusBarContainer, new GridBagConstraints(0, 1, 2, 1,
+ 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH,
+ new Insets(2, 0, 0, 0), 0, 0));
- if (e instanceof GridCoverageSelectedEvent) {
- // ...
- }
- }
- });
- }
+ // Fenster fuer SimpleFeature-Details
+ featuresFrame = new FeatureCollectionFrame(null, true);
+ featuresFrame.setSize(new Dimension(400, 200));
+ // Ausgewaehlte Features werden im Detail-Frame angezeigt
+ mapPane.addMapPaneListener(new JMapPaneListener() {
+ public void performMapPaneEvent(XMapPaneEvent e) {
+ // Wenn Features ueber die Maus aus der Karte ausgewaehlt
+ // werden,
+ // oeffnet sich ein Detail-Fenster
+ if (e instanceof FeatureSelectedEvent
+ && e.getSourceObject() == mapPane) {
+ FeatureSelectedEvent fse = (FeatureSelectedEvent) e;
+ FeatureCollection fc = fse.getSelectionResult();
+ featuresFrame.setFeatureCollection(fc);
+ featuresFrame.setTitle(fse.getSourceLayer().getTitle()
+ + " [" + fse.getSelectionRange() + "]");
+ if (!featuresFrame.isVisible()) {
+ SwingUtil.setRelativeFramePosition(featuresFrame, 1, 0);
+ }
+ featuresFrame.setVisible(true);
+ }
- protected void updateRasterComboBox() {
- // Letzte Auswahl merken
- MapLayer lastSelection = (MapLayer) rasterComboBox.getValue();
- // Alle Raster-Layer und Titel ermitteln
- Vector<MapLayer> rasterLayer = new Vector<MapLayer>();
- Vector<String> rasterLayerDesc = new Vector<String>();
- for (MapLayer layer : mapPane.getMapContext().getLayers())
- if (mapPane.isGridCoverageLayer(layer)) {
- rasterLayer.add(layer);
- rasterLayerDesc.add(layer.getTitle());
- }
- // Auswahl neu setzen
- rasterComboBox.setSelectionObjects(rasterLayer.toArray(new MapLayer[0]),
- rasterLayerDesc.toArray());
- // Wenn nur ein Raster zur Verfuegung steht, dieses autom. auswaehlen
- if (rasterLayer.size() == 1)
- lastSelection = rasterLayer.firstElement();
- // Letzte Auswahl setzen
- rasterComboBox.setSelectedItem(lastSelection);
- }
+ if (e instanceof GridCoverageSelectedEvent) {
+ // ...
+ }
+ }
+ });
+ }
- /**
- * Liefert den Karten- und Kontroll-Bereich des Fensters.
- */
- public LayeredMapPane getLayeredMapPane() {
- return this.layeredMapPane;
- }
+ protected void updateRasterComboBox() {
+ // Letzte Auswahl merken
+ MapLayer lastSelection = rasterComboBox.getValue();
+ // Alle Raster-Layer und Titel ermitteln
+ Vector<MapLayer> rasterLayer = new Vector<MapLayer>();
+ Vector<String> rasterLayerDesc = new Vector<String>();
+ for (MapLayer layer : mapPane.getMapContext().getLayers())
+ if (mapPane.isGridCoverageLayer(layer)) {
+ rasterLayer.add(layer);
+ rasterLayerDesc.add(layer.getTitle());
+ }
+ // Auswahl neu setzen
+ rasterComboBox
+ .setSelectionObjects(rasterLayer.toArray(new MapLayer[0]),
+ rasterLayerDesc.toArray());
+ // Wenn nur ein Raster zur Verfuegung steht, dieses autom. auswaehlen
+ if (rasterLayer.size() == 1)
+ lastSelection = rasterLayer.firstElement();
+ // Letzte Auswahl setzen
+ rasterComboBox.setSelectedItem(lastSelection);
+ }
- /**
- * Liefert den Status-Bereich des Fensters.
- */
- public MapPaneStatusBar getStatusBar() {
- return this.statusBar;
- }
+ /**
+ * Liefert den Karten- und Kontroll-Bereich des Fensters.
+ */
+ public LayeredMapPane getLayeredMapPane() {
+ return this.layeredMapPane;
+ }
-// /**
-// * Liefert den Toolbar fuer die Karten-Aktionen.
-// */
-// public MapActionControlPane getToolBar() {
-// return this.mapControl;
-// }
+ /**
+ * Liefert den Status-Bereich des Fensters.
+ */
+ public MapPaneStatusBar getStatusBar() {
+ return this.statusBar;
+ }
+
+ // /**
+ // * Liefert den Toolbar fuer die Karten-Aktionen.
+ // */
+ // public MapActionControlPane getToolBar() {
+ // return this.mapControl;
+ // }
}
Modified: trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsServerList.java
===================================================================
--- trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsServerList.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsServerList.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -2,12 +2,13 @@
import de.schmitzm.io.AbstractServerList;
-
/**
* A list of {@link GtWfsServerSettings}.
*/
public class WfsServerList extends AbstractServerList<GtWfsServerSettings> {
+ private static final long serialVersionUID = -7427716680133033391L;
+
public WfsServerList(GtWfsServerSettings... wfss) {
super(wfss);
}
Modified: trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsSettingsJComboBox.java
===================================================================
--- trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsSettingsJComboBox.java 2011-02-27 01:36:46 UTC (rev 1504)
+++ trunk/schmitzm-gt/src/main/java/de/schmitzm/geotools/io/WfsSettingsJComboBox.java 2011-03-05 10:42:50 UTC (rev 1505)
@@ -5,6 +5,7 @@
public class WfsSettingsJComboBox extends JComboBox {
+ private static final long serialVersionUID = -5930015473877529756L;
private final WfsServerList wfsList;
public WfsSettingsJComboBox(WfsServerList wfsList) {
More information about the Schmitzm-commits
mailing list