root / tags / v2_0_0_Build_2049 / extensions / org.gvsig.app.document.table.app / org.gvsig.app.document.table.app.mainplugin / src / main / java / org / gvsig / app / project / documents / table / gui / TableProperties.java @ 38497
History | View | Annotate | Download (10.5 KB)
1 | 36443 | cordinyana | /* gvSIG. Geographic Information System of the Valencian Government
|
---|---|---|---|
2 | *
|
||
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 | package org.gvsig.app.project.documents.table.gui; |
||
23 | |||
24 | import java.awt.GridLayout; |
||
25 | |||
26 | import javax.swing.JComponent; |
||
27 | import javax.swing.JPanel; |
||
28 | |||
29 | import org.gvsig.andami.PluginServices; |
||
30 | import org.gvsig.andami.ui.mdiManager.SingletonWindow; |
||
31 | import org.gvsig.andami.ui.mdiManager.WindowInfo; |
||
32 | import org.gvsig.app.project.documents.table.TableDocument; |
||
33 | import org.gvsig.fmap.mapcontrol.dal.feature.swing.table.FeatureTableConfigurationPanel; |
||
34 | import org.gvsig.gui.beans.AcceptCancelPanel; |
||
35 | |||
36 | /**
|
||
37 | * Table properties dialog.
|
||
38 | *
|
||
39 | * @author 2004-2005 Fernando Gonz?lez Cort?s
|
||
40 | * @author 2005- Vicente Caballero
|
||
41 | * @author 2009- <a href="cordinyana@gvsig.org">C?sar Ordi?ana</a> - gvSIG team
|
||
42 | */
|
||
43 | public class TableProperties extends JPanel implements SingletonWindow { |
||
44 | |||
45 | /**
|
||
46 | *
|
||
47 | */
|
||
48 | private static final long serialVersionUID = -3280622997496976100L; |
||
49 | |||
50 | private javax.swing.JLabel jLabel = null; |
||
51 | private javax.swing.JTextField txtName = null; |
||
52 | private javax.swing.JLabel jLabel1 = null; |
||
53 | private javax.swing.JTextField txtDate = null; |
||
54 | private javax.swing.JTextField txtOwner = null; |
||
55 | private javax.swing.JLabel jLabel2 = null; |
||
56 | private javax.swing.JLabel jLabel3 = null; |
||
57 | private javax.swing.JScrollPane jScrollPane = null; |
||
58 | private javax.swing.JTextArea txtComments = null; |
||
59 | private TableDocument tableDocument;
|
||
60 | private AcceptCancelPanel okCancelPanel = null; |
||
61 | private javax.swing.JPanel jPanel = null; |
||
62 | private javax.swing.JPanel jPanel1 = null; |
||
63 | |||
64 | 38408 | cordinyana | private FeatureTableConfigurationPanel configPanel;
|
65 | 36443 | cordinyana | |
66 | /**
|
||
67 | * This is the default constructor
|
||
68 | *
|
||
69 | * @param f
|
||
70 | * Frame padre del di?logo
|
||
71 | * @param t
|
||
72 | * Tabla que se representa en el di?logo
|
||
73 | */
|
||
74 | public TableProperties(TableDocument t) {
|
||
75 | tableDocument = t; |
||
76 | initialize(); |
||
77 | } |
||
78 | |||
79 | /**
|
||
80 | * This method initializes this
|
||
81 | */
|
||
82 | private void initialize() { |
||
83 | |||
84 | java.awt.FlowLayout layFlowLayout7 = new java.awt.FlowLayout();
|
||
85 | layFlowLayout7.setHgap(0);
|
||
86 | setLayout(layFlowLayout7); |
||
87 | add(getJPanel(), null);
|
||
88 | add(getJPanel1(), null);
|
||
89 | add(getJLabel3(), null);
|
||
90 | add(getJScrollPane(), null);
|
||
91 | add(getTableConfigurationPanel(), null);
|
||
92 | add(getOkCancelPanel(), null);
|
||
93 | // add(getBtnOk(), null);
|
||
94 | // add(getJLabel4(), null);
|
||
95 | // add(getBtnCancel(), null);
|
||
96 | |||
97 | txtName.setText(tableDocument.getName()); |
||
98 | txtDate.setText(tableDocument.getCreationDate()); |
||
99 | txtOwner.setText(tableDocument.getOwner()); |
||
100 | txtComments.setText(tableDocument.getComment()); |
||
101 | |||
102 | // TODO: provisional hasta que revisemos lo del mapeado de campos.
|
||
103 | // tabla.setVisible(true);
|
||
104 | // tabla.getTableHeader().setVisible(true);
|
||
105 | } |
||
106 | |||
107 | /**
|
||
108 | * This method initializes jLabel
|
||
109 | *
|
||
110 | * @return javax.swing.JLabel
|
||
111 | */
|
||
112 | private javax.swing.JLabel getJLabel() {
|
||
113 | if (jLabel == null) { |
||
114 | jLabel = new javax.swing.JLabel();
|
||
115 | jLabel.setText(PluginServices.getText(this, "nombre") + ":"); |
||
116 | } |
||
117 | |||
118 | return jLabel;
|
||
119 | } |
||
120 | |||
121 | /**
|
||
122 | * This method initializes txtName
|
||
123 | *
|
||
124 | * @return javax.swing.JTextField
|
||
125 | */
|
||
126 | private javax.swing.JTextField getTxtName() {
|
||
127 | if (txtName == null) { |
||
128 | txtName = new javax.swing.JTextField();
|
||
129 | txtName.setPreferredSize(new java.awt.Dimension(190, 20)); |
||
130 | } |
||
131 | |||
132 | return txtName;
|
||
133 | } |
||
134 | |||
135 | /**
|
||
136 | * This method initializes jLabel1
|
||
137 | *
|
||
138 | * @return javax.swing.JLabel
|
||
139 | */
|
||
140 | private javax.swing.JLabel getJLabel1() {
|
||
141 | if (jLabel1 == null) { |
||
142 | jLabel1 = new javax.swing.JLabel();
|
||
143 | jLabel1 |
||
144 | .setText(PluginServices.getText(this, "creation_date") + ":"); |
||
145 | } |
||
146 | |||
147 | return jLabel1;
|
||
148 | } |
||
149 | |||
150 | /**
|
||
151 | * This method initializes txtDate
|
||
152 | *
|
||
153 | * @return javax.swing.JTextField
|
||
154 | */
|
||
155 | private javax.swing.JTextField getTxtDate() {
|
||
156 | if (txtDate == null) { |
||
157 | txtDate = new javax.swing.JTextField();
|
||
158 | txtDate.setPreferredSize(new java.awt.Dimension(190, 20)); |
||
159 | txtDate.setEditable(false);
|
||
160 | txtDate.setBackground(java.awt.Color.white); |
||
161 | } |
||
162 | |||
163 | return txtDate;
|
||
164 | } |
||
165 | |||
166 | /**
|
||
167 | * This method initializes txtOwner
|
||
168 | *
|
||
169 | * @return javax.swing.JTextField
|
||
170 | */
|
||
171 | private javax.swing.JTextField getTxtOwner() {
|
||
172 | if (txtOwner == null) { |
||
173 | txtOwner = new javax.swing.JTextField();
|
||
174 | txtOwner.setPreferredSize(new java.awt.Dimension(190, 20)); |
||
175 | } |
||
176 | |||
177 | return txtOwner;
|
||
178 | } |
||
179 | |||
180 | /**
|
||
181 | * This method initializes jLabel2
|
||
182 | *
|
||
183 | * @return javax.swing.JLabel
|
||
184 | */
|
||
185 | private javax.swing.JLabel getJLabel2() {
|
||
186 | if (jLabel2 == null) { |
||
187 | jLabel2 = new javax.swing.JLabel();
|
||
188 | jLabel2.setText(PluginServices.getText(this, "owner") + ":"); |
||
189 | } |
||
190 | |||
191 | return jLabel2;
|
||
192 | } |
||
193 | |||
194 | /**
|
||
195 | * This method initializes jLabel3
|
||
196 | *
|
||
197 | * @return javax.swing.JLabel
|
||
198 | */
|
||
199 | private javax.swing.JLabel getJLabel3() {
|
||
200 | if (jLabel3 == null) { |
||
201 | jLabel3 = new javax.swing.JLabel();
|
||
202 | jLabel3.setText(PluginServices.getText(this, "comentarios") + ":"); |
||
203 | jLabel3.setPreferredSize(new java.awt.Dimension(320, 16)); |
||
204 | } |
||
205 | |||
206 | return jLabel3;
|
||
207 | } |
||
208 | |||
209 | /**
|
||
210 | * This method initializes jScrollPane
|
||
211 | *
|
||
212 | * @return javax.swing.JScrollPane
|
||
213 | */
|
||
214 | private javax.swing.JScrollPane getJScrollPane() {
|
||
215 | if (jScrollPane == null) { |
||
216 | jScrollPane = new javax.swing.JScrollPane();
|
||
217 | jScrollPane.setViewportView(getTxtComments()); |
||
218 | jScrollPane.setPreferredSize(new java.awt.Dimension(320, 70)); |
||
219 | } |
||
220 | |||
221 | return jScrollPane;
|
||
222 | } |
||
223 | |||
224 | /**
|
||
225 | * This method initializes txtComments
|
||
226 | *
|
||
227 | * @return javax.swing.JTextArea
|
||
228 | */
|
||
229 | private javax.swing.JTextArea getTxtComments() {
|
||
230 | if (txtComments == null) { |
||
231 | txtComments = new javax.swing.JTextArea();
|
||
232 | } |
||
233 | |||
234 | return txtComments;
|
||
235 | } |
||
236 | |||
237 | 38408 | cordinyana | private FeatureTableConfigurationPanel getTableConfigurationPanel() {
|
238 | 36443 | cordinyana | if (configPanel == null) { |
239 | configPanel = |
||
240 | 36478 | cordinyana | new FeatureTableConfigurationPanel(tableDocument
|
241 | .getFeatureStoreModel().getCurrentFeatureTableModel()); |
||
242 | 36443 | cordinyana | } |
243 | return configPanel;
|
||
244 | } |
||
245 | |||
246 | private AcceptCancelPanel getOkCancelPanel() {
|
||
247 | if (okCancelPanel == null) { |
||
248 | okCancelPanel = |
||
249 | new AcceptCancelPanel(new java.awt.event.ActionListener() { |
||
250 | |||
251 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
252 | tableDocument.setName(txtName.getText()); |
||
253 | tableDocument.setCreationDate(txtDate.getText()); |
||
254 | tableDocument.setOwner(txtOwner.getText()); |
||
255 | tableDocument.setComment(txtComments.getText()); |
||
256 | 38408 | cordinyana | |
257 | getTableConfigurationPanel().accept(); |
||
258 | 36443 | cordinyana | |
259 | PluginServices.getMDIManager().closeWindow( |
||
260 | TableProperties.this); |
||
261 | } |
||
262 | }, new java.awt.event.ActionListener() {
|
||
263 | |||
264 | public void actionPerformed(java.awt.event.ActionEvent e) { |
||
265 | 38408 | cordinyana | |
266 | getTableConfigurationPanel().cancel(); |
||
267 | |||
268 | 36443 | cordinyana | PluginServices.getMDIManager().closeWindow( |
269 | TableProperties.this); |
||
270 | } |
||
271 | }); |
||
272 | okCancelPanel.setPreferredSize(new java.awt.Dimension(339, 30)); |
||
273 | } |
||
274 | return okCancelPanel;
|
||
275 | } |
||
276 | |||
277 | /**
|
||
278 | * This method initializes jPanel
|
||
279 | *
|
||
280 | * @return javax.swing.JPanel
|
||
281 | */
|
||
282 | private javax.swing.JPanel getJPanel() {
|
||
283 | if (jPanel == null) { |
||
284 | jPanel = new javax.swing.JPanel();
|
||
285 | |||
286 | /*
|
||
287 | * java.awt.FlowLayout layFlowLayout9 = new java.awt.FlowLayout();
|
||
288 | * layFlowLayout9.setAlignment(java.awt.FlowLayout.LEFT);
|
||
289 | * layFlowLayout9.setVgap(9);
|
||
290 | * jPanel.setLayout(layFlowLayout9);
|
||
291 | */
|
||
292 | |||
293 | GridLayout layout = new GridLayout(3, 1); |
||
294 | layout.setVgap(5);
|
||
295 | jPanel.setLayout(layout); |
||
296 | |||
297 | jPanel.add(getJLabel(), null);
|
||
298 | jPanel.add(getJLabel1(), null);
|
||
299 | jPanel.add(getJLabel2(), null);
|
||
300 | jPanel.setPreferredSize(new java.awt.Dimension(130, 80)); |
||
301 | } |
||
302 | |||
303 | return jPanel;
|
||
304 | } |
||
305 | |||
306 | /**
|
||
307 | * This method initializes jPanel1
|
||
308 | *
|
||
309 | * @return javax.swing.JPanel
|
||
310 | */
|
||
311 | private javax.swing.JPanel getJPanel1() {
|
||
312 | if (jPanel1 == null) { |
||
313 | jPanel1 = new javax.swing.JPanel();
|
||
314 | |||
315 | java.awt.FlowLayout layFlowLayout8 = new java.awt.FlowLayout();
|
||
316 | layFlowLayout8.setAlignment(java.awt.FlowLayout.LEFT); |
||
317 | jPanel1.setLayout(layFlowLayout8); |
||
318 | jPanel1.add(getTxtName(), null);
|
||
319 | jPanel1.add(getTxtDate(), null);
|
||
320 | jPanel1.add(getTxtOwner(), null);
|
||
321 | jPanel1.setPreferredSize(new java.awt.Dimension(200, 80)); |
||
322 | } |
||
323 | |||
324 | return jPanel1;
|
||
325 | } |
||
326 | |||
327 | /**
|
||
328 | * @see com.iver.mdiApp.ui.MDIManager.IWindow#getWindowInfo()
|
||
329 | */
|
||
330 | public WindowInfo getWindowInfo() {
|
||
331 | WindowInfo m_viewinfo = new WindowInfo();
|
||
332 | m_viewinfo.setTitle(PluginServices.getText(this, "propiedades_tabla")); |
||
333 | m_viewinfo.setWidth(349);
|
||
334 | m_viewinfo.setHeight(375);
|
||
335 | |||
336 | return m_viewinfo;
|
||
337 | } |
||
338 | |||
339 | /**
|
||
340 | * @see org.gvsig.andami.ui.mdiManager.SingletonWindow#getWindowModel()
|
||
341 | */
|
||
342 | public Object getWindowModel() { |
||
343 | return tableDocument;
|
||
344 | } |
||
345 | |||
346 | public Object getWindowProfile() { |
||
347 | return WindowInfo.PROPERTIES_PROFILE;
|
||
348 | } |
||
349 | } |