Class TLcyMapManager
- All Implemented Interfaces:
ILcyMapManager,ILcdPropertyChangeSource
ILcyMapManager this class is a collection of
ILcyMapComponents with one map being the active map. It also adds the mutable property
AsynchronousPaintFacade, which makes working with or without asynchronous painting
transparent.
Note that this map manager only deals with ILcyMapComponents, which are 2D.
For other map components, refer to TLcyCombinedMapManager, or a specific
TLcyGenericMapManager for the map component type you are interested in.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddMapComponent(ILcyMapComponent aMapComponent) Adds the given map to thisILcyMapManager.voidaddMapManagerListener(ILcyMapManagerListener aMapManagerListener) Adds the givenILcyMapManagerListenerto thisILcyMapManager.voidaddMapManagerListener(ILcyMapManagerListener aListener, boolean aFireEventForExistingMaps) Adds the givenILcyGeneralMapManagerListenerto thisTLcyGeneralMapManager.voidaddPropertyChangeListener(PropertyChangeListener aPropertyChangeListener) Registers the givenPropertyChangeListenerto be notified when this object's properties change.protected voidfireMapManagerEvent(TLcyMapManagerEvent aMapManagerEvent) Fires the given event to all associated listeners.protected voidfirePropertyChange(String aPropertyName, Object aOldValue, Object aNewValue) Fires a property change event.Returns null, or the activeILcyMapComponent.Returns the facade that is used for painting layers asynchronously.getMapComponent(int aIndex) Returns theILcyMapComponentat the given index.intReturns the number of currently existingILcyMapComponents.voidremoveMapComponent(ILcyMapComponent aMapComponent) Removes the given map from thisILcyMapManager.voidremoveMapManagerListener(ILcyMapManagerListener aMapManagerListener) Removes the givenILcyMapManagerListenerto thisILcyMapManager.voidremovePropertyChangeListener(PropertyChangeListener aPropertyChangeListener) De-registers the givenPropertyChangeListenerfrom receiving property change events for this object.voidsetActiveMapComponent(ILcyMapComponent aActiveMapComponent) Sets the active map component.voidsetAsynchronousPaintFacade(ALcyAsynchronousPaintFacade aAsynchronousPaintFacade) Sets the facade that is used for painting layers asynchronously.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.luciad.lucy.map.ILcyMapManager
getMapComponents
-
Constructor Details
-
TLcyMapManager
public TLcyMapManager()Creates a newTLcyMapManager. There is normally no need to use this constructor, the map manager is usually retrieved usingILcyLucyEnv.getMapManager().
-
-
Method Details
-
addPropertyChangeListener
Description copied from interface:ILcdPropertyChangeSourceRegisters the given
PropertyChangeListenerto be notified when this object's properties change.In case you need to register a listener which keeps a reference to an object with a shorter life-time than this change source, you can use a
ALcdWeakPropertyChangeListenerinstance as property change listener.- Specified by:
addPropertyChangeListenerin interfaceILcdPropertyChangeSource- Parameters:
aPropertyChangeListener- The listener to be notified- See Also:
-
removePropertyChangeListener
Description copied from interface:ILcdPropertyChangeSourceDe-registers the given
PropertyChangeListenerfrom receiving property change events for this object.If the listener was added more than once, it will be notified one less time after being removed. If the listener is
null, or was never added, no exception is thrown and no action is taken.- Specified by:
removePropertyChangeListenerin interfaceILcdPropertyChangeSource- Parameters:
aPropertyChangeListener- the listener that should no longer be notified of changes of this object's properties- See Also:
-
firePropertyChange
Fires a property change event. This method must be invoked after a property has been changed.- Parameters:
aPropertyName- The property name. First letter is lower case, unless there are at least two capitals in the beginning. E.g. for setSelectedIndex, aPropertyName must be "selectedIndex". For setXYWorldReference, aPropertyName must be "XYWorldReference".aOldValue- The old value of the property.aNewValue- The new value of the property.
-
addMapManagerListener
Description copied from interface:ILcyMapManagerAdds the givenILcyMapManagerListenerto thisILcyMapManager.- Specified by:
addMapManagerListenerin interfaceILcyMapManager- Parameters:
aMapManagerListener- The listener to add.
-
addMapManagerListener
public void addMapManagerListener(ILcyMapManagerListener aListener, boolean aFireEventForExistingMaps) Adds the given
ILcyGeneralMapManagerListenerto thisTLcyGeneralMapManager.For every existing map a MAP_COMPONENT_ADDED event will be fired to
aListenerwhenaFireEventForExistingMapsistrue. A use-case for this is when you want to use the listener to perform an action on any existing map and on all future maps.- Parameters:
aListener- The listener to be registeredaFireEventForExistingMaps-truewhenaListenermust be warned about all existing maps,falseotherwise- See Also:
-
removeMapManagerListener
Description copied from interface:ILcyMapManagerRemoves the givenILcyMapManagerListenerto thisILcyMapManager.- Specified by:
removeMapManagerListenerin interfaceILcyMapManager- Parameters:
aMapManagerListener- The listener to remove.
-
getMapComponentCount
public int getMapComponentCount()Description copied from interface:ILcyMapManagerReturns the number of currently existingILcyMapComponents.- Specified by:
getMapComponentCountin interfaceILcyMapManager- Returns:
- the number of currently existing
ILcyMapComponents.
-
getMapComponent
Description copied from interface:ILcyMapManagerReturns theILcyMapComponentat the given index.- Specified by:
getMapComponentin interfaceILcyMapManager- Parameters:
aIndex- the index of theILcyMapComponentto return.- Returns:
- the
ILcyMapComponentat the given index.
-
addMapComponent
Adds the given map to thisILcyMapManager. Whenever a newILcyMapComponentis instantiated, this method needs to be invoked. The responsibility to do this belongs to whoever created the map, for example theTLcyMapAddOn.Once an
ILcdMapComponenthas been removed, it must not be re-added.- Specified by:
addMapComponentin interfaceILcyMapManager- Parameters:
aMapComponent- TheILcyMapComponentto add.- See Also:
-
removeMapComponent
Removes the given map from thisILcyMapManager. Whenever aILcyMapComponentis removed, this method needs to be invoked. The responsibility to do this belongs to whoever disposed the map, for example theTLcyMapAddOn.Once an
ILcdMapComponenthas been removed, it must not be re-added.- Specified by:
removeMapComponentin interfaceILcyMapManager- Parameters:
aMapComponent- TheILcyMapComponentto remove.- See Also:
-
fireMapManagerEvent
Fires the given event to all associated listeners.- Parameters:
aMapManagerEvent- The event to fire.
-
getActiveMapComponent
Description copied from interface:ILcyMapManagerReturns null, or the activeILcyMapComponent. The active map is the one that the user is working on, or has recently worked on. The active map component is typically null if there are no maps.- Specified by:
getActiveMapComponentin interfaceILcyMapManager- Returns:
- null, or the active
ILcyMapComponent.
-
setActiveMapComponent
Description copied from interface:ILcyMapManagerSets the active map component. This property is typically set by the responsible for the maps, for example theTLcyMapAddOn, as the user starts working on a different map. Fires a property change event.- Specified by:
setActiveMapComponentin interfaceILcyMapManager- Parameters:
aActiveMapComponent- The active map component, or null.
-
getAsynchronousPaintFacade
Returns the facade that is used for painting layers asynchronously. The facade allows writing code that can transparently handle both synchronous and asynchronous painting.- Returns:
- a facade for painting layers asynchronously
- See Also:
-
setAsynchronousPaintFacade
Sets the facade that is used for painting layers asynchronously.- Parameters:
aAsynchronousPaintFacade- a facade to be used when painting layers asynchronously- See Also:
-