View Javadoc

1   /*
2    * @(#) EditableRenderable2DInterface.java Aug 3, 2004
3    * 
4    * Copyright (c) 2003 Delft University of Technology Jaffalaan 5, 2628 BX Delft,
5    * the Netherlands All rights reserved.
6    * 
7    * This software is proprietary information of Delft University of Technology
8    * The code is published under the General Public License
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 }