Revision 7368

View differences:

org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/pom.xml
1
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2
  <modelVersion>4.0.0</modelVersion>
3
  <parent>
4
    <groupId>org.gvsig</groupId>
5
    <artifactId>org.gvsig.vcsgis</artifactId>
6
    <version>1.0.81</version>
7
  </parent>
8
  <artifactId>org.gvsig.vcsgis.app</artifactId>
9
  <packaging>pom</packaging>
10
  <name>${project.artifactId}</name>
11
  <modules>
12
    <module>org.gvsig.vcsgis.app.mainplugin</module>
13
    <module>org.gvsig.vcsgis.app.server</module>
14
  </modules>
15

  
16
</project>
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/buildNumber.properties
1
#Sun Nov 06 23:41:10 CET 2022
2
buildNumber=91
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/assembly/gvsig-plugin-package.xml
1
<!-- gvSIG. Desktop Geographic Information System. Copyright (C) 2007-2013 gvSIG
2
  Association. This program is free software; you can redistribute it and/or modify
3
  it under the terms of the GNU General Public License as published by the Free Software
4
  Foundation; either version 3 of the License, or (at your option) any later version.
5
  This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
6
  without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
7
  PURPOSE. See the GNU General Public License for more details. You should have received
8
  a copy of the GNU General Public License along with this program; if not, write to
9
  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
10
  USA. For any additional information, do not hesitate to contact us at info AT gvsig.com,
11
  or visit our website www.gvsig.com. -->
12
<assembly>
13
  <id>gvsig-plugin-package</id>
14
  <formats>
15
    <format>zip</format>
16
  </formats>
17
  <baseDirectory>${project.artifactId}</baseDirectory>
18
  <includeBaseDirectory>true</includeBaseDirectory>
19
  <files>
20
    <file>
21
      <source>target/${project.artifactId}-${project.version}.jar</source>
22
      <outputDirectory>lib</outputDirectory>
23
    </file>
24
    <file>
25
      <source>target/package.info</source>
26
    </file>
27
  </files>
28

  
29
  <fileSets>
30
    <fileSet>
31
      <directory>src/main/resources-plugin</directory>
32
      <outputDirectory>.</outputDirectory>
33
    </fileSet>
34
  </fileSets>
35

  
36

  
37
  <dependencySets>
38
    <dependencySet>
39
      <useProjectArtifact>false</useProjectArtifact>
40
      <useTransitiveDependencies>false</useTransitiveDependencies>
41
      <outputDirectory>lib</outputDirectory>
42
      <includes>
43
        <include>org.gvsig:org.gvsig.vcsgis.lib.api</include>
44
        <include>org.gvsig:org.gvsig.vcsgis.lib.impl</include>
45
        <include>org.gvsig:org.gvsig.vcsgis.swing.api</include>
46
        <include>org.gvsig:org.gvsig.vcsgis.swing.impl</include>
47
        <include>javax.servlet:javax.servlet-api</include>
48
        
49
      </includes>
50
    </dependencySet>
51
  </dependencySets>
52

  
53
</assembly>
54

  
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/VCSGisDialogsHelper.java
1
/*
2
 * gvSIG. Desktop Geographic Information System.
3
 * 
4
 * Copyright (C) 2007-2020 gvSIG Association.
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 3
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, see <https://www.gnu.org/licenses/>. 
18
 * 
19
 * For any additional information, do not hesitate to contact us
20
 * at info AT gvsig.com, or visit our website www.gvsig.com.
21
 */
22

  
23
package org.gvsig.vcsgis.app;
24

  
25
import java.awt.event.ActionEvent;
26
import java.awt.event.ComponentAdapter;
27
import java.awt.event.ComponentEvent;
28
import java.util.HashMap;
29
import java.util.Map;
30
import javax.swing.JPanel;
31
import javax.swing.SwingUtilities;
32
import org.gvsig.andami.ui.mdiManager.IWindow;
33
import org.gvsig.andami.ui.mdiManager.MDIManager;
34
import org.gvsig.app.ApplicationLocator;
35
import org.gvsig.tools.ToolsLocator;
36
import org.gvsig.tools.i18n.I18nManager;
37
import org.gvsig.tools.swing.api.Component;
38
import org.gvsig.tools.swing.api.ToolsSwingLocator;
39
import org.gvsig.tools.swing.api.windowmanager.Dialog;
40
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
41
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2;
42
import org.gvsig.vcsgis.swing.VCSGisPanel;
43
import org.slf4j.Logger;
44
import org.slf4j.LoggerFactory;
45

  
46
/**
47
 *
48
 * @author gvSIG Team
49
 */
