Statistics
| Revision:

svn-gvsig-desktop / trunk / extensions / org.gvsig.chartlegend / src / main / java / org / gvsig / app / project / documents / view / legend / gui / PreviewBarSymbol.java @ 32692

History | View | Annotate | Download (1.92 KB)

1
package org.gvsig.app.project.documents.view.legend.gui;
2

    
3
import java.awt.BasicStroke;
4
import java.awt.Color;
5
import java.awt.Graphics;
6
import java.awt.Graphics2D;
7
import java.awt.Rectangle;
8
import java.awt.geom.AffineTransform;
9

    
10
import javax.swing.JPanel;
11

    
12
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.chart.bar.IBarSymbol;
13
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.chart.bar.impl.BarSymbol;
14

    
15
import com.iver.cit.gvsig.fmap.core.symbols.ISymbol;
16
import com.iver.cit.gvsig.fmap.core.symbols.SymbolDrawingException;
17

    
18
/**
19
 * Preview BarSymbol panel.
20
 *
21
 * @author Vicente Caballero Navarro
22
 */
23
public class PreviewBarSymbol extends JPanel{
24
        private IBarSymbol barSymbol;
25
        private String[] names;
26
        private Color[] colors;
27
        private ISymbol backgroundSymbol;
28
        private Rectangle r=new Rectangle(15,15,120,80);
29
        public PreviewBarSymbol(){
30
                this.barSymbol=(IBarSymbol) new BarSymbol();
31
        }
32
        public void setSections(String[] names, Color[] colors){
33
                this.names=names;
34
                this.colors=colors;
35
        }
36
        protected void paintComponent(Graphics g) {
37
                super.paintComponent(g);
38
                try {
39
                        if (backgroundSymbol!=null)
40
                                backgroundSymbol.drawInsideRectangle((Graphics2D)g, new AffineTransform(), r, null);
41
                        if (names==null || names.length==0)
42
                                return;
43
                        barSymbol.setSections(names, colors);
44
                        barSymbol.drawInsideRectangle((Graphics2D)g, new AffineTransform(), r, null);
45
                        ((Graphics2D)g).setStroke(new BasicStroke(0));
46
                } catch (SymbolDrawingException e) {
47
                        e.printStackTrace();
48
                }
49
        }
50
        public void set3D(boolean b) {
51
                barSymbol.set3D(b);
52
        }
53
        public void setOutlineShow(boolean b) {
54
                barSymbol.setOutlineShow(b);
55
        }
56
        public void setOutLineColor(Color color) {
57
                barSymbol.setOutlineColor(color);
58

    
59
        }
60
        public void setOutlineWidth(int width) {
61
                barSymbol.setOutlineWidth(width);
62
        }
63
        public void setBackgroundSymbol(ISymbol symbol) {
64
                backgroundSymbol=symbol;
65
        }
66

    
67

    
68
}