1
2
3
4
5
6
7
8
9
10 package nl.tudelft.simulation.dsol.animation.D2;
11
12 import java.rmi.RemoteException;
13
14 /***
15 * This interface provides the functionality that editable animation objects
16 * must implement.
17 * <p>
18 * (c) copyright 2003 <a href="http://www.simulation.tudelft.nl">Delft
19 * University of Technology </a>, the Netherlands. <br>
20 * See for project information <a
21 * href="http://www.simulation.tudelft.nl">www.simulation.tudelft.nl </a> <br>
22 * License of use: <a href="http://www.gnu.org/copyleft/gpl.html">General Public
23 * License (GPL) </a>, no warranty <br>
24 *
25 * @author <a href="http://www.tbm.tudelft.nl/webstaf/peterja/index.htm">Peter
26 * Jacobs </a>
27 * @version 1.2 Aug 3, 2004
28 * @since 1.4
29 */
30 public interface EditableRenderable2DInterface extends Renderable2DInterface
31 {
32 /***
33 * Returns whether this shape is closed or open. For example an area is a
34 * closed shape while a trajectory is open (has ends).
35 *
36 * @return true or false
37 * @throws RemoteException
38 * RemoteException
39 */
40 boolean isClosedShape() throws RemoteException;
41
42 /***
43 * Is the user allowed to move this editable?
44 *
45 * @return True or false
46 * @throws RemoteException
47 * RemoteException
48 */
49 boolean allowMove() throws RemoteException;
50
51 /***
52 * Is the user allowed to rotate this editable?
53 *
54 * @return True or false
55 * @throws RemoteException
56 * RemoteException
57 */
58 boolean allowRotate() throws RemoteException;
59
60 /***
61 * Is the user allowed to scale this editable?
62 *
63 * @return True or false
64 * @throws RemoteException
65 * RemoteException
66 */
67 boolean allowScale() throws RemoteException;
68
69 /***
70 * Is the user allowed to edit individual points of this editable?
71 *
72 * @return True or false
73 * @throws RemoteException
74 * RemoteException
75 */
76 boolean allowEditPoints() throws RemoteException;
77
78 /***
79 * Is the user allowed to delete this object?
80 *
81 * @return True or false
82 * @throws RemoteException
83 * RemoteException
84 */
85 boolean allowDelete() throws RemoteException;
86
87 /***
88 * Is the user allowed to add or delete points of this editable?
89 *
90 * @return True or false
91 * @throws RemoteException
92 * RemoteException
93 */
94 boolean allowAddOrDeletePoints() throws RemoteException;
95
96 /***
97 * Get the maximum allowed number of points for this editable
98 *
99 * @return Maximum number of points
100 * @throws RemoteException
101 * RemoteException
102 */
103 int getMaxNumberOfPoints() throws RemoteException;
104
105 /***
106 * Get the minimum allowed number of points for this editable
107 *
108 * @return Minimum number of points
109 * @throws RemoteException
110 * RemoteException
111 */
112 int getMinNumberOfPoints() throws RemoteException;
113 }