50
public class VCSGisDialogsHelper {
51
    private static final Logger LOGGER = LoggerFactory.getLogger(VCSGisDialogsHelper.class);
52

  
53
    public static class VCSGisDialogInfo {
54

  
55
        private VCSGisPanel panel;
56
        private final String name;
57
        private final String title;
58
        private String header;
59
        private String okLabel;
60
        private boolean closed;
61
        private Runnable action;
62
        private Dialog dialog;
63
        private boolean autoclose;
64

  
65
        public VCSGisDialogInfo(String name, VCSGisPanel thePanel, String title) {
66
            this.name = name;
67
            this.panel = thePanel;
68
            this.title = title;
69
            this.closed = true;
70
            this.autoclose = false;
71

  
72
            this.panel.asJComponent().addComponentListener(new ComponentAdapter() {
73
                @Override
74
                public void componentHidden(ComponentEvent e) {
75
                    closed = true;
76
                }
77
            });
78
        }
79
        
80
        public VCSGisDialogInfo(String name, VCSGisPanel thePanel, String title, String header, String okLabel) {
81
            this(name, thePanel, title);
82
            this.header = header;
83
            this.okLabel = okLabel;
84
        }
85

  
86
        private void performDialogAction() {
87
            action.run();
88
        }
89

  
90
        public void setAction(Runnable action) {
91
            this.action = action;
92
        }
93

  
94
        public Component getPanel() {
95
            return this.panel;
96
        }
97

  
98
        public boolean isClosed() {
99
            return this.closed;
100
        }
101

  
102
        public String getName() {
103
            return this.name;
104
        }
105

  
106
        public void setAutoclose(boolean autoclose) {
107
            this.autoclose = autoclose;
108
        }
109
        
110
        private Dialog createDialog() {
111
            I18nManager i18n = ToolsLocator.getI18nManager();
112
            WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
113

  
114
            Dialog theDialog = winManager.createDialog(
115
                    this.panel.asJComponent(),
116
                    i18n.getTranslation(title),
117
                    i18n.getTranslation(header),
118
                    WindowManager_v2.BUTTONS_OK_CANCEL
119
            );
120
            theDialog.setAutoclose(false);
121

  
122
            this.panel.setDialog(theDialog);
123
            theDialog.setButtonLabel(
124
                    WindowManager_v2.BUTTON_OK,
125
                    i18n.getTranslation(okLabel)
126
            );
127
            theDialog.setButtonLabel(
128
                    WindowManager_v2.BUTTON_CANCEL,
129
                    i18n.getTranslation("_Close")
130
            );
131
            if (this.panel.isProcessing()) {
132
                theDialog.setButtonEnabled(WindowManager_v2.BUTTON_OK, false);
133
            }
134
            theDialog.addActionListener((ActionEvent e) -> {
135
                switch (theDialog.getAction()) {
136
                    case WindowManager_v2.BUTTON_OK:
137
                        Thread task = new Thread(() -> {
138
                            if(this.autoclose){
139
                                this.dialog.setButtonEnabled(WindowManager_v2.BUTTON_OK, false);
140
                            }
141
                            performDialogAction();
142
                            if(this.autoclose){
143
                                close();
144
                            }
145
                        }, "VCSGis" + name);
146
                        task.start();
147
                        break;
148
                    case WindowManager_v2.BUTTON_CANCEL:
149
                        close();
150
                        break;
151
                }
152
            });
153
            return theDialog;
154
        }
155

  
156
        public void show() {
157
            if (!this.closed) {
158
                MDIManager manager = ApplicationLocator.getApplicationManager().getUIManager();
159
                manager.moveToFrom(manager.getWindow((JPanel) this.panel.asJComponent()));
160
                return;
161
            }
162
            this.closed = false;
163
            if( this.action==null ) {
164
                I18nManager i18n = ToolsLocator.getI18nManager();
165
                WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
166
                winManager.showWindow(
167
                        this.panel.asJComponent(),
168
                        i18n.getTranslation(this.title),
169
                        WindowManager.MODE.WINDOW
170
                );
171
            } else {
172
                this.dialog = this.createDialog();
173
                this.dialog.show(WindowManager.MODE.WINDOW);
174
            }
175
        }
176
        
177
        private void close() {
178
            if (this.closed || this.dialog == null) {
179
                this.panel = null;
180
                this.dialog = null;
181
                return;
182
            }
183
            if(!SwingUtilities.isEventDispatchThread()){
184
                SwingUtilities.invokeLater(this::close);
185
                return;
186
            }
187
            this.dialog.asJComponent().setVisible(false);     
188
            this.panel = null;
189
            this.dialog = null;
190
        }
191
    }
192

  
193
    private Map<String, VCSGisDialogInfo> dialogsInfo;
194

  
195
    public VCSGisDialogInfo getDialog(String name) {
196
        if (this.dialogsInfo == null) {
197
            return null;
198
        }
199
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
200
        return info;
201
    }
202

  
203
    public VCSGisDialogInfo getOrCreateDialog(String name, VCSGisPanel panel, String title, String header, String okLabel, Runnable action) {
204
        if (this.dialogsInfo == null) {
205
            this.dialogsInfo = new HashMap<>();
206
        }
207
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
208
        if (info == null || info.isClosed() ) {
209
            info = new VCSGisDialogInfo(name, panel, title, header, okLabel);
210
            info.setAction(action);
211
            this.dialogsInfo.put(name, info);
212
        }
213
        return info;
214
    }
215

  
216
    public VCSGisDialogInfo getOrCreateDialog(String name, VCSGisPanel panel, String title) {
217
        if (this.dialogsInfo == null) {
218
            this.dialogsInfo = new HashMap<>();
219
        }
220
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
221
        if (info == null || info.isClosed()) {
222
            info = new VCSGisDialogInfo(name, panel, title);
223
            this.dialogsInfo.put(name, info);
224
        }
225
        return info;
226
    }
227

  
228
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/preferencespages/VCSGisPage.java
1
/*
2
 * To change this license header, choose License Headers in Project Properties.
3
 * To change this template file, choose Tools | Templates
4
 * and open the template in the editor.
5
 */
6
package org.gvsig.vcsgis.app.preferencespages;
7

  
8
import com.jgoodies.forms.layout.CellConstraints;
9
import javax.swing.ImageIcon;
10
import javax.swing.JPanel;
11
import org.gvsig.andami.IconThemeHelper;
12
import org.gvsig.andami.preferences.IPreference;
13
import org.gvsig.andami.preferences.StoreException;
14
import org.gvsig.tools.ToolsLocator;
15
import org.gvsig.tools.i18n.I18nManager;
16
import org.gvsig.tools.swing.api.ToolsSwingLocator;
17
import org.gvsig.tools.swing.api.ToolsSwingManager;
18
import org.gvsig.vcsgis.swing.VCSGisJRegisterWorkspace;
19
import org.gvsig.vcsgis.swing.VCSGisSwingLocator;
20
import org.gvsig.vcsgis.swing.VCSGisSwingManager;
21

  
22
/**
23
 *
24
 * @author jjdelcerro
25
 */
26
public class VCSGisPage extends VCSGisPageView implements IPreference {
27
    //
28
    // The class VCSGisPage can extend from AbstractPreferencePage, not JPanel,
29
    // if recreate it from the GUI builder change te class declaration to:
30
    //    public abstract class VCSGisPageView extends AbstractPreferencePage
31

  
32
    private ImageIcon icon;
33
    public static String id = VCSGisPage.class.getName();
34

  
35
    public VCSGisPage() {
36
        setParentID("org.gvsig.coreplugin.preferences.general.GeneralPage");
37
        icon = IconThemeHelper.getImageIcon("vcsgis-preferences");
38
        initComponents();
39
    }
40
    
41
    private void initComponents() {
42
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
43

  
44
        this.translateAll();
45

  
46
        VCSGisJRegisterWorkspace workspacesPanel = swingManager.createRegisterWorkspacePanel();
47
        CellConstraints cc = new CellConstraints();
48
        this.gridWorkspaces.add(workspacesPanel.asJComponent(),cc.xy(1,1));        
49
    }
50

  
51
    private void translateAll() {
52
        ToolsSwingManager manager = ToolsSwingLocator.getToolsSwingManager();
53

  
54
        manager.translate(tabPreferences);
55
        manager.translate(chkCurrentDateAsEffectiveDateByDefaultInCommitPanel);
56
        manager.translate(chkEmptyEffectiveDateAllowedInCommitPanel);
57
    }
58
    
59
    @Override
60
    public void storeValues() throws StoreException {
61
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
62
        swingManager.setEmptyEffectiveDateAllowed(this.chkEmptyEffectiveDateAllowedInCommitPanel.isSelected());
63
        swingManager.setCurrentDateAsEffectiveDateByDefault(this.chkCurrentDateAsEffectiveDateByDefaultInCommitPanel.isSelected());
64
    }
65

  
66
    @Override
67
    public void setChangesApplied() {
68
    }
69

  
70
    @Override
71
    public String getID() {
72
        return id;
73
    }
74

  
75
    @Override
76
    public String getTitle() {
77
        I18nManager i18nManager = ToolsLocator.getI18nManager();
78
        return i18nManager.getTranslation("_VCSGis");
79
    }
80

  
81
    @Override
82
    public JPanel getPanel() {
83
        return this;
84
    }
85

  
86
    @Override
87
    public void initializeValues() {
88
    }
89

  
90
    @Override
91
    public void initializeDefaults() {
92
    }
93

  
94
    @Override
95
    public ImageIcon getIcon() {
96
        return this.icon;
97
    }
98

  
99
    @Override
100
    public boolean isValueChanged() {
101
        return true;
102
    }
103
   
104
    @Override
105
    public boolean isResizeable() {
106
        return true;
107
    }
108
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/preferencespages/VCSGisPageView.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2

  
3
<object classname="com.jeta.forms.store.memento.FormPackage">
4
 <at name="fileversion">
5
  <object classname="com.jeta.forms.store.memento.FormsVersion2">
6
   <at name="major">2</at>
7
   <at name="minor">0</at>
8
   <at name="sub">0</at>
9
  </object>
10
 </at>
11
 <at name="form">
12
  <object classname="com.jeta.forms.store.memento.FormMemento">
13
   <super classname="com.jeta.forms.store.memento.ComponentMemento">
14
    <at name="cellconstraints">
15
     <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
16
      <at name="column">1</at>
17
      <at name="row">1</at>
18
      <at name="colspan">1</at>
19
      <at name="rowspan">1</at>
20
      <at name="halign">default</at>
21
      <at name="valign">default</at>
22
      <at name="insets" object="insets">0,0,0,0</at>
23
     </object>
24
    </at>
25
    <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
26
   </super>
27
   <at name="id">/home/jjdelcerro/datos/devel/org.gvsig.vcsgis/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/preferencespages/VCSGisPageView.xml</at>
28
   <at name="rowspecs">CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE</at>
29
   <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
30
   <at name="components">
31
    <object classname="java.util.LinkedList">
32
     <item >
33
      <at name="value">
34
       <object classname="com.jeta.forms.store.memento.BeanMemento">
35
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
36
         <at name="cellconstraints">
37
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
38
           <at name="column">2</at>
39
           <at name="row">2</at>
40
           <at name="colspan">1</at>
41
           <at name="rowspan">1</at>
42
           <at name="halign">default</at>
43
           <at name="valign">default</at>
44
           <at name="insets" object="insets">0,0,0,0</at>
45
          </object>
46
         </at>
47
         <at name="componentclass">com.jeta.forms.gui.form.FormContainerComponent</at>
48
        </super>
49
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
50
        <at name="beanclass">javax.swing.JTabbedPane</at>
51
        <at name="beanproperties">
52
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
53
          <at name="classname">javax.swing.JTabbedPane</at>
54
          <at name="properties">
55
           <object classname="com.jeta.forms.store.support.PropertyMap">
56
            <at name="border">
57
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
58
              <super classname="com.jeta.forms.store.properties.BorderProperty">
59
               <at name="name">border</at>
60
              </super>
61
              <at name="borders">
62
               <object classname="java.util.LinkedList">
63
                <item >
64
                 <at name="value">
65
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
66
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
67
                    <at name="name">border</at>
68
                   </super>
69
                  </object>
70
                 </at>
71
                </item>
72
               </object>
73
              </at>
74
             </object>
75
            </at>
76
            <at name="componentCount">2</at>
77
            <at name="name">tabPreferences</at>
78
            <at name="tabs">
79
             <object classname="com.jeta.forms.store.properties.TabbedPaneProperties">
80
              <at name="name">tabs</at>
81
              <at name="items">
82
               <object classname="java.util.LinkedList">
83
                <item >
84
                 <at name="value">
85
                  <object classname="com.jeta.forms.store.properties.TabProperty">
86
                   <at name="name">tab</at>
87
                   <at name="title">_Changes_panel</at>
88
                   <at name="icon">
89
                    <object classname="com.jeta.forms.store.properties.IconProperty">
90
                     <at name="embedded">false</at>
91
                     <at name="width">0</at>
92
                     <at name="height">0</at>
93
                    </object>
94
                   </at>
95
                   <at name="form">
96
                    <object classname="com.jeta.forms.store.memento.FormMemento">
97
                     <super classname="com.jeta.forms.store.memento.ComponentMemento">
98
                      <at name="cellconstraints">
99
                       <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
100
                        <at name="column">1</at>
101
                        <at name="row">1</at>
102
                        <at name="colspan">1</at>
103
                        <at name="rowspan">1</at>
104
                        <at name="halign">default</at>
105
                        <at name="valign">default</at>
106
                        <at name="insets" object="insets">0,0,0,0</at>
107
                       </object>
108
                      </at>
109
                      <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
110
                     </super>
111
                     <at name="id">embedded.495075291</at>
112
                     <at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:4DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at>
113
                     <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
114
                     <at name="components">
115
                      <object classname="java.util.LinkedList">
116
                       <item >
117
                        <at name="value">
118
                         <object classname="com.jeta.forms.store.memento.BeanMemento">
119
                          <super classname="com.jeta.forms.store.memento.ComponentMemento">
120
                           <at name="cellconstraints">
121
                            <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
122
                             <at name="column">2</at>
123
                             <at name="row">2</at>
124
                             <at name="colspan">1</at>
125
                             <at name="rowspan">1</at>
126
                             <at name="halign">default</at>
127
                             <at name="valign">default</at>
128
                             <at name="insets" object="insets">0,0,0,0</at>
129
                            </object>
130
                           </at>
131
                           <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
132
                          </super>
133
                          <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
134
                          <at name="beanclass">javax.swing.JCheckBox</at>
135
                          <at name="beanproperties">
136
                           <object classname="com.jeta.forms.store.memento.PropertiesMemento">
137
                            <at name="classname">javax.swing.JCheckBox</at>
138
                            <at name="properties">
139
                             <object classname="com.jeta.forms.store.support.PropertyMap">
140
                              <at name="border">
141
                               <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
142
                                <super classname="com.jeta.forms.store.properties.BorderProperty">
143
                                 <at name="name">border</at>
144
                                </super>
145
                                <at name="borders">
146
                                 <object classname="java.util.LinkedList">
147
                                  <item >
148
                                   <at name="value">
149
                                    <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
150
                                     <super classname="com.jeta.forms.store.properties.BorderProperty">
151
                                      <at name="name">border</at>
152
                                     </super>
153
                                    </object>
154
                                   </at>
155
                                  </item>
156
                                 </object>
157
                                </at>
158
                               </object>
159
                              </at>
160
                              <at name="actionCommand">_Use_of_empty_effective_date_is_allowed</at>
161
                              <at name="name">chkEmptyEffectiveDateAllowedInCommitPanel</at>
162
                              <at name="width">1419</at>
163
                              <at name="text">_Use_of_empty_effective_date_is_allowed</at>
164
                              <at name="height">18</at>
165
                             </object>
166
                            </at>
167
                           </object>
168
                          </at>
169
                         </object>
170
                        </at>
171
                       </item>
172
                       <item >
173
                        <at name="value">
174
                         <object classname="com.jeta.forms.store.memento.BeanMemento">
175
                          <super classname="com.jeta.forms.store.memento.ComponentMemento">
176
                           <at name="cellconstraints">
177
                            <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
178
                             <at name="column">2</at>
179
                             <at name="row">4</at>
180
                             <at name="colspan">1</at>
181
                             <at name="rowspan">1</at>
182
                             <at name="halign">default</at>
183
                             <at name="valign">default</at>
184
                             <at name="insets" object="insets">0,0,0,0</at>
185
                            </object>
186
                           </at>
187
                           <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
188
                          </super>
189
                          <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
190
                          <at name="beanclass">javax.swing.JCheckBox</at>
191
                          <at name="beanproperties">
192
                           <object classname="com.jeta.forms.store.memento.PropertiesMemento">
193
                            <at name="classname">javax.swing.JCheckBox</at>
194
                            <at name="properties">
195
                             <object classname="com.jeta.forms.store.support.PropertyMap">
196
                              <at name="border">
197
                               <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
198
                                <super classname="com.jeta.forms.store.properties.BorderProperty">
199
                                 <at name="name">border</at>
200
                                </super>
201
                                <at name="borders">
202
                                 <object classname="java.util.LinkedList">
203
                                  <item >
204
                                   <at name="value">
205
                                    <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
206
                                     <super classname="com.jeta.forms.store.properties.BorderProperty">
207
                                      <at name="name">border</at>
208
                                     </super>
209
                                    </object>
210
                                   </at>
211
                                  </item>
212
                                 </object>
213
                                </at>
214
                               </object>
215
                              </at>
216
                              <at name="actionCommand">_Use_current_date_as_effective_date_by_default</at>
217
                              <at name="name">chkCurrentDateAsEffectiveDateByDefaultInCommitPanel</at>
218
                              <at name="width">1419</at>
219
                              <at name="text">_Use_current_date_as_effective_date_by_default</at>
220
                              <at name="height">18</at>
221
                             </object>
222
                            </at>
223
                           </object>
224
                          </at>
225
                         </object>
226
                        </at>
227
                       </item>
228
                      </object>
229
                     </at>
230
                     <at name="properties">
231
                      <object classname="com.jeta.forms.store.memento.PropertiesMemento">
232
                       <at name="classname">com.jeta.forms.gui.form.GridView</at>
233
                       <at name="properties">
234
                        <object classname="com.jeta.forms.store.support.PropertyMap">
235
                         <at name="border">
236
                          <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
237
                           <super classname="com.jeta.forms.store.properties.BorderProperty">
238
                            <at name="name">border</at>
239
                           </super>
240
                           <at name="borders">
241
                            <object classname="java.util.LinkedList"/>
242
                           </at>
243
                          </object>
244
                         </at>
245
                         <at name="name">tabPreferences</at>
246
                         <at name="fill">
247
                          <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
248
                           <at name="name">fill</at>
249
                          </object>
250
                         </at>
251
                         <at name="scollBars">
252
                          <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
253
                           <at name="name">scollBars</at>
254
                           <at name="verticalpolicy">21</at>
255
                           <at name="horizontalpolicy">31</at>
256
                           <at name="border">
257
                            <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
258
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
259
                              <at name="name">border</at>
260
                             </super>
261
                             <at name="borders">
262
                              <object classname="java.util.LinkedList">
263
                               <item >
264
                                <at name="value">
265
                                 <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
266
                                  <super classname="com.jeta.forms.store.properties.BorderProperty">
267
                                   <at name="name">border</at>
268
                                  </super>
269
                                 </object>
270
                                </at>
271
                               </item>
272
                              </object>
273
                             </at>
274
                            </object>
275
                           </at>
276
                          </object>
277
                         </at>
278
                        </object>
279
                       </at>
280
                      </object>
281
                     </at>
282
                     <at name="cellpainters">
283
                      <object classname="com.jeta.forms.store.support.Matrix">
284
                       <at name="rows">
285
                        <object classname="[Ljava.lang.Object;" size="5">
286
                         <at name="item" index="0">
287
                          <object classname="[Ljava.lang.Object;" size="3"/>
288
                         </at>
289
                         <at name="item" index="1">
290
                          <object classname="[Ljava.lang.Object;" size="3"/>
291
                         </at>
292
                         <at name="item" index="2">
293
                          <object classname="[Ljava.lang.Object;" size="3"/>
294
                         </at>
295
                         <at name="item" index="3">
296
                          <object classname="[Ljava.lang.Object;" size="3"/>
297
                         </at>
298
                         <at name="item" index="4">
299
                          <object classname="[Ljava.lang.Object;" size="3"/>
300
                         </at>
301
                        </object>
302
                       </at>
303
                      </object>
304
                     </at>
305
                     <at name="rowgroups">
306
                      <object classname="com.jeta.forms.store.memento.FormGroupSet">
307
                       <at name="groups">
308
                        <object classname="java.util.HashMap"/>
309
                       </at>
310
                      </object>
311
                     </at>
312
                     <at name="colgroups">
313
                      <object classname="com.jeta.forms.store.memento.FormGroupSet">
314
                       <at name="groups">
315
                        <object classname="java.util.HashMap"/>
316
                       </at>
317
                      </object>
318
                     </at>
319
                    </object>
320
                   </at>
321
                  </object>
322
                 </at>
323
                </item>
324
                <item >
325
                 <at name="value">
326
                  <object classname="com.jeta.forms.store.properties.TabProperty">
327
                   <at name="name">tab</at>
328
                   <at name="title">_Working_copies</at>
329
                   <at name="icon">
330
                    <object classname="com.jeta.forms.store.properties.IconProperty">
331
                     <at name="embedded">false</at>
332
                     <at name="width">0</at>
333
                     <at name="height">0</at>
334
                    </object>
335
                   </at>
336
                   <at name="form">
337
                    <object classname="com.jeta.forms.store.memento.FormMemento">
338
                     <super classname="com.jeta.forms.store.memento.ComponentMemento">
339
                      <at name="cellconstraints">
340
                       <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
341
                        <at name="column">1</at>
342
                        <at name="row">1</at>
343
                        <at name="colspan">1</at>
344
                        <at name="rowspan">1</at>
345
                        <at name="halign">default</at>
346
                        <at name="valign">default</at>
347
                        <at name="insets" object="insets">0,0,0,0</at>
348
                       </object>
349
                      </at>
350
                      <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
351
                     </super>
352
                     <at name="id">embedded.1311546835</at>
353
                     <at name="rowspecs">CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE</at>
354
                     <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
355
                     <at name="components">
356
                      <object classname="java.util.LinkedList">
357
                       <item >
358
                        <at name="value">
359
                         <object classname="com.jeta.forms.store.memento.FormMemento">
360
                          <super classname="com.jeta.forms.store.memento.ComponentMemento">
361
                           <at name="cellconstraints">
362
                            <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
363
                             <at name="column">2</at>
364
                             <at name="row">2</at>
365
                             <at name="colspan">1</at>
366
                             <at name="rowspan">1</at>
367
                             <at name="halign">default</at>
368
                             <at name="valign">default</at>
369
                             <at name="insets" object="insets">0,0,0,0</at>
370
                            </object>
371
                           </at>
372
                           <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
373
                          </super>
374
                          <at name="id">embedded.474062580</at>
375
                          <at name="rowspecs">FILL:DEFAULT:GROW(1.0)</at>
376
                          <at name="colspecs">FILL:DEFAULT:GROW(1.0)</at>
377
                          <at name="components">
378
                           <object classname="java.util.LinkedList"/>
379
                          </at>
380
                          <at name="properties">
381
                           <object classname="com.jeta.forms.store.memento.PropertiesMemento">
382
                            <at name="classname">com.jeta.forms.gui.form.GridView</at>
383
                            <at name="properties">
384
                             <object classname="com.jeta.forms.store.support.PropertyMap">
385
                              <at name="border">
386
                               <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
387
                                <super classname="com.jeta.forms.store.properties.BorderProperty">
388
                                 <at name="name">border</at>
389
                                </super>
390
                                <at name="borders">
391
                                 <object classname="java.util.LinkedList"/>
392
                                </at>
393
                               </object>
394
                              </at>
395
                              <at name="name">gridWorkspaces</at>
396
                              <at name="fill">
397
                               <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
398
                                <at name="name">fill</at>
399
                               </object>
400
                              </at>
401
                              <at name="scollBars">
402
                               <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
403
                                <at name="name">scollBars</at>
404
                                <at name="verticalpolicy">21</at>
405
                                <at name="horizontalpolicy">31</at>
406
                                <at name="border">
407
                                 <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
408
                                  <super classname="com.jeta.forms.store.properties.BorderProperty">
409
                                   <at name="name">border</at>
410
                                  </super>
411
                                  <at name="borders">
412
                                   <object classname="java.util.LinkedList">
413
                                    <item >
414
                                     <at name="value">
415
                                      <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
416
                                       <super classname="com.jeta.forms.store.properties.BorderProperty">
417
                                        <at name="name">border</at>
418
                                       </super>
419
                                      </object>
420
                                     </at>
421
                                    </item>
422
                                   </object>
423
                                  </at>
424
                                 </object>
425
                                </at>
426
                               </object>
427
                              </at>
428
                             </object>
429
                            </at>
430
                           </object>
431
                          </at>
432
                          <at name="cellpainters">
433
                           <object classname="com.jeta.forms.store.support.Matrix">
434
                            <at name="rows">
435
                             <object classname="[Ljava.lang.Object;" size="1">
436
                              <at name="item" index="0">
437
                               <object classname="[Ljava.lang.Object;" size="1"/>
438
                              </at>
439
                             </object>
440
                            </at>
441
                           </object>
442
                          </at>
443
                          <at name="rowgroups">
444
                           <object classname="com.jeta.forms.store.memento.FormGroupSet">
445
                            <at name="groups">
446
                             <object classname="java.util.HashMap"/>
447
                            </at>
448
                           </object>
449
                          </at>
450
                          <at name="colgroups">
451
                           <object classname="com.jeta.forms.store.memento.FormGroupSet">
452
                            <at name="groups">
453
                             <object classname="java.util.HashMap"/>
454
                            </at>
455
                           </object>
456
                          </at>
457
                         </object>
458
                        </at>
459
                       </item>
460
                      </object>
461
                     </at>
462
                     <at name="properties">
463
                      <object classname="com.jeta.forms.store.memento.PropertiesMemento">
464
                       <at name="classname">com.jeta.forms.gui.form.GridView</at>
465
                       <at name="properties">
466
                        <object classname="com.jeta.forms.store.support.PropertyMap">
467
                         <at name="border">
468
                          <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
469
                           <super classname="com.jeta.forms.store.properties.BorderProperty">
470
                            <at name="name">border</at>
471
                           </super>
472
                           <at name="borders">
473
                            <object classname="java.util.LinkedList"/>
474
                           </at>
475
                          </object>
476
                         </at>
477
                         <at name="name"/>
478
                         <at name="fill">
479
                          <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
480
                           <at name="name">fill</at>
481
                          </object>
482
                         </at>
483
                         <at name="scollBars">
484
                          <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
485
                           <at name="name">scollBars</at>
486
                           <at name="verticalpolicy">21</at>
487
                           <at name="horizontalpolicy">31</at>
488
                           <at name="border">
489
                            <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
490
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
491
                              <at name="name">border</at>
492
                             </super>
493
                             <at name="borders">
494
                              <object classname="java.util.LinkedList">
495
                               <item >
496
                                <at name="value">
497
                                 <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
498
                                  <super classname="com.jeta.forms.store.properties.BorderProperty">
499
                                   <at name="name">border</at>
500
                                  </super>
501
                                 </object>
502
                                </at>
503
                               </item>
504
                              </object>
505
                             </at>
506
                            </object>
507
                           </at>
508
                          </object>
509
                         </at>
510
                        </object>
511
                       </at>
512
                      </object>
513
                     </at>
514
                     <at name="cellpainters">
515
                      <object classname="com.jeta.forms.store.support.Matrix">
516
                       <at name="rows">
517
                        <object classname="[Ljava.lang.Object;" size="3">
518
                         <at name="item" index="0">
519
                          <object classname="[Ljava.lang.Object;" size="3"/>
520
                         </at>
521
                         <at name="item" index="1">
522
                          <object classname="[Ljava.lang.Object;" size="3"/>
523
                         </at>
524
                         <at name="item" index="2">
525
                          <object classname="[Ljava.lang.Object;" size="3"/>
526
                         </at>
527
                        </object>
528
                       </at>
529
                      </object>
530
                     </at>
531
                     <at name="rowgroups">
532
                      <object classname="com.jeta.forms.store.memento.FormGroupSet">
533
                       <at name="groups">
534
                        <object classname="java.util.HashMap"/>
535
                       </at>
536
                      </object>
537
                     </at>
538
                     <at name="colgroups">
539
                      <object classname="com.jeta.forms.store.memento.FormGroupSet">
540
                       <at name="groups">
541
                        <object classname="java.util.HashMap"/>
542
                       </at>
543
                      </object>
544
                     </at>
545
                    </object>
546
                   </at>
547
                  </object>
548
                 </at>
549
                </item>
550
               </object>
551
              </at>
552
             </object>
553
            </at>
554
            <at name="width">1462</at>
555
            <at name="tabCount">2</at>
556
            <at name="height">878</at>
557
           </object>
558
          </at>
559
         </object>
560
        </at>
561
       </object>
562
      </at>
563
     </item>
564
    </object>
565
   </at>
566
   <at name="properties">
567
    <object classname="com.jeta.forms.store.memento.PropertiesMemento">
568
     <at name="classname">com.jeta.forms.gui.form.GridView</at>
569
     <at name="properties">
570
      <object classname="com.jeta.forms.store.support.PropertyMap">
571
       <at name="border">
572
        <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
573
         <super classname="com.jeta.forms.store.properties.BorderProperty">
574
          <at name="name">border</at>
575
         </super>
576
         <at name="borders">
577
          <object classname="java.util.LinkedList"/>
578
         </at>
579
        </object>
580
       </at>
581
       <at name="name"/>
582
       <at name="fill">
583
        <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
584
         <at name="name">fill</at>
585
        </object>
586
       </at>
587
       <at name="scollBars">
588
        <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
589
         <at name="name">scollBars</at>
590
         <at name="verticalpolicy">21</at>
591
         <at name="horizontalpolicy">31</at>
592
         <at name="border">
593
          <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
594
           <super classname="com.jeta.forms.store.properties.BorderProperty">
595
            <at name="name">border</at>
596
           </super>
597
           <at name="borders">
598
            <object classname="java.util.LinkedList">
599
             <item >
600
              <at name="value">
601
               <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
602
                <super classname="com.jeta.forms.store.properties.BorderProperty">
603
                 <at name="name">border</at>
604
                </super>
605
               </object>
606
              </at>
607
             </item>
608
            </object>
609
           </at>
610
          </object>
611
         </at>
612
        </object>
613
       </at>
614
      </object>
615
     </at>
616
    </object>
617
   </at>
618
   <at name="cellpainters">
619
    <object classname="com.jeta.forms.store.support.Matrix">
620
     <at name="rows">
621
      <object classname="[Ljava.lang.Object;" size="3">
622
       <at name="item" index="0">
623
        <object classname="[Ljava.lang.Object;" size="3"/>
624
       </at>
625
       <at name="item" index="1">
626
        <object classname="[Ljava.lang.Object;" size="3"/>
627
       </at>
628
       <at name="item" index="2">
629
        <object classname="[Ljava.lang.Object;" size="3"/>
630
       </at>
631
      </object>
632
     </at>
633
    </object>
634
   </at>
635
   <at name="rowgroups">
636
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
637
     <at name="groups">
638
      <object classname="java.util.HashMap"/>
639
     </at>
640
    </object>
641
   </at>
642
   <at name="colgroups">
643
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
644
     <at name="groups">
645
      <object classname="java.util.HashMap"/>
646
     </at>
647
    </object>
648
   </at>
649
  </object>
650
 </at>
651
</object>
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/preferencespages/VCSGisPageView.java
1
package org.gvsig.vcsgis.app.preferencespages;
2

  
3
import com.jeta.open.i18n.I18NUtils;
4
import com.jgoodies.forms.layout.CellConstraints;
5
import com.jgoodies.forms.layout.FormLayout;
6
import java.awt.BorderLayout;
7
import java.awt.ComponentOrientation;
8
import java.awt.Container;
9
import java.awt.Dimension;
10
import javax.swing.Box;
11
import javax.swing.ImageIcon;
12
import javax.swing.JCheckBox;
13
import javax.swing.JFrame;
14
import javax.swing.JPanel;
15
import javax.swing.JTabbedPane;
16
import org.gvsig.andami.preferences.AbstractPreferencePage;
17

  
18

  
19
 public abstract class VCSGisPageView extends AbstractPreferencePage
20
{
21
   JTabbedPane tabPreferences = new JTabbedPane();
22
   JPanel tabPreferences1 = new JPanel();
23
   JCheckBox chkEmptyEffectiveDateAllowedInCommitPanel = new JCheckBox();
24
   JCheckBox chkCurrentDateAsEffectiveDateByDefaultInCommitPanel = new JCheckBox();
25
   JPanel gridWorkspaces = new JPanel();
26

  
27
   /**
28
    * Default constructor
29
    */
30
   public VCSGisPageView()
31
   {
32
      initializePanel();
33
   }
34

  
35
   /**
36
    * Adds fill components to empty cells in the first row and first column of the grid.
37
    * This ensures that the grid spacing will be the same as shown in the designer.
38
    * @param cols an array of column indices in the first row where fill components should be added.
39
    * @param rows an array of row indices in the first column where fill components should be added.
40
    */
41
   void addFillComponents( Container panel, int[] cols, int[] rows )
42
   {
43
      Dimension filler = new Dimension(10,10);
44

  
45
      boolean filled_cell_11 = false;
46
      CellConstraints cc = new CellConstraints();
47
      if ( cols.length > 0 && rows.length > 0 )
48
      {
49
         if ( cols[0] == 1 && rows[0] == 1 )
50
         {
51
            /** add a rigid area  */
52
            panel.add( Box.createRigidArea( filler ), cc.xy(1,1) );
53
            filled_cell_11 = true;
54
         }
55
      }
56

  
57
      for( int index = 0; index < cols.length; index++ )
58
      {
59
         if ( cols[index] == 1 && filled_cell_11 )
60
         {
61
            continue;
62
         }
63
         panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) );
64
      }
65

  
66
      for( int index = 0; index < rows.length; index++ )
67
      {
68
         if ( rows[index] == 1 && filled_cell_11 )
69
         {
70
            continue;
71
         }
72
         panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) );
73
      }
