Statistics
| Revision:

root / trunk / extensions / extArcims / src / es / prodevelop / cit / gvsig / arcims / gui / panels / utils / ImageFormatSelector.java @ 8110

History | View | Annotate | Download (3.25 KB)

1
package es.prodevelop.cit.gvsig.arcims.gui.panels.utils;
2

    
3
import java.awt.Color;
4
import java.awt.Graphics;
5
import java.awt.event.ActionEvent;
6
import java.awt.event.ActionListener;
7

    
8
import javax.swing.ButtonGroup;
9
import javax.swing.ImageIcon;
10
import javax.swing.JComboBox;
11
import javax.swing.JPanel;
12
import javax.swing.JRadioButton;
13
import javax.swing.event.ChangeEvent;
14
import javax.swing.event.ChangeListener;
15
import javax.swing.plaf.basic.BasicArrowButton;
16

    
17
import es.prodevelop.cit.gvsig.arcims.gui.panels.FeatureServicePanel;
18
import es.prodevelop.cit.gvsig.arcims.gui.panels.ImageServicePanel;
19

    
20
public class ImageFormatSelector extends JPanel implements ChangeListener {
21
        
22
        private JRadioButton jpgRB, gifRB, png8RB, png24RB;
23
        private ButtonGroup formatBG;
24
        private ActionListener listener;
25

    
26
        public ImageFormatSelector() {
27
                jpgRB = new JRadioButton("JPG", true);
28
                jpgRB.addChangeListener(this);
29
                jpgRB.setBounds(10, 0, 60, 20);
30
                
31
                gifRB =  new JRadioButton("GIF", false);
32
                gifRB.addChangeListener(this);
33
                gifRB.setBounds(70, 0, 60, 20);
34
                
35
                png8RB =  new JRadioButton("PNG8", false);
36
                png8RB.addChangeListener(this);
37
                png8RB.setBounds(130, 0, 60, 20);
38
                
39
                png24RB =  new JRadioButton("PNG24", false);
40
                png24RB.addChangeListener(this);
41
                png24RB.setBounds(190, 0, 60, 20); // llega hasta 10 + 4 * 60 = 250
42
                
43
                formatBG = new ButtonGroup();
44
                
45
                formatBG.add(jpgRB);
46
                formatBG.add(gifRB);
47
                formatBG.add(png8RB);
48
                formatBG.add(png24RB);
49
                
50
                setLayout(null);
51
                setBounds(15, 23, 260, 20);
52
                
53
                add(jpgRB);
54
                add(gifRB);
55
                add(png8RB);
56
                add(png24RB);
57
        }
58
        
59
        public void setSelected(String format) {
60
                
61
                setAll(false);
62
                
63
                if (format.compareToIgnoreCase(jpgRB.getText()) == 0) {
64
                        jpgRB.setSelected(true);
65
                }
66
                if (format.compareToIgnoreCase(gifRB.getText()) == 0) {
67
                        gifRB.setSelected(true);
68
                }
69
                if (format.compareToIgnoreCase(png8RB.getText()) == 0) {
70
                        png8RB.setSelected(true);
71
                }
72
                if (format.compareToIgnoreCase(png24RB.getText()) == 0) {
73
                        png24RB.setSelected(true);
74
                }
75
        }
76
        
77
        public String getSelected() {
78
                if (jpgRB.isSelected()) {
79
                        return jpgRB.getText();
80
                }
81
                if (gifRB.isSelected()) {
82
                        return gifRB.getText();
83
                }
84
                if (png8RB.isSelected()) {
85
                        return png8RB.getText();
86
                }
87
                if (png24RB.isSelected()) {
88
                        return png24RB.getText();
89
                }
90
                return "";
91
        }
92
        
93
        private void setAll(boolean selected) {
94
                jpgRB.setSelected(selected);
95
                gifRB.setSelected(selected);
96
                png8RB.setSelected(selected);
97
                png24RB.setSelected(selected);
98
        }
99
        
100
        public void setAllEnabled(boolean enabled) {
101
                jpgRB.setEnabled(enabled);
102
                gifRB.setEnabled(enabled);
103
                png8RB.setEnabled(enabled);
104
                png24RB.setEnabled(enabled);
105
        }
106
        
107
        public void setThisEnabled(String format) {
108
                if (format.compareToIgnoreCase(jpgRB.getText()) == 0) {
109
                        jpgRB.setEnabled(true);
110
                }
111
                if (format.compareToIgnoreCase(gifRB.getText()) == 0) {
112
                        gifRB.setEnabled(true);
113
                }
114
                if (format.compareToIgnoreCase(png8RB.getText()) == 0) {
115
                        png8RB.setEnabled(true);
116
                }
117
                if (format.compareToIgnoreCase(png24RB.getText()) == 0) {
118
                        png24RB.setEnabled(true);
119
                }
120
        }
121

    
122
        public void addListener(ImageServicePanel panel) {
123
                listener = panel;
124
        }
125

    
126
        public void stateChanged(ChangeEvent arg0) {
127
                if (listener != null) {
128
                        ActionEvent ae = new ActionEvent(this, ActionEvent.ACTION_PERFORMED, "");
129
                        listener.actionPerformed(ae);
130
                }
131
        }
132
        
133
        
134
        
135
        
136
}