Revision 2584
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.api/src/main/java/org/gvsig/raster/swing/gcanvas/GCanvas.java | ||
---|---|---|
25 | 25 |
import java.awt.Graphics; |
26 | 26 |
import java.awt.event.MouseListener; |
27 | 27 |
import java.awt.event.MouseMotionListener; |
28 |
import java.util.ArrayList;
|
|
28 |
import java.util.List; |
|
29 | 29 |
|
30 | 30 |
/** |
31 | 31 |
* Canvas where graphic elements are painted |
32 | 32 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
33 | 33 |
*/ |
34 |
@SuppressWarnings("unchecked") |
|
35 | 34 |
public interface GCanvas extends MouseListener, MouseMotionListener { |
36 | 35 |
/** |
37 | 36 |
* Creates a border layer to the graphic canvas |
... | ... | |
132 | 131 |
* @param c1 |
133 | 132 |
* @return ArrayList de DrawableElements |
134 | 133 |
*/ |
135 |
public ArrayList<DrawableElement> getDrawableElements(Class c1);
|
|
134 |
public List<DrawableElement> getDrawableElements(Class<?> c1);
|
|
136 | 135 |
|
137 | 136 |
/** |
138 | 137 |
* Reemplaza un elemento dibujable si encuentra uno del tipo especificado en el |
... | ... | |
140 | 139 |
* @param element |
141 | 140 |
* @param c1 |
142 | 141 |
*/ |
143 |
public void replaceDrawableElement(DrawableElement element, Class cl); |
|
142 |
public void replaceDrawableElement(DrawableElement element, Class<?> cl);
|
|
144 | 143 |
|
145 | 144 |
/** |
146 | 145 |
* Elimina un elemento dibujable |
147 | 146 |
* @param Class clase del elemento a eliminar |
148 | 147 |
*/ |
149 |
public void removeDrawableElement(Class cl); |
|
148 |
public void removeDrawableElement(Class<?> cl);
|
|
150 | 149 |
|
151 | 150 |
/** |
152 | 151 |
* Asigna una lista de elementos dibujables |
153 | 152 |
* @return |
154 | 153 |
*/ |
155 |
public void setDrawableElements(ArrayList<DrawableElement> list);
|
|
154 |
public void setDrawableElements(List<DrawableElement> list); |
|
156 | 155 |
|
157 | 156 |
/** |
158 | 157 |
* Inicializa el fondo y dibuja el gr?fico sobre el canvas. |
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/DefaultInfoLayer.java | ||
---|---|---|
27 | 27 |
import java.awt.Graphics2D; |
28 | 28 |
import java.awt.RenderingHints; |
29 | 29 |
import java.awt.geom.Rectangle2D; |
30 |
import java.util.ArrayList;
|
|
30 |
import java.util.List; |
|
31 | 31 |
|
32 | 32 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
33 | 33 |
import org.gvsig.raster.swing.gcanvas.InfoLayer; |
34 | 34 |
/** |
35 | 35 |
* Capa para GCanvas que muestra el maximo y minimo de una banda |
36 | 36 |
* |
37 |
* @version 04/03/2008 |
|
38 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
|
37 |
* @author BorSanZa - Borja S?nchez Zamorano |
|
39 | 38 |
*/ |
40 | 39 |
public class DefaultInfoLayer extends InfoLayer { |
41 | 40 |
private Color color = null; |
... | ... | |
107 | 106 |
(int) ((Component)canvas).getHeight() - canvas.getCanvasMinX()); |
108 | 107 |
} |
109 | 108 |
|
110 |
ArrayList<DrawableElement> list = canvas.getDrawableElements(DefaultMinMaxLines.class);
|
|
109 |
List<DrawableElement> list = canvas.getDrawableElements(DefaultMinMaxLines.class); |
|
111 | 110 |
if (list.size() > 0) { |
112 | 111 |
DefaultMinMaxLines minMaxLines = (DefaultMinMaxLines) list.get(0); |
113 | 112 |
|
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/function/DefaultSquareRootPowLine.java | ||
---|---|---|
25 | 25 |
import java.awt.Component; |
26 | 26 |
import java.awt.Cursor; |
27 | 27 |
import java.awt.event.MouseEvent; |
28 |
import java.util.ArrayList;
|
|
28 |
import java.util.List; |
|
29 | 29 |
|
30 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
|
30 | 31 |
import org.gvsig.raster.swing.gcanvas.SquareRootPowLine; |
31 | 32 |
import org.gvsig.raster.swing.impl.DefaultRasterSwingManager; |
32 | 33 |
import org.gvsig.raster.swing.impl.canvas.layer.DefaultInfoLayer; |
... | ... | |
40 | 41 |
* -1.0: Para una funcion cuadrada |
41 | 42 |
* 0.0: Para una funcion lineal |
42 | 43 |
* |
43 |
* @version 02/04/2008 |
|
44 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
|
44 |
* @author BorSanZa - Borja S?nchez Zamorano |
|
45 | 45 |
*/ |
46 | 46 |
@SuppressWarnings("unchecked") |
47 | 47 |
public class DefaultSquareRootPowLine extends DefaultStraightLine implements SquareRootPowLine { |
... | ... | |
74 | 74 |
*/ |
75 | 75 |
private void setInfoPoint(Double perc) { |
76 | 76 |
if (canvas != null) { |
77 |
ArrayList list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
77 |
List<DrawableElement> list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
78 | 78 |
if (list.size() > 0) { |
79 | 79 |
DefaultInfoLayer infoLayer = (DefaultInfoLayer) list.get(0); |
80 | 80 |
|
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/function/DefaultLogaritmicExponentialLine.java | ||
---|---|---|
25 | 25 |
import java.awt.Component; |
26 | 26 |
import java.awt.Cursor; |
27 | 27 |
import java.awt.event.MouseEvent; |
28 |
import java.util.ArrayList;
|
|
28 |
import java.util.List; |
|
29 | 29 |
|
30 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
|
30 | 31 |
import org.gvsig.raster.swing.gcanvas.LogaritmicExponentialLine; |
31 | 32 |
import org.gvsig.raster.swing.impl.DefaultRasterSwingManager; |
32 | 33 |
import org.gvsig.raster.swing.impl.canvas.layer.DefaultInfoLayer; |
... | ... | |
40 | 41 |
* -1.0: Para una funcion exponencial |
41 | 42 |
* 0.0: Para una funcion lineal |
42 | 43 |
* |
43 |
* @version 02/04/2008 |
|
44 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
|
44 |
* @author BorSanZa - Borja S?nchez Zamorano |
|
45 | 45 |
*/ |
46 | 46 |
public class DefaultLogaritmicExponentialLine extends DefaultStraightLine implements LogaritmicExponentialLine { |
47 | 47 |
/** |
... | ... | |
77 | 77 |
* Cuando el porcentaje es menor a 0 siempre estamos en la exponencial |
78 | 78 |
* @param perc |
79 | 79 |
*/ |
80 |
@SuppressWarnings("unchecked") |
|
81 | 80 |
private void setInfoPoint(Double perc) { |
82 | 81 |
if (canvas != null) { |
83 |
ArrayList list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
82 |
List<DrawableElement> list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
84 | 83 |
if (list.size() > 0) { |
85 | 84 |
DefaultInfoLayer infoLayer = (DefaultInfoLayer) list.get(0); |
86 | 85 |
|
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/function/DefaultStraightLine.java | ||
---|---|---|
31 | 31 |
import java.awt.event.MouseEvent; |
32 | 32 |
import java.awt.image.MemoryImageSource; |
33 | 33 |
import java.util.ArrayList; |
34 |
import java.util.List; |
|
34 | 35 |
|
36 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
|
35 | 37 |
import org.gvsig.raster.swing.gcanvas.StraightLine; |
36 | 38 |
import org.gvsig.raster.swing.impl.canvas.DefaultGCanvas; |
37 | 39 |
import org.gvsig.raster.swing.impl.canvas.layer.DefaultInfoLayer; |
... | ... | |
39 | 41 |
* Representa una linea recta con puntos de arrastre para la ecualizaci?n de |
40 | 42 |
* un histograma y realce lineales y dencity slicing. |
41 | 43 |
* |
42 |
* 14-oct-2007 |
|
43 | 44 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
44 | 45 |
*/ |
45 |
@SuppressWarnings("unchecked") |
|
46 | 46 |
public class DefaultStraightLine extends DefaultBaseFunction implements StraightLine { |
47 | 47 |
|
48 | 48 |
/** |
49 | 49 |
* Representa un punto seleccionado sobre el canvas. Este es |
50 | 50 |
* dibujado como un peque?o cuadrado. |
51 | 51 |
* |
52 |
* 14-oct-2007 |
|
53 | 52 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
54 | 53 |
*/ |
55 | 54 |
class Square { |
... | ... | |
172 | 171 |
/** |
173 | 172 |
* Lista de cuadrados que intersectan con la recta |
174 | 173 |
*/ |
175 |
protected ArrayList listSquare = new ArrayList();
|
|
176 |
private int pointDragged = -1; |
|
177 |
private Cursor transparentCursor = null; |
|
178 |
private boolean showSquares = true; |
|
179 |
private int border = 2; |
|
174 |
protected List<Square> listSquare = new ArrayList<Square>();
|
|
175 |
private int pointDragged = -1;
|
|
176 |
private Cursor transparentCursor = null;
|
|
177 |
private boolean showSquares = true;
|
|
178 |
private int border = 2;
|
|
180 | 179 |
|
181 | 180 |
/** |
182 | 181 |
* Constructor. Asigna el color |
... | ... | |
193 | 192 |
addSquare(1.0D, 1.0D); |
194 | 193 |
} |
195 | 194 |
|
196 |
/* |
|
197 |
* (non-Javadoc) |
|
198 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#clearSquares() |
|
199 |
*/ |
|
200 | 195 |
public void clearSquares() { |
201 | 196 |
listSquare.clear(); |
202 | 197 |
} |
203 | 198 |
|
204 |
/* |
|
205 |
* (non-Javadoc) |
|
206 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#addSquare(double, double) |
|
207 |
*/ |
|
208 | 199 |
public void addSquare(double x, double y) { |
209 | 200 |
listSquare.add(new Square(x, y)); |
210 | 201 |
} |
... | ... | |
258 | 249 |
* @param square |
259 | 250 |
*/ |
260 | 251 |
private void setInfoPoint(int point) { |
261 |
ArrayList list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
252 |
List<DrawableElement> list = canvas.getDrawableElements(DefaultInfoLayer.class);
|
|
262 | 253 |
if (list.size() > 0) { |
263 | 254 |
DefaultInfoLayer infoLayer = (DefaultInfoLayer) list.get(0); |
264 | 255 |
if (point != -1) { |
... | ... | |
425 | 416 |
* Variable para saber si se ha visualizado alguna informacion |
426 | 417 |
*/ |
427 | 418 |
boolean last = false; |
428 |
/* |
|
429 |
* (non-Javadoc) |
|
430 |
* @see org.gvsig.raster.beans.canvas.DrawableElement#mouseMoved(java.awt.event.MouseEvent) |
|
431 |
*/ |
|
419 |
|
|
432 | 420 |
public boolean mouseMoved(MouseEvent e) { |
433 | 421 |
for (int i = 0; i < listSquare.size(); i++) { |
434 | 422 |
if (((Square)listSquare.get(i)).isInside(e.getPoint())) { |
... | ... | |
447 | 435 |
return true; |
448 | 436 |
} |
449 | 437 |
|
450 |
/* |
|
451 |
* (non-Javadoc) |
|
452 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#getInValues(double, double) |
|
453 |
*/ |
|
454 | 438 |
public double[] getInValues(double min, double max) { |
455 | 439 |
double[] in = getPercentInValues(); |
456 | 440 |
for (int i = 0; i < in.length; i++) |
... | ... | |
458 | 442 |
return in; |
459 | 443 |
} |
460 | 444 |
|
461 |
/* |
|
462 |
* (non-Javadoc) |
|
463 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#getOutValues() |
|
464 |
*/ |
|
465 | 445 |
public int[] getOutValues() { |
466 | 446 |
double[] values = getPercentOutValues(); |
467 | 447 |
int[] out = new int[values.length]; |
... | ... | |
470 | 450 |
return out; |
471 | 451 |
} |
472 | 452 |
|
473 |
/* |
|
474 |
* (non-Javadoc) |
|
475 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#getPercentInValues() |
|
476 |
*/ |
|
477 | 453 |
public double[] getPercentInValues() { |
478 | 454 |
double[] in = new double[listSquare.size() + 2]; |
479 | 455 |
for (int i = 0; i < listSquare.size(); i++) { |
... | ... | |
485 | 461 |
return in; |
486 | 462 |
} |
487 | 463 |
|
488 |
/* |
|
489 |
* (non-Javadoc) |
|
490 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#getPercentOutValues() |
|
491 |
*/ |
|
492 | 464 |
public double[] getPercentOutValues() { |
493 | 465 |
double[] out = new double[listSquare.size() + 2]; |
494 | 466 |
for (int i = 0; i < listSquare.size(); i++) { |
... | ... | |
526 | 498 |
return (1.0D - ((double) (pixel - canvas.getCanvasMinY() - border) / div)); |
527 | 499 |
} |
528 | 500 |
|
529 |
/* |
|
530 |
* (non-Javadoc) |
|
531 |
* @see org.gvsig.raster.swing.gcanvas.StraightLine#getFunctionType() |
|
532 |
*/ |
|
533 | 501 |
public int getFunctionType() { |
534 | 502 |
return 0; |
535 | 503 |
} |
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/function/DefaultBaseFunction.java | ||
---|---|---|
22 | 22 |
package org.gvsig.raster.swing.impl.canvas.layer.function; |
23 | 23 |
|
24 | 24 |
import java.awt.Graphics; |
25 |
import java.util.ArrayList;
|
|
25 |
import java.util.List; |
|
26 | 26 |
|
27 | 27 |
import org.gvsig.raster.swing.gcanvas.BaseFunction; |
28 | 28 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
... | ... | |
31 | 31 |
* Todo algoritmo que queramos que implemente un realce, debe heredar de esta base |
32 | 32 |
* para poder distinguir los drawables genericos de los algoritmos. |
33 | 33 |
* |
34 |
* @version 03/03/2008 |
|
35 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
|
34 |
* @author BorSanZa - Borja S?nchez Zamorano |
|
36 | 35 |
*/ |
37 | 36 |
public abstract class DefaultBaseFunction extends DrawableElement implements BaseFunction { |
38 | 37 |
protected double minx = 0.0D; |
... | ... | |
55 | 54 |
this.maxx = maxx; |
56 | 55 |
} |
57 | 56 |
|
58 |
/* |
|
59 |
* (non-Javadoc) |
|
60 |
* @see org.gvsig.raster.beans.canvas.DrawableElement#paint(java.awt.Graphics) |
|
61 |
*/ |
|
62 | 57 |
protected void paint(Graphics g) { |
63 |
ArrayList<DrawableElement> elements = canvas.getDrawableElements(DefaultMinMaxLines.class);
|
|
58 |
List<DrawableElement> elements = canvas.getDrawableElements(DefaultMinMaxLines.class); |
|
64 | 59 |
if (elements.size() > 0) { |
65 | 60 |
DefaultMinMaxLines minMaxLines = (DefaultMinMaxLines) elements.get(0); |
66 | 61 |
setMinX(minMaxLines.getMinDistance()); |
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/layer/DefaultMinMaxLines.java | ||
---|---|---|
29 | 29 |
import java.awt.Graphics2D; |
30 | 30 |
import java.awt.Stroke; |
31 | 31 |
import java.awt.event.MouseEvent; |
32 |
import java.util.ArrayList;
|
|
32 |
import java.util.List; |
|
33 | 33 |
|
34 | 34 |
import javax.swing.SwingUtilities; |
35 | 35 |
|
36 |
import org.gvsig.raster.swing.gcanvas.DrawableElement; |
|
36 | 37 |
import org.gvsig.raster.swing.gcanvas.MinMaxLines; |
37 | 38 |
import org.gvsig.raster.swing.impl.canvas.DefaultGCanvas; |
38 | 39 |
import org.gvsig.raster.swing.impl.canvas.layer.function.DefaultBaseFunction; |
... | ... | |
40 | 41 |
/** |
41 | 42 |
* Representa dos l?neas rectas que se?alizan el m?ximo y el m?nimo. |
42 | 43 |
* |
43 |
* 14-oct-2007 |
|
44 | 44 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
45 | 45 |
*/ |
46 | 46 |
public class DefaultMinMaxLines extends MinMaxLines { |
... | ... | |
136 | 136 |
/** |
137 | 137 |
* Cuando se ha pinchado un punto y se arrastra se define aqu? su comportamiento. |
138 | 138 |
*/ |
139 |
@SuppressWarnings("unchecked") |
|
140 | 139 |
public boolean mouseDragged(MouseEvent e) { |
141 | 140 |
if (canvas == null) |
142 | 141 |
return true; |
... | ... | |
150 | 149 |
if (minPos > maxPos) |
151 | 150 |
maxPos = minPos; |
152 | 151 |
|
153 |
ArrayList elements = canvas.getDrawableElements(DefaultBaseFunction.class);
|
|
152 |
List<DrawableElement> elements = canvas.getDrawableElements(DefaultBaseFunction.class);
|
|
154 | 153 |
if (elements.size() > 0) { |
155 | 154 |
DefaultBaseFunction baseFunction = (DefaultBaseFunction) elements.get(0); |
156 | 155 |
baseFunction.setMinX(minPos); |
org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/canvas/DefaultGCanvas.java | ||
---|---|---|
27 | 27 |
import java.awt.event.MouseEvent; |
28 | 28 |
import java.util.ArrayList; |
29 | 29 |
import java.util.Iterator; |
30 |
import java.util.List; |
|
30 | 31 |
|
31 | 32 |
import javax.swing.JPanel; |
32 | 33 |
|
... | ... | |
51 | 52 |
import org.gvsig.raster.swing.impl.canvas.layer.function.DefaultStraightLine; |
52 | 53 |
/** |
53 | 54 |
* Canvas donde se pintan objetos GLine |
54 |
* 14-oct-2007 |
|
55 | 55 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
56 | 56 |
*/ |
57 |
@SuppressWarnings("unchecked") |
|
58 | 57 |
public class DefaultGCanvas extends JPanel implements GCanvas { |
59 | 58 |
private static final long serialVersionUID = 5431466034535083594L; |
60 | 59 |
private Color backgroundColor = Color.WHITE; |
61 |
private ArrayList<IGCanvasListener>
|
|
60 |
private List<IGCanvasListener> |
|
62 | 61 |
actionCommandListeners = new ArrayList<IGCanvasListener>(); |
63 | 62 |
public static final int DEFAULT_CURSOR = Cursor.DEFAULT_CURSOR; |
64 | 63 |
|
... | ... | |
70 | 69 |
private int borderY1 = 0; |
71 | 70 |
private int borderY2 = 0; |
72 | 71 |
|
73 |
private ArrayList<DrawableElement>
|
|
72 |
private List<DrawableElement> |
|
74 | 73 |
drawableElements = new ArrayList<DrawableElement>(); |
75 | 74 |
|
76 | 75 |
/** |
... | ... | |
113 | 112 |
* Invocar a los eventos asociados al componente |
114 | 113 |
*/ |
115 | 114 |
public void callDataChanged(String key, Object value) { |
116 |
Iterator iterator = actionCommandListeners.iterator(); |
|
115 |
Iterator<?> iterator = actionCommandListeners.iterator();
|
|
117 | 116 |
while (iterator.hasNext()) { |
118 | 117 |
IGCanvasListener listener = (IGCanvasListener) iterator.next(); |
119 | 118 |
listener.actionDataChanged(new GCanvasEvent(this, key, value)); |
... | ... | |
124 | 123 |
* Invocar a los eventos asociados al componente |
125 | 124 |
*/ |
126 | 125 |
public void callDataDragged(String key, Object value) { |
127 |
Iterator iterator = actionCommandListeners.iterator(); |
|
126 |
Iterator<?> iterator = actionCommandListeners.iterator();
|
|
128 | 127 |
while (iterator.hasNext()) { |
129 | 128 |
IGCanvasListener listener = (IGCanvasListener) iterator.next(); |
130 | 129 |
listener.actionDataDragged(new GCanvasEvent(this, key, value)); |
... | ... | |
163 | 162 |
* @param element |
164 | 163 |
* @param c1 |
165 | 164 |
*/ |
166 |
public void replaceDrawableElement(DrawableElement element, Class cl) { |
|
165 |
public void replaceDrawableElement(DrawableElement element, Class<?> cl) {
|
|
167 | 166 |
for (int i = 0; i < drawableElements.size(); i++) { |
168 | 167 |
if (cl.isInstance(drawableElements.get(i))) { |
169 | 168 |
drawableElements.set(i, element); |
... | ... | |
178 | 177 |
* @param c1 |
179 | 178 |
* @return ArrayList de DrawableElements |
180 | 179 |
*/ |
181 |
public ArrayList<DrawableElement> getDrawableElements(Class c1) {
|
|
180 |
public List<DrawableElement> getDrawableElements(Class<?> c1) {
|
|
182 | 181 |
ArrayList<DrawableElement> elements = new ArrayList<DrawableElement>(); |
183 | 182 |
for (int i = 0; i < drawableElements.size(); i++) { |
184 | 183 |
if (c1.isInstance(drawableElements.get(i))) |
... | ... | |
191 | 190 |
* Elimina un elemento dibujable |
192 | 191 |
* @param Class clase del elemento a eliminar |
193 | 192 |
*/ |
194 |
public void removeDrawableElement(Class cl) { |
|
193 |
public void removeDrawableElement(Class<?> cl) {
|
|
195 | 194 |
for (int i = 0; i < drawableElements.size(); i++) |
196 | 195 |
if (cl.isInstance(drawableElements.get(i))) |
197 | 196 |
drawableElements.remove(i); |
... | ... | |
201 | 200 |
* Asigna una lista de elementos dibujables |
202 | 201 |
* @return |
203 | 202 |
*/ |
204 |
public void setDrawableElements(ArrayList<DrawableElement> list) {
|
|
203 |
public void setDrawableElements(List<DrawableElement> list) { |
|
205 | 204 |
drawableElements.clear(); |
206 | 205 |
for (int i = 0; i < list.size(); i++) |
207 | 206 |
if (list.get(i) instanceof DrawableElement) |
... | ... | |
213 | 212 |
* Inicializa el fondo y dibuja el gr?fico sobre el canvas. |
214 | 213 |
*/ |
215 | 214 |
public void paint(Graphics g) { |
216 |
if (g == null) return; |
|
215 |
if (g == null) |
|
216 |
return; |
|
217 | 217 |
g.setColor(backgroundColor); |
218 | 218 |
g.fillRect(0, 0, getWidth(), getHeight()); |
219 | 219 |
for (int i = 0; i < drawableElements.size(); i++) |
... | ... | |
277 | 277 |
return getHeight() - (borderY1 + borderY2); |
278 | 278 |
} |
279 | 279 |
|
280 |
/* |
|
281 |
* (non-Javadoc) |
|
282 |
* @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent) |
|
283 |
*/ |
|
284 | 280 |
public void mousePressed(MouseEvent e) { |
285 | 281 |
for (int i = drawableElements.size() - 1; i >= 0 ; i--) |
286 | 282 |
if (!((DrawableElement) drawableElements.get(i)).mousePressed(e)) |
287 | 283 |
return; |
288 | 284 |
} |
289 | 285 |
|
290 |
/* |
|
291 |
* (non-Javadoc) |
|
292 |
* @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent) |
|
293 |
*/ |
|
294 | 286 |
public void mouseReleased(MouseEvent e) { |
295 | 287 |
for (int i = drawableElements.size() - 1; i >= 0 ; i--) |
296 | 288 |
if (!((DrawableElement) drawableElements.get(i)).mouseReleased(e)) |
... | ... | |
298 | 290 |
this.mouseMoved(e); |
299 | 291 |
} |
300 | 292 |
|
301 |
/* |
|
302 |
* (non-Javadoc) |
|
303 |
* @see java.awt.event.MouseMotionListener#mouseDragged(java.awt.event.MouseEvent) |
|
304 |
*/ |
|
305 | 293 |
public void mouseDragged(MouseEvent e) { |
306 | 294 |
for (int i = drawableElements.size() - 1; i >= 0 ; i--) |
307 | 295 |
if (!((DrawableElement) drawableElements.get(i)).mouseDragged(e)) |
308 | 296 |
return; |
309 | 297 |
} |
310 | 298 |
|
311 |
/* |
|
312 |
* (non-Javadoc) |
|
313 |
* @see java.awt.event.MouseMotionListener#mouseMoved(java.awt.event.MouseEvent) |
|
314 |
*/ |
|
315 | 299 |
public void mouseMoved(MouseEvent e) { |
316 | 300 |
for (int i = drawableElements.size() - 1; i >= 0 ; i--) |
317 | 301 |
if (!((DrawableElement) drawableElements.get(i)).mouseMoved(e)) |
... | ... | |
319 | 303 |
setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); |
320 | 304 |
} |
321 | 305 |
|
322 |
/* |
|
323 |
* (non-Javadoc) |
|
324 |
* @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent) |
|
325 |
*/ |
|
326 | 306 |
public void mouseEntered(MouseEvent e) { |
327 | 307 |
hasMouse = true; |
328 | 308 |
repaint(); |
... | ... | |
331 | 311 |
return; |
332 | 312 |
} |
333 | 313 |
|
334 |
/* |
|
335 |
* (non-Javadoc) |
|
336 |
* @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent) |
|
337 |
*/ |
|
338 | 314 |
public void mouseExited(MouseEvent e) { |
339 | 315 |
hasMouse = false; |
340 | 316 |
repaint(); |
... | ... | |
353 | 329 |
|
354 | 330 |
public void mouseClicked(MouseEvent e) {} |
355 | 331 |
|
356 |
/* |
|
357 |
* (non-Javadoc) |
|
358 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createBorderLayerForGCanvas(java.awt.Color) |
|
359 |
*/ |
|
360 | 332 |
public DrawableElement createBorderLayerForGCanvas(Color color) { |
361 | 333 |
return new Border(color); |
362 | 334 |
} |
363 | 335 |
|
364 |
/* |
|
365 |
* (non-Javadoc) |
|
366 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createInfoLayerForGCanvas(java.awt.Color) |
|
367 |
*/ |
|
368 | 336 |
public InfoLayer createInfoLayerForGCanvas(Color colorLayer) { |
369 | 337 |
return new DefaultInfoLayer(colorLayer); |
370 | 338 |
} |
371 | 339 |
|
372 |
/* |
|
373 |
* (non-Javadoc) |
|
374 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createHistogramForGCanvas(double[], java.awt.Color) |
|
375 |
*/ |
|
376 | 340 |
public GraphicHistogram createHistogramForGCanvas(double[] data, Color color) { |
377 | 341 |
return new DefaultGraphicHistogram(data, color); |
378 | 342 |
} |
379 | 343 |
|
380 |
/* |
|
381 |
* (non-Javadoc) |
|
382 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createMinMaxLinesForGCanvas(java.awt.Color) |
|
383 |
*/ |
|
384 | 344 |
public MinMaxLines createMinMaxLinesForGCanvas(Color color) { |
385 | 345 |
return new DefaultMinMaxLines(color); |
386 | 346 |
} |
387 | 347 |
|
388 |
/* |
|
389 |
* (non-Javadoc) |
|
390 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createStraightLineForGCanvas(java.awt.Color) |
|
391 |
*/ |
|
392 | 348 |
public StraightLine createStraightLineForGCanvas(Color color) { |
393 | 349 |
return new DefaultStraightLine(color); |
394 | 350 |
} |
395 | 351 |
|
396 |
/* |
|
397 |
* (non-Javadoc) |
|
398 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createLogaritmicExponentialLineForGCanvas(java.awt.Color) |
|
399 |
*/ |
|
400 | 352 |
public LogaritmicExponentialLine createLogaritmicExponentialLineForGCanvas(Color color, double point) { |
401 | 353 |
return new DefaultLogaritmicExponentialLine(color, point); |
402 | 354 |
} |
403 | 355 |
|
404 |
/* |
|
405 |
* (non-Javadoc) |
|
406 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createSquareRootPowLineForGCanvas(java.awt.Color) |
|
407 |
*/ |
|
408 | 356 |
public SquareRootPowLine createSquareRootPowLineForGCanvas(Color color, double point) { |
409 | 357 |
return new DefaultSquareRootPowLine(color, point); |
410 | 358 |
} |
411 | 359 |
|
412 |
/* |
|
413 |
* (non-Javadoc) |
|
414 |
* @see org.gvsig.raster.swing.gcanvas.GCanvas#createDensitySliceForGCanvas(java.awt.Color, int) |
|
415 |
*/ |
|
416 | 360 |
public DensitySlicingLine createDensitySliceForGCanvas(Color color, int levels) { |
417 | 361 |
return new DefaultDensitySlicingLine(color, levels); |
418 | 362 |
} |
Also available in: Unified diff