74

  
75
   }
76

  
77
   /**
78
    * Helper method to load an image file from the CLASSPATH
79
    * @param imageName the package and name of the file to load relative to the CLASSPATH
80
    * @return an ImageIcon instance with the specified image file
81
    * @throws IllegalArgumentException if the image resource cannot be loaded.
82
    */
83
   public ImageIcon loadImage( String imageName )
84
   {
85
      try
86
      {
87
         ClassLoader classloader = getClass().getClassLoader();
88
         java.net.URL url = classloader.getResource( imageName );
89
         if ( url != null )
90
         {
91
            ImageIcon icon = new ImageIcon( url );
92
            return icon;
93
         }
94
      }
95
      catch( Exception e )
96
      {
97
         e.printStackTrace();
98
      }
99
      throw new IllegalArgumentException( "Unable to load image: " + imageName );
100
   }
101

  
102
   /**
103
    * Method for recalculating the component orientation for 
104
    * right-to-left Locales.
105
    * @param orientation the component orientation to be applied
106
    */
107
   public void applyComponentOrientation( ComponentOrientation orientation )
108
   {
109
      // Not yet implemented...
110
      // I18NUtils.applyComponentOrientation(this, orientation);
111
      super.applyComponentOrientation(orientation);
112
   }
113

  
114
   public JPanel createPanel()
115
   {
116
      JPanel jpanel1 = new JPanel();
117
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE");
118
      CellConstraints cc = new CellConstraints();
119
      jpanel1.setLayout(formlayout1);
120

  
121
      tabPreferences.setName("tabPreferences");
122
      tabPreferences.addTab("_Changes_panel",null,createtabPreferences());
123
      tabPreferences.addTab("_Working_copies",null,createPanel1());
124
      jpanel1.add(tabPreferences,cc.xy(2,2));
125

  
126
      addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3 });
127
      return jpanel1;
128
   }
129

  
130
   public JPanel createtabPreferences()
131
   {
132
      tabPreferences1.setName("tabPreferences");
133
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:4DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE");
134
      CellConstraints cc = new CellConstraints();
135
      tabPreferences1.setLayout(formlayout1);
136

  
137
      chkEmptyEffectiveDateAllowedInCommitPanel.setActionCommand("_Use_of_empty_effective_date_is_allowed");
138
      chkEmptyEffectiveDateAllowedInCommitPanel.setName("chkEmptyEffectiveDateAllowedInCommitPanel");
139
      chkEmptyEffectiveDateAllowedInCommitPanel.setText("_Use_of_empty_effective_date_is_allowed");
140
      tabPreferences1.add(chkEmptyEffectiveDateAllowedInCommitPanel,cc.xy(2,2));
141

  
142
      chkCurrentDateAsEffectiveDateByDefaultInCommitPanel.setActionCommand("_Use_current_date_as_effective_date_by_default");
143
      chkCurrentDateAsEffectiveDateByDefaultInCommitPanel.setName("chkCurrentDateAsEffectiveDateByDefaultInCommitPanel");
144
      chkCurrentDateAsEffectiveDateByDefaultInCommitPanel.setText("_Use_current_date_as_effective_date_by_default");
145
      tabPreferences1.add(chkCurrentDateAsEffectiveDateByDefaultInCommitPanel,cc.xy(2,4));
146

  
147
      addFillComponents(tabPreferences1,new int[]{ 1,2,3 },new int[]{ 1,2,3,4,5 });
148
      return tabPreferences1;
149
   }
