Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.dynform / org.gvsig.tools.dynform.impl / src / main / java / org / gvsig / tools / dynform / main / Test.java @ 931

History | View | Annotate | Download (5.29 KB)

1
package org.gvsig.tools.dynform.main;
2

    
3
import java.io.InputStream;
4
import java.net.URL;
5
import java.util.ArrayList;
6
import java.util.List;
7
import java.util.Map;
8

    
9
import javax.swing.JFrame;
10
import javax.swing.UIManager;
11

    
12
import org.apache.log4j.PropertyConfigurator;
13
import org.gvsig.tools.ToolsLibrary;
14
import org.gvsig.tools.ToolsLocator;
15
import org.gvsig.tools.dynform.impl.DefaultDynFormLibrary;
16
import org.gvsig.tools.dynform.services.BasicDynFormFieldsLibrary;
17
import org.gvsig.tools.dynform.spi.DynFormSPILibrary;
18
import org.gvsig.tools.dynforms.AbortActionException;
19
import org.gvsig.tools.dynforms.DynFormLibrary;
20
import org.gvsig.tools.dynforms.DynFormLocator;
21
import org.gvsig.tools.dynforms.DynFormManager;
22
import org.gvsig.tools.dynforms.JDynForm;
23
import org.gvsig.tools.dynforms.JDynFormSet;
24
import org.gvsig.tools.dynforms.JDynFormSet.JDynFormSetListener;
25
import org.gvsig.tools.dynobject.DynObject;
26
import org.gvsig.tools.dynobject.DynObjectManager;
27
import org.gvsig.tools.dynobject.DynStruct;
28
import org.gvsig.tools.service.ServiceException;
29

    
30
import com.jgoodies.looks.plastic.PlasticLookAndFeel;
31
import com.jgoodies.looks.plastic.PlasticXPLookAndFeel;
32

    
33
@SuppressWarnings("rawtypes")
34
public class Test {
35

    
36
        Map definitions = null;
37
        DynFormManager manager = null;
38
        DynObjectManager dynObjectManager = null;
39
        
40
        public static void main(String[] args) throws Exception {
41
                URL config = Test.class.getClassLoader().getResource("org/gvsig/tools/dynform/main/log4j.properties");
42
                PropertyConfigurator.configure(config);
43
                Test t = new Test();
44
                t.doMain(args);
45
        }
46

    
47
        private DynStruct loadStruct() throws Exception {
48
                dynObjectManager = ToolsLocator.getDynObjectManager();
49
                InputStream resource = this.getClass().getClassLoader().getResourceAsStream("org/gvsig/tools/dynform/main/TestDefinition.xml");
50
                definitions = dynObjectManager.importDynClassDefinitions(resource, this.getClass().getClassLoader());
51
                return (DynStruct) definitions.get("DBFStoreParameters");
52
        }
53
        
54
        public void doMain(String[] args) throws Exception {
55
                PlasticLookAndFeel laf = new PlasticXPLookAndFeel();
56
                UIManager.setLookAndFeel(laf);
57
                
58
                new ToolsLibrary().initialize();
59
                new DynFormLibrary().initialize();
60
                new DefaultDynFormLibrary().initialize();
61
                new DynFormSPILibrary().initialize();
62
                new BasicDynFormFieldsLibrary().initialize();
63
                
64
                new ToolsLibrary().postInitialize();
65
                new DynFormLibrary().postInitialize();
66
                new DefaultDynFormLibrary().postInitialize();
67
                new DynFormSPILibrary().postInitialize();
68
                new BasicDynFormFieldsLibrary().postInitialize();
69
                
70
                DynStruct struct = loadStruct();
71
                manager = DynFormLocator.getDynFormManager();
72

    
73
                List data = this.createSet(struct);
74
                //showForm("DynForms1", data, false, JDynForm.USE_TABS);
75
                showForm("DynForms2", data, false, JDynForm.USE_SEPARATORS);
76
                //showForm("DynForms2-readonly", data, true, JDynForm.USE_SEPARATORS);
77
                showFormPackageInfo();
78

    
79
        }
80
        
81
        private void showForm(String title, List data, boolean readonly, int layoutMode) throws ServiceException {
82
                final JFrame frame = new JFrame(title);
83
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
84

    
85
                JDynFormSet form = manager.createJDynFormSet(data);
86
                form.setLayoutMode(layoutMode);
87
                form.setReadOnly(readonly);
88
                form.addListener(new JDynFormSetListener() {
89
                        public void formMessage(String message) {
90
                                System.out.println("formMessage "+message);
91
                        }
92
                        public void formClose(){
93
                                frame.setVisible(false);
94
                                System.out.println("formClose");
95
                        }
96
                        public void formMovedTo(int currentPosition){
97
                                System.out.println("formMovedTo "+currentPosition);
98
                        }
99
                        public void formBeforeSave() throws AbortActionException {
100
                                System.out.println("formBeforeSave");
101
                        }
102
                        public void formBeforeNew() throws AbortActionException {
103
                                System.out.println("formBeforeNew");
104
                        }
105
                        public void formBeforeDelete() throws AbortActionException {
106
                                System.out.println("formBeforeDelete");
107
                        }
108
                        public void formAfterSave() {
109
                                System.out.println("formAfterSave");
110
                        }
111
                        public void formAfterNew() {
112
                                System.out.println("formAfterNew");
113
                        }
114
                        public void formAfterDelete() {
115
                                System.out.println("formAfterDelete");
116
                        }
117
                        public void formBeforeSearch() throws AbortActionException {
118
                                System.out.println("formBeforeSearch");
119
                        }
120
                        public void formAfterSearch() {
121
                                System.out.println("forformAfterSearchmClose");
122
                        }
123
                });
124
                form.setAllowDelete(true);
125
                form.setAllowNew(true);
126
                form.setAllowSearch(false);
127
                form.setAllowUpdate(true);
128

    
129
                frame.setContentPane(form.asJComponent());
130

    
131
                form.setFormSize(600, 300);
132
                
133
                frame.pack();
134
                frame.setVisible(true);
135
        }
136
        
137
        private void showFormPackageInfo() throws ServiceException {
138
                final JFrame frame = new JFrame("Package info");
139
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
140

    
141
                JDynForm form = manager.createJDynForm((DynStruct)definitions.get("FormPackageinfo"));
142
                form.setLayoutMode(JDynForm.USE_SEPARATORS);
143
                form.setReadOnly(false);
144
                frame.setContentPane(form.asJComponent());
145

    
146
                form.setFormSize(600, 300);
147
                
148
                frame.pack();
149
                frame.setVisible(true);
150
        }
151
        
152
        public List createSet(DynStruct struct) {
153
                List values = new ArrayList();
154
                for( int i=1; i<4; i++ ) {
155
                        DynObject value = dynObjectManager.createDynObject(struct);
156
                        value.setDynValue("ProviderName", "proveedor-" + i);
157
                        value.setDynValue("Entero", i*10);
158
                        value.setDynValue("Encoding", "UTF-8");
159
                        values.add(value);
160
                }
161
                return values;
162
        }
163
}