Revision 11784

View differences:

trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/filter/FilterListener.java
175 175
							break;
176 176
						case Params.SLIDER:
177 177
              types = new Object[]{new Integer(PropertiesComponent.TYPE_SLIDER), new Integer(p.list[0]), new Integer(p.list[1])};
178
              propertiesComponent.addValue(name, key, new Integer(p.defaultValue), types);
178
              propertiesComponent.addValue(name, key, new Integer((int) Math.round(new Double(p.defaultValue).doubleValue())), types);
179 179
              break;
180 180
						default:
181 181
							propertiesComponent.addValue(params.getParam(i).id, params.getParam(i).id, params.getParam(i).defaultValue, null);
......
221 221
		RasterFilterList filterList = rendering.getFilterList();
222 222
		RasterFilterListManager stackManager = new RasterFilterListManager(filterList);
223 223
		
224
		System.out.println("-");
224 225
		if (filterPanel.getCBShowFilters().isSelected()) {
225 226
			ListModel list = filterPanel.getTreeListContainer().getListModel();
226
			for (int i=0; i<list.getSize(); i++) {
227
			for (int i = 0; i < list.getSize(); i++) {
227 228
				Hashtable hastTable = filterPanel.getTreeListContainer().getMap();
228
				for (int j=0; j<paramsList.size(); j++) {
229
				for (int j = 0; j < paramsList.size(); j++) {
229 230
					if (((ParamStruct) paramsList.get(j)).getFilterName().equals(hastTable.get(list.getElementAt(i)))) {
230 231
						IRasterFilterListManager filterManager = stackManager.getManagerByFilterClass(((ParamStruct) paramsList.get(j)).getFilterClass());
231
						filterManager.addFilter(((ParamStruct) paramsList.get(j)).getFilterClass(), ((ParamStruct) paramsList.get(j)).getFilterParam()); 
232
						
233
						filterManager.addFilter(((ParamStruct) paramsList.get(j)).getFilterClass(), ((ParamStruct) paramsList.get(j)).getFilterParam());
234
						
235
						System.out.println(((ParamStruct) paramsList.get(j)).getFilterClass());
232 236
					}
233 237
				}
234 238
			}
......
284 288
	public void elementRemoved(TreeListEvent e) {
285 289
		filterPanel.refreshPreview();
286 290
	}
291

  
292
	/**
293
	 * @return the paramsList
294
	 */
295
	public ArrayList getParamsList() {
296
		return paramsList;
297
	}
287 298
}
trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/filter/ui/FilterDialog.java
90 90
		}
91 91
	}
92 92

  
93
	/*
94
	 * (non-Javadoc)
95
	 * @see org.gvsig.gui.beans.buttonspanel.ButtonsPanelListener#actionButtonPressed(org.gvsig.gui.beans.buttonspanel.ButtonsPanelEvent)
96
	 */
93 97
	public void actionButtonPressed(ButtonsPanelEvent e) {
94 98
		//Al pulsar Aceptar o aplicar se a?aden los filtros
95 99
		if (e.getButton() == ButtonsPanel.BUTTON_APPLY || e.getButton() == ButtonsPanel.BUTTON_ACCEPT) {
trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/filter/ui/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