150

  
151
   public JPanel createPanel1()
152
   {
153
      JPanel jpanel1 = new JPanel();
154
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE");
155
      CellConstraints cc = new CellConstraints();
156
      jpanel1.setLayout(formlayout1);
157

  
158
      jpanel1.add(creategridWorkspaces(),cc.xy(2,2));
159
      addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3 });
160
      return jpanel1;
161
   }
162

  
163
   public JPanel creategridWorkspaces()
164
   {
165
      gridWorkspaces.setName("gridWorkspaces");
166
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0)","FILL:DEFAULT:GROW(1.0)");
167
      CellConstraints cc = new CellConstraints();
168
      gridWorkspaces.setLayout(formlayout1);
169

  
170
      addFillComponents(gridWorkspaces,new int[]{ 1 },new int[]{ 1 });
171
      return gridWorkspaces;
172
   }
173

  
174
   /**
175
    * Initializer
176
    */
177
   protected void initializePanel()
178
   {
179
      setLayout(new BorderLayout());
180
      add(createPanel(), BorderLayout.CENTER);
181
   }
182

  
183

  
184
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/VCSGisTableInfo.java
1
package org.gvsig.vcsgis.app.addlayer;
2

  
3
import org.gvsig.fmap.dal.DALLocator;
4
import org.gvsig.fmap.dal.DataManager;
5
import org.gvsig.fmap.dal.StoresRepository;
6
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
7
import org.gvsig.fmap.dal.store.jdbc.JDBCStoreParameters;
8
import org.gvsig.fmap.geom.Geometry;
9
import org.gvsig.fmap.geom.type.GeometryType;
10
import org.gvsig.geodb.TableInfo;
11
import org.gvsig.vcsgis.lib.VCSGisEntity;
12

  
13
/**
14
 *
15
 * @author jjdelcerro
16
 */
