|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openstreetmap.josm.gui.layer.Layer
org.openstreetmap.josm.gui.layer.OsmDataLayer
public class OsmDataLayer
A layer that holds OSM data from a specific dataset. The data can be fully edited.
Nested Class Summary | |
---|---|
static interface |
OsmDataLayer.CommandQueueListener
|
private class |
OsmDataLayer.ConsistencyTestAction
|
class |
OsmDataLayer.ConvertToGpxLayerAction
|
static class |
OsmDataLayer.DataCountVisitor
|
Nested classes/interfaces inherited from class org.openstreetmap.josm.gui.layer.Layer |
---|
Layer.LayerAction, Layer.LayerGpxExportAction, Layer.LayerSaveAction, Layer.LayerSaveAsAction, Layer.MultiLayerAction, Layer.SeparatorLayerAction |
Field Summary | |
---|---|
private ConflictCollection |
conflicts
the collection of conflicts detected in this layer |
DataSet |
data
The data behind this layer. |
private static int |
dataLayerCounter
the global counter for created data layers |
private static java.awt.TexturePaint |
hatched
a paint texture for non-downloaded area |
private int |
highlightUpdateCount
|
private boolean |
isChanged
|
static java.lang.String |
REQUIRES_SAVE_TO_DISK_PROP
|
static java.lang.String |
REQUIRES_UPLOAD_TO_SERVER_PROP
|
private boolean |
requiresSaveToFile
|
private boolean |
requiresUploadToServer
|
java.util.List<TestError> |
validationErrors
|
Fields inherited from class org.openstreetmap.josm.gui.layer.Layer |
---|
ICON_SIZE, NAME_PROP, OPACITY_PROP, propertyChangeSupport, VISIBLE_PROP |
Constructor Summary | |
---|---|
OsmDataLayer(DataSet data,
java.lang.String name,
java.io.File associatedFile)
Construct a OsmDataLayer. |
Method Summary | |
---|---|
boolean |
checkSaveConditions()
Checks whether it is ok to launch a save (whether we have data, there is no conflict etc.) |
void |
cleanupAfterUpload(java.util.Collection<IPrimitive> processed)
Clean out the data behind the layer. |
boolean |
containsPoint(LatLon coor)
|
java.io.File |
createAndOpenSaveFileChooser()
Creates a new "Save" dialog for this layer and makes it visible. When the user has chosen a file, checks the file extension, and confirms overwrite if needed. |
static void |
createHatchTexture()
Initialize the hatch pattern used to paint the non-downloaded area |
static java.lang.String |
createNewName()
Replies a new unique name for a data layer |
void |
destroy()
Called, when the layer is removed from the mapview and is going to be destroyed. |
static java.awt.Color |
getBackgroundColor()
|
protected javax.swing.Icon |
getBaseIcon()
|
ConflictCollection |
getConflicts()
replies the set of conflicts currently managed in this layer |
javax.swing.Icon |
getIcon()
TODO: @return Return a dynamic drawn icon of the map data. |
java.lang.Object |
getInfoComponent()
|
javax.swing.Action[] |
getMenuEntries()
Returns list of actions. |
static java.awt.Color |
getOutsideColor()
|
java.lang.String |
getToolTipText()
|
boolean |
isChanged()
Check changed status of layer |
private boolean |
isDataSetEmpty()
Check the data set if it would be empty on save. |
boolean |
isMergable(Layer other)
|
boolean |
isSavable()
Replies the savable state of this layer (i.e if it can be saved through a "File->Save" dialog). |
boolean |
isUploadDiscouraged()
|
void |
mergeFrom(DataSet from)
merges the primitives in dataset from into the dataset of
this layer |
void |
mergeFrom(DataSet from,
ProgressMonitor progressMonitor)
merges the primitives in dataset from into the dataset of
this layer |
void |
mergeFrom(Layer from)
Merges the given layer into this layer. |
void |
onPostDownloadFromServer()
|
void |
onPostLoadFromFile()
Initializes the layer after a successful load of data from a file |
void |
onPostSaveToFile()
Initializes the layer after a successful save of OSM data to a file |
void |
onPostUploadToServer()
Initializes the layer after a successful upload to the server |
void |
paint(java.awt.Graphics2D g,
MapView mv,
Bounds box)
Draw all primitives in this layer but do not draw modified ones (they are drawn by the edit layer). |
void |
processDatasetEvent(AbstractDatasetChangedEvent event)
|
void |
projectionChanged(Projection oldValue,
Projection newValue)
|
boolean |
requiresSaveToFile()
Replies true if the data managed by this layer needs to be saved to a file. |
boolean |
requiresUploadToServer()
Replies true if the data managed by this layer needs to be uploaded to the server because it contains at least one modified primitive. |
void |
selectionChanged(java.util.Collection<? extends OsmPrimitive> newSelection)
Informs the listener that the selection in the dataset has changed. |
protected void |
setRequiresSaveToFile(boolean newValue)
|
protected void |
setRequiresUploadToServer(boolean newValue)
|
void |
setUploadDiscouraged(boolean uploadDiscouraged)
|
GpxData |
toGpxData()
|
static GpxData |
toGpxData(DataSet data,
java.io.File file)
|
void |
visitBoundingBox(BoundingXYVisitor v)
|
protected void |
warnNumNewConflicts(int numNewConflicts)
Warns the user about the number of detected conflicts |
Methods inherited from class org.openstreetmap.josm.gui.layer.Layer |
---|
addPropertyChangeListener, fireOpacityChanged, fireVisibleChanged, getAssociatedFile, getColor, getName, getOpacity, hookUpMapView, isBackgroundLayer, isProjectionSupported, isVisible, nameSupportedProjections, removePropertyChangeListener, setAssociatedFile, setBackgroundLayer, setName, setOpacity, setVisible, toggleVisible |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String REQUIRES_SAVE_TO_DISK_PROP
public static final java.lang.String REQUIRES_UPLOAD_TO_SERVER_PROP
private boolean requiresSaveToFile
private boolean requiresUploadToServer
private boolean isChanged
private int highlightUpdateCount
public java.util.List<TestError> validationErrors
private static int dataLayerCounter
public final DataSet data
private ConflictCollection conflicts
private static java.awt.TexturePaint hatched
Constructor Detail |
---|
public OsmDataLayer(DataSet data, java.lang.String name, java.io.File associatedFile)
Method Detail |
---|
protected void setRequiresSaveToFile(boolean newValue)
protected void setRequiresUploadToServer(boolean newValue)
public static java.lang.String createNewName()
public static java.awt.Color getBackgroundColor()
public static java.awt.Color getOutsideColor()
public static void createHatchTexture()
protected javax.swing.Icon getBaseIcon()
public javax.swing.Icon getIcon()
getIcon
in class Layer
public void paint(java.awt.Graphics2D g, MapView mv, Bounds box)
paint
in interface MapViewPaintable
paint
in class Layer
mv
- The object that can translate GeoPoints to screen coordinates.public java.lang.String getToolTipText()
getToolTipText
in class Layer
public void mergeFrom(Layer from)
Layer
mergeFrom
in class Layer
from
- The layer that get merged into this one. After the merge,
the other layer is not usable anymore and passing to one others
mergeFrom should be one of the last things to do with a layer.public void mergeFrom(DataSet from)
from
into the dataset of
this layer
from
- the source data setpublic void mergeFrom(DataSet from, ProgressMonitor progressMonitor)
from
into the dataset of
this layer
from
- the source data setprotected void warnNumNewConflicts(int numNewConflicts)
numNewConflicts
- the number of detected conflictspublic boolean isMergable(Layer other)
isMergable
in class Layer
other
- The other layer that is tested to be mergable with this.
public void visitBoundingBox(BoundingXYVisitor v)
visitBoundingBox
in class Layer
public void cleanupAfterUpload(java.util.Collection<IPrimitive> processed)
processed
- A list of all objects that were actually uploaded.
May be null
, which means nothing has been uploadedpublic java.lang.Object getInfoComponent()
getInfoComponent
in class Layer
public javax.swing.Action[] getMenuEntries()
Layer
getMenuEntries
in class Layer
public static GpxData toGpxData(DataSet data, java.io.File file)
public GpxData toGpxData()
public boolean containsPoint(LatLon coor)
public ConflictCollection getConflicts()
public boolean requiresUploadToServer()
public boolean requiresSaveToFile()
public void onPostLoadFromFile()
Layer
onPostLoadFromFile
in class Layer
public void onPostDownloadFromServer()
public boolean isChanged()
Layer
isChanged
in class Layer
public void onPostSaveToFile()
public void onPostUploadToServer()
public void destroy()
Layer
destroy
in interface Destroyable
destroy
in class Layer
public void processDatasetEvent(AbstractDatasetChangedEvent event)
processDatasetEvent
in interface DataSetListenerAdapter.Listener
public void selectionChanged(java.util.Collection<? extends OsmPrimitive> newSelection)
SelectionChangedListener
selectionChanged
in interface SelectionChangedListener
newSelection
- The new selection.public void projectionChanged(Projection oldValue, Projection newValue)
projectionChanged
in interface ProjectionChangeListener
projectionChanged
in class Layer
public final boolean isUploadDiscouraged()
public final void setUploadDiscouraged(boolean uploadDiscouraged)
public boolean isSavable()
Layer
isSavable
in class Layer
public boolean checkSaveConditions()
Layer
checkSaveConditions
in class Layer
true
, if it is safe to save.private boolean isDataSetEmpty()
true
, if a save result in an empty data set.public java.io.File createAndOpenSaveFileChooser()
Layer
createAndOpenSaveFileChooser
in class Layer
File
SaveActionBase.createAndOpenSaveFileChooser(java.lang.String, org.openstreetmap.josm.actions.ExtensionFileFilter)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |