/[schmitzm]/trunk/src/skrueger/geotools/MapView.java
ViewVC logotype

Diff of /trunk/src/skrueger/geotools/MapView.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 256 by alfonx, Fri Jul 31 14:43:47 2009 UTC revision 1221 by alfonx, Wed Nov 3 13:29:17 2010 UTC
# Line 25  Line 25 
25   *   *
26   * Contributors:   * Contributors:
27   *     Martin O. J. Schmitz - initial API and implementation   *     Martin O. J. Schmitz - initial API and implementation
28   *     Stefan A. Krüger - additional utility classes   *     Stefan A. Tzeggai - additional utility classes
29   ******************************************************************************/   ******************************************************************************/
30  package skrueger.geotools;  package skrueger.geotools;
31    
# Line 37  import javax.swing.JComponent; Line 37  import javax.swing.JComponent;
37  import javax.swing.JPanel;  import javax.swing.JPanel;
38  import javax.swing.JSplitPane;  import javax.swing.JSplitPane;
39    
40    import net.miginfocom.swing.MigLayout;
41    
42  import org.apache.log4j.Logger;  import org.apache.log4j.Logger;
 import org.geotools.renderer.lite.StreamingRenderer;  
 import org.geotools.renderer.shape.TransitionShapefileRenderer;  
43    
44  import schmitzm.geotools.gui.GeoMapPane;  import schmitzm.geotools.gui.GeoMapPane;
 import schmitzm.geotools.gui.JMapPane;  
45  import schmitzm.geotools.gui.MapContextControlPane;  import schmitzm.geotools.gui.MapContextControlPane;
46  import schmitzm.geotools.gui.MapPaneStatusBar;  import schmitzm.geotools.gui.MapPaneStatusBar;
47    import schmitzm.geotools.gui.SelectableXMapPane;
48  import schmitzm.geotools.styling.ColorMapManager;  import schmitzm.geotools.styling.ColorMapManager;
49    
50  /**  /**
51   * Achtung! Dieser code ist verwuestet TODO DOKU und initialize schöner machen.   * TODO Dokument
  * SK  
52   */   */
53  public class MapView extends JPanel {  public class MapView extends JPanel {
54          private static final Logger LOGGER = Logger.getLogger(MapView.class);          private static final Logger LOGGER = Logger.getLogger(MapView.class);
# Line 58  public class MapView extends JPanel { Line 57  public class MapView extends JPanel {
57                          JSplitPane.HORIZONTAL_SPLIT);                          JSplitPane.HORIZONTAL_SPLIT);
58    
59          protected MapPaneStatusBar statusBar = null;          protected MapPaneStatusBar statusBar = null;
   
60          /**          /**
61           * Komponente, in der die Karten, der Massstab und das Koordinaten-Raster           * Komponente, in der die Karten, der Massstab und das Koordinaten-Raster
62           * dargestellt werden.           * dargestellt werden.
63           */           */
   
