Revision 11055 trunk/applications/appgvSIG/src/com/iver/cit/gvsig/gui/styling/StylePreviewer.java

View differences:

StylePreviewer.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 *
19
 * For more information, contact:
20
 *
21
 *  Generalitat Valenciana
22
 *   Conselleria d'Infraestructures i Transport
23
 *   Av. Blasco Ib??ez, 50
24
 *   46010 VALENCIA
25
 *   SPAIN
26
 *
27
 *      +34 963862235
28
 *   gvsig@gva.es
29
 *      www.gvsig.gva.es
30
 *
31
 *    or
32
 *
33
 *   IVER T.I. S.A
34
 *   Salamanca 50
35
 *   46005 Valencia
36
 *   Spain
37
 *
38
 *   +34 963163400
39
 *   dac@iver.es
40
 */
41

  
42
/* CVS MESSAGES:
43
*
44
* $Id$
45
* $Log$
46
* Revision 1.2  2007-04-04 16:01:14  jaume
47
* *** empty log message ***
48
*
49
* Revision 1.2  2007/03/09 11:25:00  jaume
50
* Advanced symbology (start committing)
51
*
52
* Revision 1.1.2.4  2007/02/21 07:35:14  jaume
53
* *** empty log message ***
54
*
55
* Revision 1.1.2.3  2007/02/08 15:43:04  jaume
56
* some bug fixes in the editor and removed unnecessary imports
57
*
58
* Revision 1.1.2.2  2007/01/30 18:10:10  jaume
59
* start commiting labeling stuff
60
*
61
* Revision 1.1.2.1  2007/01/26 13:49:03  jaume
62
* *** empty log message ***
63
*
64
*
65
*/
1 66
package com.iver.cit.gvsig.gui.styling;
2 67

  
3 68
import java.awt.Color;
......
14 79
import com.iver.cit.gvsig.fmap.core.styles.IStyle;
15 80
import com.iver.cit.gvsig.fmap.core.symbols.ISymbol;
16 81

  
82
/**
83
*
84
* @author jaume dominguez faus - jaume.dominguez@iver.es
85
*
86
*/
17 87
public class StylePreviewer extends SymbolPreviewer{
18 88
	private int hGap = 5, vGap = 5;
19 89
	private IStyle style;
90
	private boolean showOutline;
20 91

  
21 92

  
22 93
	public StylePreviewer() {
......
27 98
	public IStyle getStyle() {
28 99
		return style;
29 100
	}
30
	
101

  
31 102
	public ISymbol getSymbol() {
32 103
		throw new Error(PluginServices.getText(this, "undefined_for_StylePreviewer_use")
33 104
				+" getStyle() "+
34 105
				PluginServices.getText(this, "instead") );
35
			
106

  
36 107
	}
37
	
108

  
38 109
	public void setSymbol(ISymbol symbol) {
39 110
		throw new Error(PluginServices.getText(this, "undefined_for_StylePreviewer_use")
40 111
				+" setStyle(IStyle) "+
41 112
				PluginServices.getText(this, "instead") );
42
			
113

  
43 114
	}
44
	
45 115

  
116

  
46 117
	public void setStyle(IStyle style) {
47 118
		this.style = style;
48 119
		repaint();
......
55 126
		r = new Rectangle(0, 0, (int) (r.getWidth()-(hGap*2)), (int) (r.getHeight()-(vGap*2)));
56 127

  
57 128
		if (style != null) {
58
			style.drawInsideRectangle(g2, r);
129
			if (showOutline) {
130
				// this is a trick for the editor
131
				style.drawOutline(g2, r);
132
			} else {
133
				style.drawInsideRectangle(g2, r);
134
			}
59 135
		} else {
60 136
			String noneSelected = "["+PluginServices.getText(this, "preview_not_available")+"]";
61 137
			FontMetrics fm = g2.getFontMetrics();
......
68 144
			g2.drawString(noneSelected,	 (r.x*scale) - (hGap/2), r.height/2+vGap*scale);
69 145
		}
70 146
	}
147

  
148
	/**
149
	 * Allows to choose between paint styles Outline or the style itself.
150
	 * @param b
151
	 */
152
	public void setShowOutline(boolean b) {
153
		this.showOutline = b;
154
	}
71 155
}

Also available in: Unified diff