Revision 40713 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.mapcontext/org.gvsig.fmap.mapcontext.api/src/main/java/org/gvsig/fmap/mapcontext/MapContext.java
MapContext.java | ||
---|---|---|
62 | 62 |
import org.gvsig.fmap.mapcontext.layers.LayerPositionEvent; |
63 | 63 |
import org.gvsig.fmap.mapcontext.layers.operations.Classifiable; |
64 | 64 |
import org.gvsig.fmap.mapcontext.layers.operations.SingleLayer; |
65 |
import org.gvsig.fmap.mapcontext.layers.order.LayerOrderManager; |
|
65 | 66 |
import org.gvsig.fmap.mapcontext.layers.vectorial.GraphicLayer; |
66 | 67 |
import org.gvsig.fmap.mapcontext.rendering.legend.events.listeners.LegendListener; |
67 | 68 |
import org.gvsig.fmap.mapcontext.rendering.strategies.SelectedEnvelopeVisitor; |
... | ... | |
433 | 434 |
* @see #reportDriverExceptions(String, List) |
434 | 435 |
*/ |
435 | 436 |
private ArrayList errorListeners = new ArrayList(); |
437 |
|
|
438 |
|
|
439 |
|
|
436 | 440 |
|
441 |
/** |
|
442 |
* Layer order manager decides position of layers added to this |
|
443 |
* map context. |
|
444 |
*/ |
|
445 |
private LayerOrderManager orderManager = null; |
|
437 | 446 |
|
438 | 447 |
|
448 |
|
|
449 |
|
|
439 | 450 |
// public static ResourceBundle myResourceBundle = |
440 | 451 |
// ResourceBundle.getBundle("FMap"); |
441 | 452 |
|
... | ... | |
819 | 830 |
} |
820 | 831 |
FLayers antLayers = getLayers(); |
821 | 832 |
MapContext ret = new MapContext(vp); |
833 |
|
|
834 |
/* |
|
835 |
* Cloning order manager |
|
836 |
*/ |
|
837 |
LayerOrderManager lom = this.getOrderManager(); |
|
838 |
try { |
|
839 |
lom = (LayerOrderManager) lom.clone(); |
|
840 |
ret.setOrderManager(lom); |
|
841 |
} catch (CloneNotSupportedException e1) { |
|
842 |
logger.error("While cloning order manager", e1); |
|
843 |
} |
|
844 |
|
|
822 | 845 |
FLayers aux = new FLayers();//(ret,null); |
823 | 846 |
aux.setMapContext(ret); |
824 | 847 |
for (int i=0; i < antLayers.getLayersCount(); i++) |
... | ... | |
1577 | 1600 |
|
1578 | 1601 |
//Add the listener for the selection |
1579 | 1602 |
addSelectionListener(layers); |
1603 |
|
|
1604 |
// ====================== |
|
1605 |
if (state.hasValue("orderManager")) { |
|
1606 |
LayerOrderManager lom = (LayerOrderManager) state.get("orderManager"); |
|
1607 |
this.setOrderManager(lom); |
|
1608 |
} |
|
1580 | 1609 |
} |
1581 | 1610 |
|
1582 | 1611 |
private void loadLayers(FLayers lyrs) { |
... | ... | |
1594 | 1623 |
public void saveToState(PersistentState state) throws PersistenceException { |
1595 | 1624 |
state.set("ViewPort", viewPort); |
1596 | 1625 |
state.set("layers", layers); |
1626 |
state.set("orderManager", this.getOrderManager()); |
|
1597 | 1627 |
} |
1598 | 1628 |
|
1599 | 1629 |
public static void registerPersistent() { |
... | ... | |
1612 | 1642 |
definition.addDynFieldObject("layers") |
1613 | 1643 |
.setClassOfValue(FLayers.class) |
1614 | 1644 |
.setMandatory(true); |
1645 |
|
|
1646 |
definition.addDynFieldObject("orderManager") |
|
1647 |
.setClassOfValue(LayerOrderManager.class) |
|
1648 |
.setMandatory(false); |
|
1649 |
|
|
1650 |
|
|
1615 | 1651 |
} |
1616 | 1652 |
|
1617 | 1653 |
protected void doDispose() throws BaseException { |
... | ... | |
1650 | 1686 |
} |
1651 | 1687 |
} |
1652 | 1688 |
} |
1689 |
|
|
1690 |
|
|
1691 |
public void setOrderManager(LayerOrderManager lom) { |
|
1692 |
orderManager = lom; |
|
1693 |
} |
|
1694 |
|
|
1695 |
public LayerOrderManager getOrderManager() { |
|
1696 |
|
|
1697 |
if (orderManager == null) { |
|
1698 |
orderManager = MapContextLocator.getDefaultOrderManager(); |
|
1699 |
} |
|
1700 |
return orderManager; |
|
1701 |
} |
|
1653 | 1702 |
} |
Also available in: Unified diff