Revision 11784 trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/filter/ui/FilterPanel.java
FilterPanel.java | ||
---|---|---|
24 | 24 |
|
25 | 25 |
import javax.swing.BorderFactory; |
26 | 26 |
import javax.swing.ButtonGroup; |
27 |
import javax.swing.DefaultListModel; |
|
27 | 28 |
import javax.swing.JCheckBox; |
28 | 29 |
import javax.swing.JPanel; |
29 | 30 |
import javax.swing.JRadioButton; |
... | ... | |
37 | 38 |
import org.gvsig.raster.grid.filter.RasterFilter; |
38 | 39 |
import org.gvsig.raster.grid.filter.RasterFilterList; |
39 | 40 |
import org.gvsig.raster.grid.filter.RasterFilterListManager; |
41 |
import org.gvsig.raster.grid.render.Rendering; |
|
40 | 42 |
import org.gvsig.raster.shared.Extent; |
41 | 43 |
import org.gvsig.rastertools.filter.FilterListener; |
44 |
import org.gvsig.rastertools.filter.FilterListener.ParamStruct; |
|
42 | 45 |
|
43 | 46 |
import com.iver.andami.PluginServices; |
44 | 47 |
import com.iver.cit.gvsig.fmap.layers.FLayer; |
... | ... | |
66 | 69 |
super(ButtonsPanel.BUTTONS_ACCEPTCANCELAPPLY); |
67 | 70 |
|
68 | 71 |
this.setLayout(new BorderLayout(5, 5)); |
72 |
initialize(); |
|
69 | 73 |
getPropertiesComponent(); |
70 |
|
|
71 |
initialize(); |
|
72 | 74 |
} |
73 | 75 |
|
74 | 76 |
/** |
... | ... | |
78 | 80 |
this.add(getTreeListContainer(), BorderLayout.WEST); |
79 | 81 |
this.add(getPPreview(), BorderLayout.EAST); |
80 | 82 |
menuBuild(); |
81 |
// Selecciona el primer item |
|
82 |
TreeListContainer lc = getTreeListContainer(); |
|
83 |
lc.getTree().expandRow(1); |
|
84 |
lc.getTree().setSelectionInterval(2, 2); |
|
85 | 83 |
} |
86 | 84 |
|
87 | 85 |
/** |
... | ... | |
91 | 89 |
Hashtable keys = new Hashtable(); |
92 | 90 |
RasterFilterList filterList = new RasterFilterList(); |
93 | 91 |
RasterFilterListManager stackManager = new RasterFilterListManager(filterList); |
94 |
|
|
92 |
|
|
95 | 93 |
int count = 0; |
96 | 94 |
boolean error; |
97 | 95 |
RasterFilter obj = null; |
98 |
|
|
96 |
|
|
99 | 97 |
for (int i = 0; i < stackManager.getRasterFilterList().size(); i++) { |
100 | 98 |
Class classFilter = (Class) stackManager.getRasterFilterList().get(i); |
101 | 99 |
error = true; |
102 |
|
|
100 |
|
|
103 | 101 |
try { |
104 | 102 |
obj = (RasterFilter) classFilter.newInstance(); |
105 | 103 |
error = false; |
... | ... | |
108 | 106 |
} catch (IllegalAccessException e) { |
109 | 107 |
e.printStackTrace(); |
110 | 108 |
} |
111 |
|
|
109 |
|
|
112 | 110 |
if (!error) { |
113 | 111 |
if (!keys.containsKey(new String(obj.getGroup()))) { |
114 | 112 |
keys.put(new String(obj.getGroup()), obj); |
115 | 113 |
getTreeListContainer().addClass(new String(obj.getGroup()), count); |
116 | 114 |
count++; |
117 | 115 |
} |
118 |
getFilterListener().addNewParam(obj.getName(), obj.getUIDefaultParams(), classFilter);
|
|
116 |
getFilterListener().addNewParam(obj.getName(), obj.getUIParams(), classFilter); |
|
119 | 117 |
getTreeListContainer().addEntry("?" + obj.getName() + "!", obj.getGroup(), obj.getName()); |
120 | 118 |
} |
121 | 119 |
} |
122 |
|
|
120 |
|
|
123 | 121 |
getTreeListContainer().getTree().expandRow(0); |
124 | 122 |
} |
125 | 123 |
|
... | ... | |
155 | 153 |
jsubpanel.setLayout(new BorderLayout()); |
156 | 154 |
jsubpanel2.setBorder(javax.swing.BorderFactory.createEmptyBorder(8, 8, 8, 8)); |
157 | 155 |
jsubpanel2.setLayout(new BorderLayout()); |
158 |
|
|
156 |
|
|
159 | 157 |
jsubpanel.setPreferredSize(new Dimension(192, 192)); |
160 | 158 |
jsubpanel.setMinimumSize(new Dimension(192, 192)); |
161 | 159 |
jsubpanel.setMaximumSize(new Dimension(192, 192)); |
162 |
|
|
163 |
|
|
160 |
|
|
164 | 161 |
jsubpanel2.add(getImageNavigator(), BorderLayout.CENTER); |
165 | 162 |
jsubpanel.add(jsubpanel2, BorderLayout.CENTER); |
166 |
|
|
163 |
|
|
167 | 164 |
pPreview.setLayout(new javax.swing.BoxLayout(pPreview, javax.swing.BoxLayout.Y_AXIS)); |
168 | 165 |
pPreview.add(jsubpanel); |
169 | 166 |
pPreview.add(panelOptions()); |
170 |
|
|
167 |
|
|
171 | 168 |
panelOptions().setPreferredSize(new Dimension(192, 132)); |
172 | 169 |
panelOptions().setMinimumSize(new Dimension(192, 132)); |
173 | 170 |
panelOptions().setMaximumSize(new Dimension(192, 132)); |
... | ... | |
199 | 196 |
private JPanel panelOptions() { |
200 | 197 |
if (jPanel1 == null) { |
201 | 198 |
JPanel jPanel2 = null; |
202 |
|
|
199 |
|
|
203 | 200 |
ButtonGroup buttonGroup1; |
204 | 201 |
ButtonGroup buttonGroup2; |
205 |
|
|
206 |
java.awt.GridBagConstraints gridBagConstraints;
|
|
207 |
|
|
208 |
buttonGroup1 = new javax.swing.ButtonGroup();
|
|
209 |
buttonGroup2 = new ButtonGroup();
|
|
210 |
jPanel1 = new JPanel();
|
|
211 |
jRadioButton1 = new JRadioButton();
|
|
212 |
jRadioButton2 = new JRadioButton();
|
|
213 |
jPanel2 = new JPanel();
|
|
214 |
jRadioButton3 = new JRadioButton();
|
|
215 |
jRadioButton4 = new JRadioButton();
|
|
216 |
|
|
217 |
jPanel1.setLayout(new java.awt.GridBagLayout());
|
|
218 |
|
|
219 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
220 |
gridBagConstraints.gridx = 0;
|
|
221 |
gridBagConstraints.gridy = 1;
|
|
222 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
223 |
gridBagConstraints.insets = new java.awt.Insets(2, 2, 2, 2);
|
|
224 |
jPanel1.add(getCBShowFilters(), gridBagConstraints);
|
|
225 |
|
|
226 |
buttonGroup1.add(jRadioButton1);
|
|
227 |
jRadioButton1.setText("Solo en visualizaci?n");
|
|
228 |
jRadioButton1.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
229 |
jRadioButton1.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
230 |
|
|
231 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
232 |
gridBagConstraints.gridx = 0;
|
|
233 |
gridBagConstraints.gridy = 2;
|
|
234 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
235 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
236 |
jPanel1.add(jRadioButton1, gridBagConstraints);
|
|
237 |
|
|
238 |
buttonGroup1.add(jRadioButton2);
|
|
239 |
jRadioButton2.setSelected(true);
|
|
240 |
jRadioButton2.setText("Capa nueva");
|
|
241 |
jRadioButton2.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
242 |
jRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
243 |
jRadioButton2.addItemListener(new java.awt.event.ItemListener() {
|
|
244 |
public void itemStateChanged(java.awt.event.ItemEvent evt) {
|
|
245 |
jRadioButton2ItemStateChanged(evt);
|
|
246 |
}
|
|
247 |
});
|
|
248 |
|
|
249 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
250 |
gridBagConstraints.gridx = 0;
|
|
251 |
gridBagConstraints.gridy = 3;
|
|
252 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
253 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
254 |
jPanel1.add(jRadioButton2, gridBagConstraints);
|
|
255 |
|
|
256 |
jPanel2.setLayout(new java.awt.GridBagLayout());
|
|
257 |
|
|
258 |
jPanel2.setBorder(BorderFactory.createTitledBorder(""));
|
|
259 |
buttonGroup2.add(jRadioButton3);
|
|
260 |
jRadioButton3.setText("Generar fichero");
|
|
261 |
jRadioButton3.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
262 |
jRadioButton3.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
263 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
264 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
265 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
266 |
jPanel2.add(jRadioButton3, gridBagConstraints);
|
|
267 |
|
|
268 |
buttonGroup2.add(jRadioButton4);
|
|
269 |
jRadioButton4.setSelected(true);
|
|
270 |
jRadioButton4.setText("Abrir en memoria");
|
|
271 |
jRadioButton4.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
272 |
jRadioButton4.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
273 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
274 |
gridBagConstraints.gridx = 0;
|
|
275 |
gridBagConstraints.gridy = 1;
|
|
276 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
277 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
278 |
jPanel2.add(jRadioButton4, gridBagConstraints);
|
|
279 |
|
|
280 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
281 |
gridBagConstraints.gridx = 0;
|
|
282 |
gridBagConstraints.gridy = 4;
|
|
283 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
284 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
285 |
jPanel1.add(jPanel2, gridBagConstraints);
|
|
202 |
|
|
203 |
java.awt.GridBagConstraints gridBagConstraints;
|
|
204 |
|
|
205 |
buttonGroup1 = new javax.swing.ButtonGroup();
|
|
206 |
buttonGroup2 = new ButtonGroup();
|
|
207 |
jPanel1 = new JPanel();
|
|
208 |
jRadioButton1 = new JRadioButton();
|
|
209 |
jRadioButton2 = new JRadioButton();
|
|
210 |
jPanel2 = new JPanel();
|
|
211 |
jRadioButton3 = new JRadioButton();
|
|
212 |
jRadioButton4 = new JRadioButton();
|
|
213 |
|
|
214 |
jPanel1.setLayout(new java.awt.GridBagLayout());
|
|
215 |
|
|
216 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
217 |
gridBagConstraints.gridx = 0;
|
|
218 |
gridBagConstraints.gridy = 1;
|
|
219 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
220 |
gridBagConstraints.insets = new java.awt.Insets(2, 2, 2, 2);
|
|
221 |
jPanel1.add(getCBShowFilters(), gridBagConstraints);
|
|
222 |
|
|
223 |
buttonGroup1.add(jRadioButton1);
|
|
224 |
jRadioButton1.setText("Solo en visualizaci?n");
|
|
225 |
jRadioButton1.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
226 |
jRadioButton1.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
227 |
|
|
228 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
229 |
gridBagConstraints.gridx = 0;
|
|
230 |
gridBagConstraints.gridy = 2;
|
|
231 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
232 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
233 |
jPanel1.add(jRadioButton1, gridBagConstraints);
|
|
234 |
|
|
235 |
buttonGroup1.add(jRadioButton2);
|
|
236 |
jRadioButton2.setSelected(true);
|
|
237 |
jRadioButton2.setText("Capa nueva");
|
|
238 |
jRadioButton2.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
239 |
jRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
240 |
jRadioButton2.addItemListener(new java.awt.event.ItemListener() {
|
|
241 |
public void itemStateChanged(java.awt.event.ItemEvent evt) {
|
|
242 |
jRadioButton2ItemStateChanged(evt);
|
|
243 |
}
|
|
244 |
});
|
|
245 |
|
|
246 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
247 |
gridBagConstraints.gridx = 0;
|
|
248 |
gridBagConstraints.gridy = 3;
|
|
249 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
250 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
251 |
jPanel1.add(jRadioButton2, gridBagConstraints);
|
|
252 |
|
|
253 |
jPanel2.setLayout(new java.awt.GridBagLayout());
|
|
254 |
|
|
255 |
jPanel2.setBorder(BorderFactory.createTitledBorder(""));
|
|
256 |
buttonGroup2.add(jRadioButton3);
|
|
257 |
jRadioButton3.setText("Generar fichero");
|
|
258 |
jRadioButton3.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
259 |
jRadioButton3.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
260 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
261 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
262 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
263 |
jPanel2.add(jRadioButton3, gridBagConstraints);
|
|
264 |
|
|
265 |
buttonGroup2.add(jRadioButton4);
|
|
266 |
jRadioButton4.setSelected(true);
|
|
267 |
jRadioButton4.setText("Abrir en memoria");
|
|
268 |
jRadioButton4.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
|
|
269 |
jRadioButton4.setMargin(new java.awt.Insets(0, 0, 0, 0));
|
|
270 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
271 |
gridBagConstraints.gridx = 0;
|
|
272 |
gridBagConstraints.gridy = 1;
|
|
273 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
274 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
275 |
jPanel2.add(jRadioButton4, gridBagConstraints);
|
|
276 |
|
|
277 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
|
278 |
gridBagConstraints.gridx = 0;
|
|
279 |
gridBagConstraints.gridy = 4;
|
|
280 |
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
|
|
281 |
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
|
|
282 |
jPanel1.add(jPanel2, gridBagConstraints);
|
|
286 | 283 |
} |
287 |
|
|
288 |
return jPanel1;
|
|
284 |
|
|
285 |
return jPanel1;
|
|
289 | 286 |
} |
290 | 287 |
|
291 |
|
|
292 | 288 |
private FilterListener getFilterListener() { |
293 | 289 |
if (filterListener == null) { |
294 | 290 |
filterListener = new FilterListener(this); |
... | ... | |
308 | 304 |
getImageNavigator().setViewDimensions(extent2.getMin().getX(), extent2.getMax().getY(), extent2.getMax().getX(), extent2.getMin().getY()); |
309 | 305 |
getImageNavigator().setZoom(1.0/((FLyrRasterSE) fLayer).getDatasource().getXCellSize()); |
310 | 306 |
getImageNavigator().updateBuffer(); |
307 |
|
|
308 |
Rendering rendering = ((FLyrRasterSE) layer).getRender(); |
|
309 |
RasterFilterList rfl = rendering.getFilterList(); |
|
310 |
|
|
311 |
System.out.println("-"); |
|
312 |
int i=0; |
|
313 |
while (rfl.get(i) != null) { |
|
314 |
// System.out.println(rfl.get(i).getName()); |
|
315 |
|
|
316 |
DefaultListModel list = (DefaultListModel) getTreeListContainer().getListModel(); |
|
317 |
list.addElement("?" + rfl.get(i).getName() + "!"); |
|
318 |
for (int j = 0; j < getFilterListener().getParamsList().size(); j++) { |
|
319 |
if (((ParamStruct) getFilterListener().getParamsList().get(j)).getFilterName().equals(rfl.get(i).getName())) { |
|
320 |
((ParamStruct) getFilterListener().getParamsList().get(j)).setFilterParam(rfl.get(i).getUIParams()); |
|
321 |
} |
|
322 |
} |
|
323 |
|
|
324 |
i++; |
|
325 |
} |
|
326 |
|
|
327 |
// Selecciona el primer item |
|
328 |
TreeListContainer lc = getTreeListContainer(); |
|
329 |
lc.getTree().expandRow(1); |
|
330 |
lc.getTree().setSelectionInterval(2, 2); |
|
311 | 331 |
} |
312 |
|
|
332 |
|
|
313 | 333 |
JRadioButton jRadioButton1; |
314 | 334 |
JRadioButton jRadioButton2; |
315 | 335 |
JRadioButton jRadioButton3; |
... | ... | |
349 | 369 |
this.add(propertiesComponent, BorderLayout.CENTER); |
350 | 370 |
propertiesComponent.addStateChangedListener(getFilterListener()); |
351 | 371 |
setTitle(name); |
352 |
this.validate();
|
|
372 |
this.validate(); |
|
353 | 373 |
} |
354 | 374 |
} |
Also available in: Unified diff