gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.swing / org.gvsig.tools.swing.impl / src / main / java / org / gvsig / tools / swing / impl / dynobject / DefaultJDynObjectComponent.java @ 168
History | View | Annotate | Download (14.5 KB)
1 | 93 | cordinyana | /* gvSIG. Geographic Information System of the Valencian Government
|
---|---|---|---|
2 | 101 | cordinyana | *
|
3 | * Copyright (C) 2007-2008 Infrastructures and Transports Department
|
||
4 | * of the Valencian Government (CIT)
|
||
5 | *
|
||
6 | * This program is free software; you can redistribute it and/or
|
||
7 | * modify it under the terms of the GNU General Public License
|
||
8 | * as published by the Free Software Foundation; either version 2
|
||
9 | * of the License, or (at your option) any later version.
|
||
10 | *
|
||
11 | * This program is distributed in the hope that it will be useful,
|
||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
14 | * GNU General Public License for more details.
|
||
15 | *
|
||
16 | * You should have received a copy of the GNU General Public License
|
||
17 | * along with this program; if not, write to the Free Software
|
||
18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||
19 | * MA 02110-1301, USA.
|
||
20 | *
|
||
21 | */
|
||
22 | 93 | cordinyana | |
23 | /*
|
||
24 | 101 | cordinyana | * AUTHORS (In addition to CIT):
|
25 | * 2010 {} {{Task}}
|
||
26 | */
|
||
27 | 93 | cordinyana | package org.gvsig.tools.swing.impl.dynobject; |
28 | |||
29 | 101 | cordinyana | import java.awt.Color; |
30 | import java.awt.Component; |
||
31 | import java.awt.GridBagConstraints; |
||
32 | import java.awt.GridBagLayout; |
||
33 | import java.awt.Insets; |
||
34 | import java.util.HashMap; |
||
35 | import java.util.List; |
||
36 | import java.util.Map; |
||
37 | 93 | cordinyana | |
38 | import javax.swing.JLabel; |
||
39 | 101 | cordinyana | import javax.swing.JPanel; |
40 | import javax.swing.JScrollPane; |
||
41 | 168 | cmartin | import javax.swing.JTabbedPane; |
42 | 93 | cordinyana | |
43 | 101 | cordinyana | import org.gvsig.tools.ToolsLocator; |
44 | import org.gvsig.tools.dynobject.DynField; |
||
45 | 93 | cordinyana | import org.gvsig.tools.dynobject.DynObject; |
46 | 101 | cordinyana | import org.gvsig.tools.i18n.I18nManager; |
47 | 168 | cmartin | import org.gvsig.tools.service.ServiceException; |
48 | import org.gvsig.tools.swing.api.dynobject.DynFieldComponentModel; |
||
49 | import org.gvsig.tools.swing.api.dynobject.DynObjectModel; |
||
50 | 93 | cordinyana | import org.gvsig.tools.swing.api.dynobject.JDynObjectComponent; |
51 | 168 | cmartin | import org.gvsig.tools.swing.api.dynobject.ValueChangedListener; |
52 | import org.gvsig.tools.swing.api.dynobject.dynfield.JDynFieldComponent; |
||
53 | import org.gvsig.tools.swing.api.dynobject.dynfield.ValueField; |
||
54 | import org.gvsig.tools.swing.spi.AbstractDynObjectComponent; |
||
55 | 101 | cordinyana | import org.slf4j.Logger; |
56 | import org.slf4j.LoggerFactory; |
||
57 | 93 | cordinyana | |
58 | /**
|
||
59 | 101 | cordinyana | * Initial implementation based on a simple swing form generation.
|
60 | *
|
||
61 | * @author 2008-2009 Jos? Manuel Viv?
|
||
62 | 93 | cordinyana | * @author 2010- C?sar Ordi?ana - gvSIG team
|
63 | */
|
||
64 | 168 | cmartin | public class DefaultJDynObjectComponent extends AbstractDynObjectComponent implements JDynObjectComponent, ValueField, ValueChangedListener{ |
65 | 104 | cordinyana | // implements ActionListener {
|
66 | 93 | cordinyana | |
67 | 101 | cordinyana | private static final long serialVersionUID = 2888673056424008867L; |
68 | 93 | cordinyana | |
69 | 101 | cordinyana | private static final Logger LOG = LoggerFactory |
70 | .getLogger(DefaultJDynObjectComponent.class); |
||
71 | |||
72 | private final I18nManager i18nManager = ToolsLocator.getI18nManager(); |
||
73 | |||
74 | private DynObject parameters;
|
||
75 | |||
76 | private Color mandatoryLabelColor = Color.red; |
||
77 | protected Map<String, Object> tempValue = new HashMap<String, Object>(); |
||
78 | 168 | cmartin | private HashMap<DynField, JLabel> labelList; |
79 | 101 | cordinyana | |
80 | 168 | cmartin | private JTabbedPane tabPanel; |
81 | 101 | cordinyana | |
82 | 168 | cmartin | public DefaultJDynObjectComponent(DynObject parameters, DynObjectModel model) throws ServiceException { |
83 | super(parameters,model);
|
||
84 | //added to handle labels correctly
|
||
85 | this.labelList = new HashMap<DynField,JLabel>(); |
||
86 | 101 | cordinyana | this.parameters = parameters;
|
87 | 168 | cmartin | this.tabPanel = new JTabbedPane(); |
88 | //Uncomment the following line to use scrolling tabs.
|
||
89 | this.tabPanel.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); |
||
90 | addParametersFromModel(); |
||
91 | 101 | cordinyana | |
92 | } |
||
93 | 168 | cmartin | |
94 | private void addGridBagComponent(JPanel panel, DynField field, int row) throws ServiceException { |
||
95 | |||
96 | JDynFieldComponent input = getJDynFieldComponent(field, this);
|
||
97 | |||
98 | StatusLabel label = this.createFieldLabel(input);
|
||
99 | input.addValueChangedListener(label); |
||
100 | |||
101 | Component component = (Component) input.getComponent(); |
||
102 | component.setName(field.getName()); |
||
103 | addComponentToList(component,input); |
||
104 | |||
105 | //Arranging label and component into panel
|
||
106 | |||
107 | 101 | cordinyana | GridBagConstraints constr = new GridBagConstraints(); |
108 | constr.insets = new Insets(2, 2, 2, 2); |
||
109 | 168 | cmartin | constr.weighty = row; |
110 | 101 | cordinyana | constr.ipadx = 2;
|
111 | constr.ipady = 2;
|
||
112 | constr.fill = GridBagConstraints.HORIZONTAL;
|
||
113 | 168 | cmartin | constr.anchor = GridBagConstraints.NORTHWEST;
|
114 | 101 | cordinyana | |
115 | 168 | cmartin | constr.gridx = 0;
|
116 | constr.gridy = row; |
||
117 | 101 | cordinyana | panel.add(label, constr); |
118 | |||
119 | |||
120 | 168 | cmartin | constr.fill = GridBagConstraints.HORIZONTAL;
|
121 | constr.gridx = 1;
|
||
122 | constr.weightx = 0.7;
|
||
123 | panel.add(component, constr); |
||
124 | |||
125 | input.fireValueChangedEvent(); |
||
126 | } |
||
127 | 101 | cordinyana | |
128 | 168 | cmartin | private void addParametersFromModel() throws ServiceException { |
129 | DynField field; |
||
130 | JPanel pane;
|
||
131 | String[] groups = this.getModel().getGroups(); |
||
132 | 101 | cordinyana | |
133 | 168 | cmartin | for (String group: groups){ |
134 | List items = this.getModel().getGroupElements(group); |
||
135 | |||
136 | pane = new JPanel(new GridBagLayout()); |
||
137 | |||
138 | for (int i=0;i<items.size();i++) { |
||
139 | field = ((DynFieldComponentModel)items.get(i)) |
||
140 | .getDynField(); |
||
141 | addGridBagComponent(pane,field,i); |
||
142 | 101 | cordinyana | |
143 | } |
||
144 | 168 | cmartin | this.tabPanel.addTab(group,createScrollPane(pane));
|
145 | } |
||
146 | } |
||
147 | 101 | cordinyana | |
148 | 168 | cmartin | /**
|
149 | * @param label
|
||
150 | * @param field
|
||
151 | */
|
||
152 | private void checkValidation(JLabel label, JDynFieldComponent field) { |
||
153 | if (label==null) return; |
||
154 | if (!isValid(field)){
|
||
155 | label.setForeground(this.mandatoryLabelColor);
|
||
156 | }else{
|
||
157 | label.setForeground(Color.BLACK);
|
||
158 | } |
||
159 | 101 | cordinyana | } |
160 | 168 | cmartin | |
161 | protected void closeWindow() { |
||
162 | LOG.debug("Result DynObject: {}", parameters);
|
||
163 | 101 | cordinyana | |
164 | 168 | cmartin | // if (PluginServices.getMainFrame() == null) {
|
165 | // ((JFrame) (getParent().getParent().getParent().getParent()))
|
||
166 | // .dispose();
|
||
167 | // } else {
|
||
168 | // PluginServices.getMDIManager().closeWindow(this);
|
||
169 | // }
|
||
170 | 101 | cordinyana | } |
171 | 168 | cmartin | |
172 | private StatusLabel createFieldLabel(JDynFieldComponent component) {
|
||
173 | DynField field = component.getDynField(); |
||
174 | String text = i18nManager.getTranslation(field.getDescription());
|
||
175 | 101 | cordinyana | |
176 | 168 | cmartin | StatusLabel label = new StatusLabel(text, field.isMandatory());
|
177 | |||
178 | //adding label to a hashmap
|
||
179 | this.labelList.put (field,label);
|
||
180 | |||
181 | return label;
|
||
182 | 101 | cordinyana | } |
183 | |||
184 | |||
185 | 168 | cmartin | private Component createScrollPane(JPanel panel) throws ServiceException { |
186 | JScrollPane scrollPane = new JScrollPane(); |
||
187 | scrollPane.setAlignmentX(JScrollPane.LEFT_ALIGNMENT);
|
||
188 | scrollPane.setAlignmentY(JScrollPane.TOP_ALIGNMENT);
|
||
189 | |||
190 | |||
191 | scrollPane.setViewportView(panel); |
||
192 | scrollPane.setAutoscrolls(true);
|
||
193 | //// scrollPane.setBorder(null);
|
||
194 | // scrollPane
|
||
195 | // .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
|
||
196 | // scrollPane
|
||
197 | // .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
|
||
198 | return scrollPane;
|
||
199 | 101 | cordinyana | } |
200 | |||
201 | 168 | cmartin | /* (non-Javadoc)
|
202 | * @see org.gvsig.tools.swing.api.dynobject.JComponent#getComponent()
|
||
203 | */
|
||
204 | public Object getComponent() { |
||
205 | return this.tabPanel; |
||
206 | // return this.panel;
|
||
207 | } |
||
208 | |||
209 | /**
|
||
210 | * OTRAS PRUEBAS DELAYOUT
|
||
211 | */
|
||
212 | |||
213 | // private GridBagConstraints getDefaultParametersConstraints() {
|
||
214 | // GridBagConstraints constr = new GridBagConstraints();
|
||
215 | // constr.insets = new Insets(2, 2, 2, 2);
|
||
216 | // constr.ipadx = 2;
|
||
217 | // constr.ipady = 2;
|
||
218 | // return constr;
|
||
219 | //}
|
||
220 | |||
221 | // private JPanel createNorthWestPane(JPanel pane){
|
||
222 | // //Make a panel
|
||
223 | // JPanel northWestPanel = new JPanel(new GridLayout(1,1));
|
||
224 | // GridBagConstraints c = new GridBagConstraints();
|
||
225 | // c.gridx = 0;
|
||
226 | // c.gridy = 0;
|
||
227 | // c.anchor = GridBagConstraints.NORTHWEST;
|
||
228 | // c.insets = new Insets(0,0,0,0);
|
||
229 | // northWestPanel.add(pane, c);
|
||
230 | 101 | cordinyana | //
|
231 | 168 | cmartin | // northWestPanel.add(pane);
|
232 | // return northWestPanel;
|
||
233 | // }
|
||
234 | |||
235 | // /**
|
||
236 | // * @throws ServiceException
|
||
237 | // *
|
||
238 | // */
|
||
239 | // private void addGridBagParametersFromModel() throws ServiceException {
|
||
240 | 101 | cordinyana | //
|
241 | 168 | cmartin | // DynField field;
|
242 | // JPanel pane;
|
||
243 | // String[] groups = this.getModel().getGroups();
|
||
244 | 101 | cordinyana | //
|
245 | 168 | cmartin | // for (String group: groups){
|
246 | // List items = this.getModel().getGroupElements(group);
|
||
247 | //
|
||
248 | // pane = new JPanel(new GridBagLayout());
|
||
249 | // pane.setBorder(BorderFactory.createTitledBorder("Prueba"));
|
||
250 | //
|
||
251 | // for (int i=0;i<items.size();i++) {
|
||
252 | // field = ((DynFieldComponentModel)items.get(i))
|
||
253 | // .getDynField();
|
||
254 | // addGridBagFieldSingle(pane,field,i);
|
||
255 | // }
|
||
256 | //// this.tabPanel.addTab(group,createScrollPane(pane));
|
||
257 | // this.tabPanel.addTab(group,pane);
|
||
258 | // }
|
||
259 | //
|
||
260 | // this.tabPanel.setSelectedIndex(0);
|
||
261 | // }
|
||
262 | |||
263 | // private void addFieldSingle(JPanel panel, DynField field, int row) throws ServiceException {
|
||
264 | //
|
||
265 | // JDynFieldComponent input = getJDynFieldComponent(field, this);
|
||
266 | //
|
||
267 | // StatusLabel label = this.createFieldLabel(input);
|
||
268 | // input.addValueChangedListener(label);
|
||
269 | //
|
||
270 | // // JTextField text = new JTextField();
|
||
271 | // //Component input = getComponentFor(field);
|
||
272 | // Component component = (Component) input.getComponent();
|
||
273 | // component.setName(field.getName());
|
||
274 | // addComponentToList(component,input);
|
||
275 | //
|
||
276 | //
|
||
277 | // //Arranging label and component into panel
|
||
278 | //
|
||
279 | // GridBagConstraints constr = this.getDefaultParametersConstraints();
|
||
280 | //
|
||
281 | // constr.fill = GridBagConstraints.HORIZONTAL;
|
||
282 | //
|
||
283 | // constr.gridx = 0;
|
||
284 | //// constr.gridy = row;
|
||
285 | // constr.gridheight = GridBagConstraints.RELATIVE;
|
||
286 | // constr.anchor = GridBagConstraints.PAGE_START;
|
||
287 | // constr.weighty = 0;
|
||
288 | //// constr.w = 1;
|
||
289 | //// constr.weightx = 0;
|
||
290 | //// constr.gridheight = GridBagConstraints.RELATIVE;
|
||
291 | // panel.add(label, BorderLayout.WEST);
|
||
292 | 101 | cordinyana | //
|
293 | //
|
||
294 | 168 | cmartin | //
|
295 | // panel.add(component, BorderLayout.CENTER);
|
||
296 | //
|
||
297 | // input.fireValueChangedEvent();
|
||
298 | // }
|
||
299 | |||
300 | // private void initialize() throws ServiceException {
|
||
301 | // this.panel = new JPanel(new BorderLayout(6,6));
|
||
302 | // this.panel.setPreferredSize(new Dimension(800, 560));
|
||
303 | //
|
||
304 | //// this.panel.add(this.getParametersScroll(), BorderLayout.PAGE_START);
|
||
305 | 101 | cordinyana | //
|
306 | 168 | cmartin | // this.panel.add(this.getParametersPanel(isMainPanel), BorderLayout.PAGE_START);
|
307 | //// this.panel = this.getParametersScroll();
|
||
308 | 101 | cordinyana | //
|
309 | 168 | cmartin | // // this.panel.add(this.panParameters);
|
310 | // // if (this.showButtons) {
|
||
311 | // // this.add(this.getButtonsPanel(), BorderLayout.SOUTH);
|
||
312 | // // }
|
||
313 | //// this.fromParamsToUI();
|
||
314 | // }
|
||
315 | |||
316 | // private JPanel getButtonsPanel() {
|
||
317 | // if (this.panButtons == null) {
|
||
318 | // this.panButtons = new JPanel();
|
||
319 | // this.panButtons.setLayout(new GridBagLayout());
|
||
320 | // GridBagConstraints constr = new GridBagConstraints();
|
||
321 | // constr.anchor = GridBagConstraints.LAST_LINE_END;
|
||
322 | // constr.fill = GridBagConstraints.HORIZONTAL;
|
||
323 | // constr.weightx = 1;
|
||
324 | // constr.weighty = 0;
|
||
325 | // this.panButtons.add(new JLabel(), constr);
|
||
326 | 101 | cordinyana | //
|
327 | 168 | cmartin | // const3r = this.getDefaultParametersConstraints();
|
328 | // constr33.fill = GridBagConstraints.NONE;
|
||
329 | // constr.weightx = 0;
|
||
330 | // constr.weighty = 0;
|
||
331 | 101 | cordinyana | //
|
332 | 168 | cmartin | // this.panButtons.add(this.getAcceptButton(), constr);
|
333 | // this.panButtons.add(this.getCancelButton(), constr);
|
||
334 | // this.panButtons.add(this.getRestoreDefaults(), constr);
|
||
335 | 101 | cordinyana | // }
|
336 | 168 | cmartin | // return this.panButtons;
|
337 | // }
|
||
338 | |||
339 | // private JButton getRestoreDefaults() {
|
||
340 | // if (this.botRestoreDefaults == null) {
|
||
341 | // this.botRestoreDefaults = usManager.createJButton(i18nManager
|
||
342 | // .getTranslation("restoreDefaults"));
|
||
343 | // this.botRestoreDefaults.addActionListener(this);
|
||
344 | // }
|
||
345 | // return this.botRestoreDefaults;
|
||
346 | // }
|
||
347 | 101 | cordinyana | //
|
348 | 168 | cmartin | // private JButton getCancelButton() {
|
349 | // if (this.botCancel == null) {
|
||
350 | // this.botCancel = usManager.createJButton(i18nManager
|
||
351 | // .getTranslation("cancel"));
|
||
352 | // this.botCancel.addActionListener(this);
|
||
353 | 101 | cordinyana | // }
|
354 | 168 | cmartin | // return this.botCancel;
|
355 | // }
|
||
356 | 101 | cordinyana | //
|
357 | 168 | cmartin | // private JButton getAcceptButton() {
|
358 | // if (this.botAcept == null) {
|
||
359 | // this.botAcept = usManager.createJButton(i18nManager
|
||
360 | // .getTranslation("accept"));
|
||
361 | // this.botAcept.addActionListener(this);
|
||
362 | // }
|
||
363 | // return this.botAcept;
|
||
364 | // }
|
||
365 | |||
366 | // private void addGridLayoutComponent(JPanel panel, DynField field, int row) throws ServiceException {
|
||
367 | //
|
||
368 | // JDynFieldComponent input = getJDynFieldComponent(field, this);
|
||
369 | //
|
||
370 | // StatusLabel label = this.createFieldLabel(input);
|
||
371 | // input.addValueChangedListener(label);
|
||
372 | //
|
||
373 | // // JTextField text = new JTextField();
|
||
374 | // //Component input = getComponentFor(field);
|
||
375 | // Component component = (Component) input.getComponent();
|
||
376 | // component.setName(field.getName());
|
||
377 | // addComponentToList(component,input);
|
||
378 | //
|
||
379 | //
|
||
380 | // //Arranging label and component into panel
|
||
381 | //
|
||
382 | // GridBagConstraints constr = this.getDefaultParametersConstraints();
|
||
383 | //
|
||
384 | //// constr.fill = GridBagConstraints.HORIZONTAL;
|
||
385 | ////
|
||
386 | //// constr.gridx = 0;
|
||
387 | ////// constr.gridy = row;
|
||
388 | //// constr.gridheight = GridBagConstraints.RELATIVE;
|
||
389 | //// if (row==0){
|
||
390 | //// constr.anchor = GridBagConstraints.NORTHWEST;
|
||
391 | //// }else{
|
||
392 | //// constr.anchor = GridBagConstraints.PAGE_START;
|
||
393 | //// }
|
||
394 | //// constr.weighty = 0;
|
||
395 | //// constr.w = 1;
|
||
396 | //// constr.weightx = 0;
|
||
397 | //// constr.gridheight = GridBagConstraints.RELATIVE;
|
||
398 | // panel.add(label);
|
||
399 | 104 | cordinyana | //
|
400 | //
|
||
401 | 168 | cmartin | //// constr.fill = GridBagConstraints.BOTH;
|
402 | //// if (row==0){
|
||
403 | //// constr.anchor = GridBagConstraints.NORTHWEST;
|
||
404 | //// }else{
|
||
405 | //// constr.anchor = GridBagConstraints.PAGE_START;
|
||
406 | //// }
|
||
407 | //// constr.gridx = 1;
|
||
408 | //// constr.gridwidth = GridBagConstraints.NONE;
|
||
409 | //// constr.weightx = 0.70;
|
||
410 | // panel.add(component);
|
||
411 | //
|
||
412 | // input.fireValueChangedEvent();
|
||
413 | // }
|
||
414 | |||
415 | |||
416 | private JLabel getFieldLabel (DynField field){ |
||
417 | return this.labelList.get(field); |
||
418 | } |
||
419 | 101 | cordinyana | |
420 | // /* (non-Javadoc)
|
||
421 | // * @see com.iver.andami.ui.mdiManager.IWindow#getWindowInfo()
|
||
422 | // */
|
||
423 | // public WindowInfo getWindowInfo() {
|
||
424 | // WindowInfo m_viewinfo;
|
||
425 | // if (this.modal) {
|
||
426 | // m_viewinfo = new WindowInfo(WindowInfo.MODALDIALOG
|
||
427 | // | WindowInfo.RESIZABLE);
|
||
428 | // } else {
|
||
429 | // m_viewinfo = new WindowInfo(WindowInfo.RESIZABLE);
|
||
430 | // }
|
||
431 | // m_viewinfo.setTitle(this.title);
|
||
432 | // m_viewinfo.setHeight(500);
|
||
433 | // m_viewinfo.setWidth(520);
|
||
434 | // return m_viewinfo;
|
||
435 | // }
|
||
436 | |||
437 | 93 | cordinyana | /**
|
438 | 168 | cmartin | * @return the mandatoryLabelColor
|
439 | 93 | cordinyana | */
|
440 | 168 | cmartin | public Color getMandatoryLabelColor() { |
441 | return mandatoryLabelColor;
|
||
442 | 93 | cordinyana | } |
443 | |||
444 | 168 | cmartin | /* (non-Javadoc)
|
445 | * @see org.gvsig.tools.swing.spi.AbstractDynObjectComponent#getValue()
|
||
446 | */
|
||
447 | @Override
|
||
448 | public Object getValue() { |
||
449 | return this.getDynObject(); |
||
450 | } |
||
451 | |||
452 | /* (non-Javadoc)
|
||
453 | * @see org.gvsig.tools.swing.api.dynobject.ValueChangedListener#handleValueChanged(org.gvsig.tools.swing.api.dynobject.JDynObjectComponent, org.gvsig.tools.swing.api.dynobject.dynfield.JDynFieldComponent)
|
||
454 | */
|
||
455 | public void handleValueChanged(JDynFieldComponent field) { |
||
456 | JLabel label = getFieldLabel(field.getDynField());
|
||
457 | this.checkValidation(label, field);
|
||
458 | } |
||
459 | |||
460 | 101 | cordinyana | /**
|
461 | 168 | cmartin | * @param field
|
462 | * @return
|
||
463 | 101 | cordinyana | */
|
464 | 168 | cmartin | protected boolean isValid(JDynFieldComponent field) { |
465 | return field.isValid();
|
||
466 | 93 | cordinyana | } |
467 | 101 | cordinyana | |
468 | |||
469 | 168 | cmartin | /* (non-Javadoc)
|
470 | * @see org.gvsig.tools.swing.api.dynobject.JDynObjectComponent#requestFocus()
|
||
471 | */
|
||
472 | public void requestFocus() { |
||
473 | } |
||
474 | 101 | cordinyana | |
475 | 168 | cmartin | /**
|
476 | * @param mandatoryLabelColor
|
||
477 | * the mandatoryLabelColor to set
|
||
478 | */
|
||
479 | public void setMandatoryLabelColor(Color mandatoryLabelColor) { |
||
480 | this.mandatoryLabelColor = mandatoryLabelColor;
|
||
481 | } |
||
482 | 101 | cordinyana | |
483 | 168 | cmartin | /* (non-Javadoc)
|
484 | * @see org.gvsig.tools.swing.api.dynobject.dynfield.ValueField#setValue(java.lang.Object)
|
||
485 | */
|
||
486 | public void setValue(Object value) { |
||
487 | |||
488 | } |
||
489 | 101 | cordinyana | |
490 | } |