source: josm/trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/ChangesetsInActiveDataLayerListModel.java@ 2613

Last change on this file since 2613 was 2613, checked in by Gubaer, 14 years ago

new: global in-memory cache for downloaded changesets
new: toggle dialog for changesets
new: downloading of changesets (currently without changeset content, will follow later)

File size: 2.0 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.dialogs.changeset;
3
4import javax.swing.DefaultListSelectionModel;
5
6import org.openstreetmap.josm.Main;
7import org.openstreetmap.josm.gui.layer.DataChangeListener;
8import org.openstreetmap.josm.gui.layer.Layer;
9import org.openstreetmap.josm.gui.layer.OsmDataLayer;
10import org.openstreetmap.josm.gui.layer.Layer.LayerChangeListener;
11
12public class ChangesetsInActiveDataLayerListModel extends ChangesetListModel implements LayerChangeListener, DataChangeListener{
13
14 public ChangesetsInActiveDataLayerListModel(DefaultListSelectionModel selectionModel) {
15 super(selectionModel);
16 }
17
18 /* ---------------------------------------------------------------------------- */
19 /* Interface LayerChangeListener */
20 /* ---------------------------------------------------------------------------- */
21 public void activeLayerChange(Layer oldLayer, Layer newLayer) {
22 if (oldLayer != null && oldLayer instanceof OsmDataLayer) {
23 OsmDataLayer l = (OsmDataLayer)oldLayer;
24 l.listenerDataChanged.remove(this);
25 }
26 if (newLayer == null) {
27 setChangesets(null);
28 } else if (newLayer instanceof OsmDataLayer){
29 OsmDataLayer l = (OsmDataLayer)newLayer;
30 l.listenerDataChanged.add(this);
31 initFromDataSet(l.data);
32 } else {
33 setChangesets(null);
34 }
35 }
36 public void layerAdded(Layer newLayer) {}
37 public void layerRemoved(Layer oldLayer) {}
38
39 /* ---------------------------------------------------------------------------- */
40 /* Interface DataChangeListener */
41 /* ---------------------------------------------------------------------------- */
42 public void dataChanged(OsmDataLayer l) {
43 if (l == null) return;
44 if (l != Main.main.getEditLayer()) return;
45 initFromDataSet(l.data);
46 }
47}
Note: See TracBrowser for help on using the repository browser.