64          protected final GeoMapPane geoMapPane = new GeoMapPane();          protected final GeoMapPane geoMapPane = new GeoMapPane();
65    
66          private MapPaneToolBar jToolBar;          private MapPaneToolBar jToolBar;
# Line 71  public class MapView extends JPanel { Line 68  public class MapView extends JPanel {
68          /**          /**
69           * Creates a new {@link MapView}. A {@link MapView} is a combination of a           * Creates a new {@link MapView}. A {@link MapView} is a combination of a
70           * {@link GeoMapPane}, a {@link MapContextManagerInterface} on the left, and           * {@link GeoMapPane}, a {@link MapContextManagerInterface} on the left, and
71           * some buttons floating over the {@link JMapPane}           * some buttons floating over the {@link SelectableXMapPane}
72           */           */
73          public MapView(Component parentGui, MapPaneToolBar toolBar) {          public MapView(Component parentGui, MapPaneToolBar toolBar) {
74                  super(new BorderLayout());                  super(new BorderLayout());
75                  // Call initialize() by yourself afterwards.                  // Call initialize() by yourself afterwards.
76                  // Needed because variables for the overwritten methods                  // Needed because variables for the overwritten methods
77                  // are not yet set.                  // are not yet set.
                 getGeoMapPane().getMapPane().setWaitCursorComponent(parentGui);  
                 if (toolBar == null)  
                         toolBar = new MapPaneToolBar(getMapPane());  
78                  jToolBar = toolBar;                  jToolBar = toolBar;
79    
80                    // By default the MapPane will render with antialiasing on
81                    getGeoMapPane().getMapPane().setAntiAliasing(true);
82          }          }
83    
84          /**          /**
85           * Creates a new {@link MapView}. A {@link MapView} is a combination of a           * Creates a new {@link MapView}. A {@link MapView} is a combination of a
86           * {@link GeoMapPane}, a {@link MapContextManagerInterface} on the left, and           * {@link GeoMapPane}, a {@link MapContextManagerInterface} on the left, and
87           * some buttons floating over the {@link JMapPane}           * some buttons floating over the {@link SelectableXMapPane}
88           */           */
89          public MapView(Component parentGui) {          public MapView(Component parentGui) {
90                  this(parentGui, null);                  this(parentGui, null);
# Line 108  public class MapView extends JPanel { Line 105  public class MapView extends JPanel {
105    
106                  // Status-Line to show Coordinates and Rastervalues.                  // Status-Line to show Coordinates and Rastervalues.
107                  statusBar = new MapPaneStatusBar(getGeoMapPane().getMapPane());                  statusBar = new MapPaneStatusBar(getGeoMapPane().getMapPane());
108                  statusBar.setBorder(BorderFactory.createCompoundBorder(BorderFactory                  statusBar.setBorder(BorderFactory.createCompoundBorder(
109                                  .createLoweredBevelBorder(), BorderFactory.createEmptyBorder(2,                                  BorderFactory.createLoweredBevelBorder(),
110                                  5, 2, 5)));                                  BorderFactory.createEmptyBorder(2, 5, 2, 5)));
111                  this.add(statusBar, BorderLayout.SOUTH);                  this.add(statusBar, BorderLayout.SOUTH);
112    
113                  /**                  /**
# Line 127  public class MapView extends JPanel { Line 124  public class MapView extends JPanel {
124                   * To the right side we now add a JPanel that consists of a toolbar and                   * To the right side we now add a JPanel that consists of a toolbar and
125                   * a gmp                   * a gmp
126                   */                   */
127                  JPanel newRight = new JPanel(new BorderLayout());                  JPanel newRight = new JPanel(new MigLayout("center, wrap 1", "[grow]",
128                  newRight.add(getToolBar(), BorderLayout.NORTH);                                  "[][grow]"));
129                  newRight.add(getGeoMapPane(), BorderLayout.CENTER);                  newRight.add(getToolBar(), "split 2");
130                    newRight.add(new CrsLabel(getGeoMapPane().getMapPane()), "align right");
131                    newRight.add(getGeoMapPane(), "growx, growy");
132                  getSplitPane().add(newRight);                  getSplitPane().add(newRight);
133    
134                  this.add(getSplitPane(), BorderLayout.CENTER);                  this.add(getSplitPane(), BorderLayout.CENTER);
135    
136          }          }
137    
138          /**          /**
139           * Returns the tool bar which controls the active mouse actions on the map.           * Returns the tool bar which controls the active mouse actions on the map.
140           *           *
141           * @return           * @return never <code>null</code>, will rather create a default
142           */           */
143          public MapPaneToolBar getToolBar() {          public MapPaneToolBar getToolBar() {
144                    if (jToolBar == null) {
145                            jToolBar = new MapPaneToolBar(getMapPane());
146                    }
147                  return jToolBar;                  return jToolBar;
148          }          }
149    
# Line 225  public class MapView extends JPanel { Line 228  public class MapView extends JPanel {
228          /**          /**
229           * Liefert den Karten-Bereich der Komponente.           * Liefert den Karten-Bereich der Komponente.
230           */           */
231          public final JMapPane getMapPane() {          public final SelectableXMapPane getMapPane() {
232                  return getGeoMapPane().getMapPane();                  return getGeoMapPane().getMapPane();
233          }          }
234    
# Line 237  public class MapView extends JPanel { Line 240  public class MapView extends JPanel {
240                  return jToolBar.getSelectedTool();                  return jToolBar.getSelectedTool();
241          }          }
242    
243            /**
244             * Help the garbage collection
245             */
246            public void dispose() {
247                    if (geoMapPane != null)
248                            geoMapPane.dispose();
249            }
250    
251  }  }

Legend:
Removed from v.256  
changed lines
  Added in v.1221

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26