root / branches / v10 / libraries / libFMap / src / com / iver / cit / gvsig / fmap / layers / order / OrderManager.java @ 28454
History | View | Annotate | Download (2.2 KB)
1 | 22281 | vcaballero | package com.iver.cit.gvsig.fmap.layers.order; |
---|---|---|---|
2 | |||
3 | import com.iver.cit.gvsig.fmap.layers.FLayer; |
||
4 | import com.iver.cit.gvsig.fmap.layers.FLayers; |
||
5 | 28454 | cmartinez | import com.iver.utiles.IPersistance; |
6 | 22281 | vcaballero | import com.iver.utiles.extensionPoints.IExtensionBuilder; |
7 | |||
8 | /**
|
||
9 | * <p>The classes implementing this interface will decide the right position
|
||
10 | * to add a new layer (FLayer) to a layer collection (FLayers) according with
|
||
11 | * its own criterion.</p>
|
||
12 | * <p>Some order managers may study the existing layers in the collection and
|
||
13 | * the new layer's type in order to apply its criterion.</p>
|
||
14 | * <p>For example, an OrderManager
|
||
15 | * may decide that VectorLayers should be placed over Raster Layers.
|
||
16 | * Another OrderManager may decide that a new layer is placed just
|
||
17 | * over the existing layers (this had always been the default gvSIG
|
||
18 | * behaviour).</p>
|
||
19 | *
|
||
20 | * @author Cesar Martinez Izquierdo <cesar.martinez@iver.es>
|
||
21 | *
|
||
22 | */
|
||
23 | 28454 | cmartinez | public interface OrderManager extends IPersistance, Cloneable, IExtensionBuilder { |
24 | 22281 | vcaballero | |
25 | /**
|
||
26 | * <p>Gets the proposed position for the newLayer in the target layer
|
||
27 | * collection. The OrderManager will study the arrangement of the
|
||
28 | * target layer collection and will decide the right position for
|
||
29 | * the new layer, according to its own criterion.</p>
|
||
30 | *
|
||
31 | * @param target The target collection to which <code>newLayer</code>
|
||
32 | * will be added
|
||
33 | * @param newLayer The layer to be inserted in the layer collection
|
||
34 | *
|
||
35 | * @return The proposed position for the new layer
|
||
36 | */
|
||
37 | public int getPosition(FLayers target, FLayer newLayer); |
||
38 | |||
39 | /**
|
||
40 | * <p>Gets the name. The name should identify the
|
||
41 | * policy followed by this OrderManager to sort the layers.</p>
|
||
42 | *
|
||
43 | * @return The name of the OrderManager
|
||
44 | */
|
||
45 | public String getName(); |
||
46 | |||
47 | /**
|
||
48 | * <p>Gets the description. The description should be enough to get
|
||
49 | * an idea of the policy and features of this OrderManager.</p>
|
||
50 | *
|
||
51 | * @return The description of the OrderManager
|
||
52 | */
|
||
53 | public String getDescription(); |
||
54 | |||
55 | /**
|
||
56 | * <p>Gets the code used to register this OrderManager
|
||
57 | * in the ExtensionPoint.</p>
|
||
58 | *
|
||
59 | * @return The code used to register this orderManager in the
|
||
60 | * ExtensionPoint.
|
||
61 | */
|
||
62 | public String getCode(); |
||
63 | |||
64 | public Object clone(); |
||
65 | } |