17
public class VCSGisTableInfo extends TableInfo {
18

  
19
    private VCSGisEntity entity;
20
    
21
    public VCSGisTableInfo(VCSGisEntity entity, JDBCStoreParameters parameters, boolean requireGeometry, boolean isView) {
22
        super(entity.getEntityName(), parameters, requireGeometry, isView);
23
        this.entity = entity;
24
    }
25
    
26
    public VCSGisEntity getEntity() {
27
        return this.entity;
28
    }
29
    
30
    @Override
31
    protected void fetchFromStore() {
32
        if (this.featureType != null) {
33
            return;
34
        }
35
        try {
36
            this.featureType = entity.getFeatureType();
37
            this.table = this.featureType.getTags().getString("Layer.name", this.table);
38
            FeatureAttributeDescriptor attr = this.featureType.getDefaultGeometryAttribute();
39
            if (attr != null) {
40
                GeometryType geomType = attr.getGeomType();
41
                if (geomType != null) {
42
                    if (this.getGeometryType() == Geometry.TYPES.UNKNOWN) {
43
                        this.setGeometryType(geomType.getType());
44
                    }
45
                    if (this.getGeometrySubtype() == Geometry.SUBTYPES.UNKNOWN) {
46
                        this.setGeometrySubtype(geomType.getSubType());
47
                    }
48
                }
49
                if (this.getProjection() == null) {
50
                    this.setProjection(attr.getSRS());
51
                }
52
            }            
53
            if (this.readOnly == null) {
54
                this.readOnly = false; //!store.allowWrite();
55
            }
56

  
57
            // this force calculate some required values of tableinfo
58
            this.getGeomFieldComboModel();
59
            this.getIdFieldComboModel();
60

  
61
        } catch (Exception ex) {
62
            LOGGER.trace("Can't get feature type.", ex); // To allow set break points
63
        } finally {
64

  
65
        }
66

  
67
    }
68
    
69
    public boolean existsDALInfo() {    
70
        return true;
71
    }
72

  
73
    boolean needConnectToModel() {
74
        VCSGisEntity e = this.getEntity();
75
        DataManager dataManager = DALLocator.getDataManager();
76
        StoresRepository globalRepository = dataManager.getStoresRepository();
77
        boolean connected = false;
78
        boolean hasModels = false;
79
        for (String dataModel : e.getDataModelsAsList()) {
80
            if( dataModel==null ) {
81
                continue;
82
            }
83
            hasModels = true;
84
            if( globalRepository.getSubrepository(dataModel)!=null ) {
85
                connected = true;
86
                break;
87
            }
88
        }
89
        if( !hasModels ) {
90
            return false;
91
        }
92
        return !connected;
93
    }
94
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.81/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/AbstractWizardVCSGis.java
1
package org.gvsig.vcsgis.app.addlayer;
2

  
3
import java.awt.BorderLayout;
4
import java.awt.Component;
5
import java.awt.Cursor;
6
import java.awt.event.ActionEvent;
7
import java.net.URL;
8
import java.util.ArrayList;
9
import java.util.Collection;
10
import java.util.HashMap;
11
import java.util.List;
12
import java.util.Map;
13
import java.util.function.Function;
14
import java.util.function.Predicate;
15
import javax.swing.ImageIcon;
16
import javax.swing.JButton;
17
import javax.swing.JCheckBox;
18
import javax.swing.JComboBox;
19
import javax.swing.JComponent;
20
import javax.swing.JLabel;
21
import javax.swing.JList;
22
import javax.swing.JOptionPane;
23
import javax.swing.JTextField;
24
import javax.swing.SwingUtilities;
25
import javax.swing.UIManager;
26
import javax.swing.event.ChangeEvent;
27
import org.apache.commons.io.FilenameUtils;
28
import org.apache.commons.lang3.StringUtils;
29
import org.gvsig.app.gui.WizardPanel;
30
import org.gvsig.expressionevaluator.swing.ExpressionEvaluatorSwingLocator;
31
import org.gvsig.expressionevaluator.swing.ExpressionEvaluatorSwingManager;
32
import org.gvsig.fmap.dal.DataStoreParameters;
33
import org.gvsig.fmap.dal.store.jdbc.JDBCStoreParameters;
34
import org.gvsig.fmap.dal.swing.DALSwingLocator;
35
import org.gvsig.fmap.dal.swing.DataSwingManager;
36
import org.gvsig.fmap.mapcontext.MapContext;
37
import org.gvsig.geodb.TableInfo;
38
import org.gvsig.geodb.TableInfoController;
39
import org.gvsig.tools.ToolsLocator;
40
import org.gvsig.tools.i18n.I18nManager;
41
import org.gvsig.tools.locator.LocatorException;
42
import org.gvsig.tools.swing.api.ToolsSwingLocator;
43
import org.gvsig.tools.swing.api.ToolsSwingManager;
44
import org.gvsig.tools.swing.api.ToolsSwingUtils;
45
import org.gvsig.tools.swing.api.pickercontroller.PickerController;
46
import org.gvsig.tools.swing.api.task.TaskStatusController;
47
import org.gvsig.tools.swing.api.task.TaskStatusSwingManager;
48
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
49
import org.gvsig.tools.swing.api.windowmanager.Dialog;
50
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
51
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2;
52
import org.gvsig.tools.swing.icontheme.IconTheme;
53
import org.gvsig.vcsgis.lib.VCSGisEntity;
54
import static org.gvsig.vcsgis.lib.VCSGisManager.ERR_OK;
55
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspace;
56
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspaceEntity;
57
import org.gvsig.vcsgis.swing.VCSGisEntitySelectorController;
58
import static org.gvsig.vcsgis.swing.VCSGisEntitySelectorController.ACTION_BEGIN_PROCESSING_ID;
59
import static org.gvsig.vcsgis.swing.VCSGisEntitySelectorController.ACTION_CHECK_ID;
60
import static org.gvsig.vcsgis.swing.VCSGisEntitySelectorController.ACTION_END_PROCESSING_ID;
61
import static org.gvsig.vcsgis.swing.VCSGisEntitySelectorController.ACTION_RELOAD_ID;
62
import static org.gvsig.vcsgis.swing.VCSGisEntitySelectorController.ACTION_SELECT_ID;
63
import org.gvsig.vcsgis.swing.VCSGisJInitWorkspace;
64
import org.gvsig.vcsgis.swing.VCSGisSwingLocator;
65
import org.gvsig.vcsgis.swing.VCSGisSwingManager;
66
import org.gvsig.vcsgis.swing.VCSGisSwingServices;
67
import org.slf4j.Logger;
68
import org.slf4j.LoggerFactory;
69

  
70
/**
71
 *
72
 * @author jjdelcerro
73
 */
74
@SuppressWarnings("UseSpecificCatch")
75
public abstract class AbstractWizardVCSGis extends WizardPanel {
76

  
77
    protected static final Logger LOGGER = LoggerFactory.getLogger(AbstractWizardVCSGis.class);
78

  
79
    protected WizardVCSGisViewExtended view;
80
    private PickerController<VCSGisWorkspace> workspacePicker;
81
    protected Map<String, TableInfo> tablesInfo = null;
82
    private boolean processing;
83
    private TaskStatusController taskStatusController;
84
    private TableInfoController tableInfoController;
85
    private VCSGisEntitySelectorController entitySelector;
86

  
87
    private class VCSGisTableInfoController extends TableInfoController {
88
        
89
        public VCSGisTableInfoController(JButton btnDeselectAllColumns, JButton btnSelectAllColumns, JList lstColumns, JTextField txtName, JComboBox cboIdField, JComboBox cboGeometryField, JTextField txtProjection, JButton btnProjection, JTextField txtFilter, JButton btnFilter, JButton btnFilterBookmarks, JButton btnFilterHistory, JButton btnAdvancedProperties, JLabel lblReadOnlyNotification, JComponent pnlCfgActions, JButton btnChangeViewProjection, JCheckBox visible) {
90
            super(btnDeselectAllColumns, btnSelectAllColumns, lstColumns, txtName, cboIdField, cboGeometryField, txtProjection, btnProjection, txtFilter, btnFilter, btnFilterBookmarks, btnFilterHistory, btnAdvancedProperties, lblReadOnlyNotification, pnlCfgActions, btnChangeViewProjection, visible);
91
        }
92

  
93
        @Override
94
        public void put(TableInfo tableInfo) {
95
            if( tableInfo!=null ) {
96
                Boolean v = tableInfo.getVisible();
97
                if( v == null ) {
98
                    VCSGisEntity entity = ((VCSGisTableInfo)tableInfo).getEntity();
99
                    if( entity!=null ) {
100
                        String category = getCategory(entity);
101
                        boolean defaultVisibility = entity.getCategoryTags(category).getBoolean("visibility",true);
102
                        tableInfo.setVisible(defaultVisibility);
103
                    }
104
                }
105
            }
106
            super.put(tableInfo);
107
        }
108

  
109
        @Override
110
        protected void updateLabel(StringBuilder builder) throws LocatorException {
111
            super.updateLabel(builder);
112
            I18nManager i18n = ToolsLocator.getI18nManager();
113
            VCSGisTableInfo info = (VCSGisTableInfo) this.getTableInfo();
114
            if( info.needConnectToModel() ) {
115
                builder.append(" - <b>");
116
                builder.append(i18n.getTranslation("_Connect_to_model_required"));
117
                builder.append(" (");
118
                builder.append(info.getEntity().getDataModels());
119
                builder.append(")</b>");
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff