Revision 45160

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/preferences/layersVisibility/LayersVisibilityReminderView.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/pako/projects/gvSIG/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/preferences/layersVisibility/LayersVisibilityReminderView.xml</at>
28
   <at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,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">4</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.StandardComponent</at>
48
        </super>
49
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
50
        <at name="beanclass">javax.swing.JList</at>
51
        <at name="beanproperties">
52
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
53
          <at name="classname">javax.swing.JList</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="scrollableTracksViewportHeight">true</at>
77
            <at name="scrollableTracksViewportWidth">true</at>
78
            <at name="name">lstRemembers</at>
79
            <at name="width">1286</at>
80
            <at name="items">
81
             <object classname="com.jeta.forms.store.properties.ItemsProperty">
82
              <at name="name">items</at>
83
             </object>
84
            </at>
85
            <at name="scollBars">
86
             <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
87
              <at name="name">scollBars</at>
88
              <at name="verticalpolicy">20</at>
89
              <at name="horizontalpolicy">30</at>
90
              <at name="border">
91
               <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
92
                <super classname="com.jeta.forms.store.properties.BorderProperty">
93
                 <at name="name">border</at>
94
                </super>
95
                <at name="borders">
96
                 <object classname="java.util.LinkedList">
97
                  <item >
98
                   <at name="value">
99
                    <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
100
                     <super classname="com.jeta.forms.store.properties.BorderProperty">
101
                      <at name="name">border</at>
102
                     </super>
103
                    </object>
104
                   </at>
105
                  </item>
106
                 </object>
107
                </at>
108
               </object>
109
              </at>
110
             </object>
111
            </at>
112
            <at name="height">723</at>
113
           </object>
114
          </at>
115
         </object>
116
        </at>
117
       </object>
118
      </at>
119
     </item>
120
     <item >
121
      <at name="value">
122
       <object classname="com.jeta.forms.store.memento.BeanMemento">
123
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
124
         <at name="cellconstraints">
125
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
126
           <at name="column">2</at>
127
           <at name="row">2</at>
128
           <at name="colspan">1</at>
129
           <at name="rowspan">1</at>
130
           <at name="halign">default</at>
131
           <at name="valign">default</at>
132
           <at name="insets" object="insets">0,0,0,0</at>
133
          </object>
134
         </at>
135
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
136
        </super>
137
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
138
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
139
        <at name="beanproperties">
140
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
141
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
142
          <at name="properties">
143
           <object classname="com.jeta.forms.store.support.PropertyMap">
144
            <at name="border">
145
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
146
              <super classname="com.jeta.forms.store.properties.BorderProperty">
147
               <at name="name">border</at>
148
              </super>
149
              <at name="borders">
150
               <object classname="java.util.LinkedList">
151
                <item >
152
                 <at name="value">
153
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
154
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
155
                    <at name="name">border</at>
156
                   </super>
157
                  </object>
158
                 </at>
159
                </item>
160
               </object>
161
              </at>
162
             </object>
163
            </at>
164
            <at name="name">lblTitle</at>
165
            <at name="width">1288</at>
166
            <at name="text">_Visibility_scales_remembered_for_the_following_layers</at>
167
            <at name="fill">
168
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
169
              <at name="name">fill</at>
170
             </object>
171
            </at>
172
            <at name="height">14</at>
173
           </object>
174
          </at>
175
         </object>
176
        </at>
177
       </object>
178
      </at>
179
     </item>
180
    </object>
181
   </at>
182
   <at name="properties">
183
    <object classname="com.jeta.forms.store.memento.PropertiesMemento">
184
     <at name="classname">com.jeta.forms.gui.form.GridView</at>
185
     <at name="properties">
186
      <object classname="com.jeta.forms.store.support.PropertyMap">
187
       <at name="border">
188
        <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
189
         <super classname="com.jeta.forms.store.properties.BorderProperty">
190
          <at name="name">border</at>
191
         </super>
192
         <at name="borders">
193
          <object classname="java.util.LinkedList"/>
194
         </at>
195
        </object>
196
       </at>
197
       <at name="name"/>
198
       <at name="fill">
199
        <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
200
         <at name="name">fill</at>
201
        </object>
202
       </at>
203
       <at name="scollBars">
204
        <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
205
         <at name="name">scollBars</at>
206
         <at name="verticalpolicy">21</at>
207
         <at name="horizontalpolicy">31</at>
208
         <at name="border">
209
          <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
210
           <super classname="com.jeta.forms.store.properties.BorderProperty">
211
            <at name="name">border</at>
212
           </super>
213
           <at name="borders">
214
            <object classname="java.util.LinkedList">
215
             <item >
216
              <at name="value">
217
               <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
218
                <super classname="com.jeta.forms.store.properties.BorderProperty">
219
                 <at name="name">border</at>
220
                </super>
221
               </object>
222
              </at>
223
             </item>
224
            </object>
225
           </at>
226
          </object>
227
         </at>
228
        </object>
229
       </at>
230
      </object>
231
     </at>
232
    </object>
233
   </at>
234
   <at name="cellpainters">
235
    <object classname="com.jeta.forms.store.support.Matrix">
236
     <at name="rows">
237
      <object classname="[Ljava.lang.Object;" size="5">
238
       <at name="item" index="0">
239
        <object classname="[Ljava.lang.Object;" size="3"/>
240
       </at>
241
       <at name="item" index="1">
242
        <object classname="[Ljava.lang.Object;" size="3"/>
243
       </at>
244
       <at name="item" index="2">
245
        <object classname="[Ljava.lang.Object;" size="3"/>
246
       </at>
247
       <at name="item" index="3">
248
        <object classname="[Ljava.lang.Object;" size="3"/>
249
       </at>
250
       <at name="item" index="4">
251
        <object classname="[Ljava.lang.Object;" size="3"/>
252
       </at>
253
      </object>
254
     </at>
255
    </object>
256
   </at>
257
   <at name="rowgroups">
258
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
259
     <at name="groups">
260
      <object classname="java.util.HashMap"/>
261
     </at>
262
    </object>
263
   </at>
264
   <at name="colgroups">
265
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
266
     <at name="groups">
267
      <object classname="java.util.HashMap"/>
268
     </at>
269
    </object>
270
   </at>
271
  </object>
272
 </at>
273
</object>
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/preferences/layersVisibility/LayersVisibilityReminderView.java
1
package org.gvsig.geodb.preferences.layersVisibility;
2

  
3
import com.jgoodies.forms.layout.CellConstraints;
4
import com.jgoodies.forms.layout.FormLayout;
5
import java.awt.BorderLayout;
6
import java.awt.ComponentOrientation;
7
import java.awt.Container;
8
import java.awt.Dimension;
9
import javax.swing.Box;
10
import javax.swing.ImageIcon;
11
import javax.swing.JLabel;
12
import javax.swing.JList;
13
import javax.swing.JPanel;
14
import javax.swing.JScrollPane;
15
import org.gvsig.andami.preferences.AbstractPreferencePage;
16

  
17

  
18
public abstract class LayersVisibilityReminderView extends AbstractPreferencePage
19
{
20
   JList lstRemembers = new JList();
21
   JLabel lblTitle = new JLabel();
22

  
23
   /**
24
    * Default constructor
25
    */
26
   public LayersVisibilityReminderView()
27
   {
28
      initializePanel();
29
   }
30

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

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

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

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

  
71
   }
72

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

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

  
110
   public JPanel createPanel()
111
   {
112
      JPanel jpanel1 = new JPanel();
113
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE");
114
      CellConstraints cc = new CellConstraints();
115
      jpanel1.setLayout(formlayout1);
116

  
117
      lstRemembers.setName("lstRemembers");
118
      JScrollPane jscrollpane1 = new JScrollPane();
119
      jscrollpane1.setViewportView(lstRemembers);
120
      jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
121
      jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
122
      jpanel1.add(jscrollpane1,cc.xy(2,4));
123

  
124
      lblTitle.setName("lblTitle");
125
      lblTitle.setText("_Visibility_scales_remembered_for_the_following_layers");
126
      jpanel1.add(lblTitle,cc.xy(2,2));
127

  
128
      addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3,4,5 });
129
      return jpanel1;
130
   }
131

  
132
   /**
133
    * Initializer
134
    */
135
   protected void initializePanel()
136
   {
137
      setLayout(new BorderLayout());
138
      add(createPanel(), BorderLayout.CENTER);
139
   }
140

  
141

  
142
}
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/preferences/layersVisibility/LayersVisibilityReminderPage.java
1
package org.gvsig.geodb.preferences.layersVisibility;
2

  
3
import java.util.Map;
4
import javax.swing.DefaultListModel;
5
import javax.swing.ImageIcon;
6
import javax.swing.JPanel;
7
import javax.swing.ListSelectionModel;
8
import javax.swing.event.ListSelectionEvent;
9
import javax.swing.event.ListSelectionListener;
10

  
11
import org.gvsig.andami.IconThemeHelper;
12
import org.gvsig.andami.PluginServices;
13
import org.gvsig.andami.PluginsLocator;
14
import org.gvsig.andami.PluginsManager;
15
import org.gvsig.andami.preferences.IPreference;
16
import org.gvsig.andami.preferences.StoreException;
17
import org.gvsig.geodb.ExtDB_Spatial;
18
import static org.gvsig.geodb.WizardDBVectorial.LAYERS_SCALE_VISIBILITY_PARAMETER;
19
import org.gvsig.geodb.vectorialdb.visibility.LayerScaleVisibility;
20

  
21
import org.gvsig.tools.ToolsLocator;
22
import org.gvsig.tools.dynobject.DynObject;
23
import org.gvsig.tools.dynobject.exception.DynFieldNotFoundException;
24
import org.gvsig.tools.i18n.I18nManager;
25
import org.gvsig.tools.locator.LocatorException;
26
import org.gvsig.tools.swing.api.JListWithCheckbox;
27
import org.gvsig.tools.swing.api.ListElement;
28
import org.gvsig.tools.swing.api.ToolsSwingLocator;
29
import org.gvsig.tools.swing.api.ToolsSwingManager;
30

  
31

  
32
public class LayersVisibilityReminderPage extends LayersVisibilityReminderView implements IPreference {
33

  
34
    //
35
    // The class LayersVisibilityReminderView can extend from AbstractPreferencePage, not JPanel,
36
    // if recreate it from the GUI builder change te class declaration to:
37
    //    public abstract class LayersVisibilityReminderView extends AbstractPreferencePage
38

  
39
    private JListWithCheckbox lstCheckdsRemembers;
40

  
41
    public static String id = LayersVisibilityReminderPage.class.getName();
42
    private ImageIcon icon;
43

  
44
    public LayersVisibilityReminderPage() {
45
        initComponents();
46
    }
47

  
48
    private void initComponents() {
49
        icon = IconThemeHelper.getImageIcon("layers-visibility-remember-preferences");
50
        ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager();
51
        this.lstCheckdsRemembers = swingManager.createJListWithCheckbox(this.lstRemembers);
52
        final ListSelectionModel checkModel = this.lstCheckdsRemembers.getCheckedModel();
53
        checkModel.addListSelectionListener(new ListSelectionListener() {
54

  
55
            @Override
56
            public void valueChanged(ListSelectionEvent e) {
57
                if( e.getValueIsAdjusting() ) {
58
                    return;
59
                }
60
                int n = e.getFirstIndex();
61
                if( n<=lstCheckdsRemembers.getModel().getSize() ) {
62
                    return;
63
                }
64
                LayersScaleVisibilityListElement element = (LayersScaleVisibilityListElement) lstCheckdsRemembers.getModel().getElementAt(n);
65
                if( element==null ) {
66
                    return;
67
                }
68
                if( checkModel.isSelectedIndex(n) && element.getValue()!=null ) {
69
                    checkModel.removeIndexInterval(n, n);
70
                }
71
            }
72
        });
73
        translateAll();
74
    }
75

  
76
    private void translateAll() {
77
        I18nManager i18n = ToolsLocator.getI18nManager();
78

  
79
        this.lblTitle.setText(i18n.getTranslation(this.lblTitle.getText()));
80
    }
81

  
82
    @Override
83
    public boolean isResizeable() {
84
        return true;
85
    }
86

  
87
    @Override
88
    public void initializeValues() {
89

  
90
        Map<String, LayerScaleVisibility> layersScaleVisibility = getLayersScaleVisibility();
91
        
92
        DefaultListModel model = new DefaultListModel();
93
        ListSelectionModel checkModel = this.lstCheckdsRemembers.getCheckedModel();
94
        checkModel.clearSelection();
95
        int n=0;
96
        for(Map.Entry<String, LayerScaleVisibility> entry : layersScaleVisibility.entrySet()){
97
            model.addElement(new LayersScaleVisibilityListElement(entry.getKey(), entry));
98
            if( entry.getValue() != null ) {
99
                checkModel.addSelectionInterval(n, n);
100
            }
101
            n++;
102
        }
103
        this.lstCheckdsRemembers.setModel(model);
104
    }
105

  
106
    private Map<String, LayerScaleVisibility> getLayersScaleVisibility() throws DynFieldNotFoundException, LocatorException {
107
        PluginsManager pluginManager = PluginsLocator.getPluginsManager();
108
        PluginServices plugin = pluginManager.getPlugin(ExtDB_Spatial.class);
109
        DynObject pluginProperties = plugin.getPluginProperties();
110
        Map<String, LayerScaleVisibility> layersScaleVisibility = (Map) pluginProperties.getDynValue(LAYERS_SCALE_VISIBILITY_PARAMETER);
111
        return layersScaleVisibility;
112
    }
113

  
114
    @Override
115
    public void initializeDefaults() {
116
        Map<String, LayerScaleVisibility> layersScaleVisibility = getLayersScaleVisibility();
117
        DefaultListModel model = new DefaultListModel();
118
        ListSelectionModel checkModel = this.lstCheckdsRemembers.getCheckedModel();
119
        for(Map.Entry<String, LayerScaleVisibility> entry : layersScaleVisibility.entrySet()){
120
            model.addElement(new LayersScaleVisibilityListElement(entry.getKey(), entry));
121
        }
122
        this.lstCheckdsRemembers.setModel(model);
123
        checkModel.clearSelection();
124
    }
125

  
126
    @Override
127
    public String getID() {
128
        return id;
129
    }
130

  
131
    @Override
132
    public String getTitle() {
133
        I18nManager i18nManager = ToolsLocator.getI18nManager();
134
        return i18nManager.getTranslation("_Remembered_layers_visibility");
135
    }
136

  
137
    @Override
138
    public JPanel getPanel() {
139
        return this;
140
    }
141

  
142

  
143
    @Override
144
    public void storeValues() throws StoreException {
145

  
146
        Map<String, LayerScaleVisibility> layersScaleVisibility = getLayersScaleVisibility();
147
        ListSelectionModel checkModel = this.lstCheckdsRemembers.getCheckedModel();
148
        int n=0;
149
        for(Map.Entry<String, LayerScaleVisibility> entry : layersScaleVisibility.entrySet()){
150
            if( ! checkModel.isSelectedIndex(n)  ) {
151
                layersScaleVisibility.remove(entry.getKey());
152
            }
153
            n++;
154
        }
155
    }
156

  
157
    @Override
158
    public ImageIcon getIcon() {
159
        return icon;
160
    }
161

  
162
    @Override
163
    public boolean isValueChanged() {
164
        Map<String, LayerScaleVisibility> layersScaleVisibility = getLayersScaleVisibility(); //(Map) pluginProperties.getDynValue(LAYERS_SCALE_VISIBILITY_PARAMETER);
165

  
166
        ListSelectionModel checkModel = this.lstCheckdsRemembers.getCheckedModel();
167
        int n=0;
168
        for(Map.Entry<String, LayerScaleVisibility> entry : layersScaleVisibility.entrySet()){
169
            if( checkModel.isSelectedIndex(n) != (entry.getValue()!=null) ) {
170
                return true;
171
            }
172
            n++;
173
        }
174
        return false;
175
    }
176

  
177
    @Override
178
    public void setChangesApplied() {
179
        // Do nothing
180
    }
181
    
182
    private class LayersScaleVisibilityListElement extends ListElement<Map.Entry<String, LayerScaleVisibility>> {
183

  
184
        public LayersScaleVisibilityListElement(String label, Map.Entry<String, LayerScaleVisibility> value) {
185
            super(label, value);
186
        }
187

  
188
        @Override
189
        public String getLabel() {
190
            Map.Entry<String, LayerScaleVisibility> entry = getValue();
191
            if(entry!=null){
192
                LayerScaleVisibility layerScaleVisibility = entry.getValue();
193
                if(layerScaleVisibility!=null){
194
                    return layerScaleVisibility.getLabel();
195
                }
196
            }
197
            return null;
198
        }
199
    }
200

  
201
}
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/ExtDB_Spatial.java
22 22
 */
23 23
package org.gvsig.geodb;
24 24

  
25
import java.util.ArrayList;
26
import java.util.HashMap;
27
import java.util.List;
28
import java.util.Map;
25 29
import org.gvsig.andami.IconThemeHelper;
26 30
import org.gvsig.andami.PluginsLocator;
27 31
import org.gvsig.andami.PluginsManager;
28 32
import org.gvsig.andami.plugins.Extension;
33
import org.gvsig.andami.preferences.IPreference;
34
import org.gvsig.andami.preferences.IPreferenceExtension;
29 35
import org.gvsig.app.ApplicationLocator;
30
import org.gvsig.app.ApplicationManager;
31 36
import org.gvsig.app.extension.AddLayer;
32 37
import org.gvsig.fmap.dal.DALLocator;
33 38
import org.gvsig.fmap.dal.DataManager;
34 39
import org.gvsig.tools.dynobject.DynObject;
35 40
import org.gvsig.fmap.dal.DataServerExplorerPool;
41
import static org.gvsig.geodb.WizardDBVectorial.LAYERS_SCALE_VISIBILITY_PARAMETER;
42
import org.gvsig.geodb.preferences.layersVisibility.LayersVisibilityReminderPage;
43
import org.gvsig.geodb.vectorialdb.visibility.LayerScaleVisibility;
36 44

  
37 45
/**
38 46
 * This extension adds the export-to-oracle button.
......
40 48
 * @author jldominguez
41 49
 *
42 50
 */
43
public class ExtDB_Spatial extends Extension {
51
public class ExtDB_Spatial extends Extension implements IPreferenceExtension{
44 52

  
45 53
    @Override
46 54
    public void initialize() {
......
48 56
        IconThemeHelper.registerIcon("geodb", "geodb-advanced-properties", this);
49 57
        IconThemeHelper.registerIcon("geodb", "geodb-get-view-extent", this);
50 58
        
59
        LayerScaleVisibility.selfRegister();
60
        
51 61
        DataManager dataManager = DALLocator.getDataManager();
52 62
        PluginsManager manager = PluginsLocator.getManager();
53 63
        DynObject pluginProperties = manager.getPlugin(ExtDB_Spatial.class).getPluginProperties();
......
57 67
            dataManager.setDataServerExplorerPool((DataServerExplorerPool)pluginProperties.getDynValue("explorersPool"));
58 68
        }
59 69
        
70
        HashMap<Object, Object> layersScaleVisibility = new HashMap<>();
71
        Map<String, LayerScaleVisibility> tmp = (Map) pluginProperties.getDynValue(LAYERS_SCALE_VISIBILITY_PARAMETER);
72
        if(tmp != null){
73
            layersScaleVisibility.putAll(tmp);
74
        }
75
        pluginProperties.setDynValue(LAYERS_SCALE_VISIBILITY_PARAMETER, layersScaleVisibility);
76

  
77
        IconThemeHelper.registerIcon("preferences", "layers-visibility-remember-preferences", this);
60 78
    }
61 79

  
62 80
    @Override
......
85 103
        AddLayer.addWizard(WizardDBVectorial.class);
86 104

  
87 105
    }
106
    
107
        @Override
108
    public IPreference[] getPreferencesPages() {
109
        List<IPreference> prefs = new ArrayList<>();
110
        prefs.add(new LayersVisibilityReminderPage());
88 111

  
112
        return prefs.toArray(new IPreference[prefs.size()]);
113
    }
114

  
115

  
89 116
}
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/vectorialdb/visibility/LayerScaleVisibility.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.geodb.vectorialdb.visibility;
7

  
8
import org.gvsig.tools.ToolsLocator;
9
import org.gvsig.tools.dynobject.DynStruct;
10
import org.gvsig.tools.persistence.PersistenceManager;
11
import org.gvsig.tools.persistence.Persistent;
12
import org.gvsig.tools.persistence.PersistentState;
13
import org.gvsig.tools.persistence.exception.PersistenceException;
14

  
15
/**
16
 *
17
 * @author fdiaz
18
 */
19
public class LayerScaleVisibility implements Persistent{
20
    
21
    private static final String SCALE_BELOW_DENOMINATOR_PARAMETER="scaleBelowDenominator";
22
    private static final String SCALE_ABOVE_DENOMINATOR_PARAMETER="scaleAboveDenominator";
23
    private static final String LABEL_PARAMETER="label";
24
    
25
    private int scaleBelowDenominator;
26
    private int scaleAboveDenominator;
27
    private String label;
28

  
29
    @Override
30
    public void saveToState(PersistentState ps) throws PersistenceException {
31
        ps.set(SCALE_BELOW_DENOMINATOR_PARAMETER, scaleBelowDenominator);
32
        ps.set(SCALE_ABOVE_DENOMINATOR_PARAMETER, scaleAboveDenominator);
33
        ps.set(LABEL_PARAMETER, label);
34
    }
35

  
36
    @Override
37
    public void loadFromState(PersistentState ps) throws PersistenceException {
38
        scaleBelowDenominator = ps.getInt(SCALE_BELOW_DENOMINATOR_PARAMETER);
39
        scaleAboveDenominator = ps.getInt(SCALE_ABOVE_DENOMINATOR_PARAMETER);
40
        label = ps.getString(LABEL_PARAMETER);
41
    }
42
    
43
    public static void selfRegister(){
44
            PersistenceManager manager = ToolsLocator.getPersistenceManager();
45
            DynStruct definition = manager.addDefinition(
46
                    LayerScaleVisibility.class,
47
                    "LayerScaleVisibility",
48
                    "LayerScaleVisibility Persistence definition",
49
                    null,
50
                    null
51
            );
52
            definition.addDynFieldInt(SCALE_BELOW_DENOMINATOR_PARAMETER).setMandatory(true);
53
            definition.addDynFieldInt(SCALE_ABOVE_DENOMINATOR_PARAMETER).setMandatory(true);
54
            definition.addDynFieldString(LABEL_PARAMETER).setMandatory(true);
55
    }
56

  
57
    public int getScaleAboveDenominator() {
58
        return scaleAboveDenominator;
59
    }
60

  
61
    public int getScaleBelowDenominator() {
62
        return scaleBelowDenominator;
63
    }
64

  
65
    public void setScaleAboveDenominator(int scaleAboveDenominator) {
66
        this.scaleAboveDenominator = scaleAboveDenominator;
67
    }
68

  
69
    public void setScaleBelowDenominator(int scaleBelowDenominator) {
70
        this.scaleBelowDenominator = scaleBelowDenominator;
71
    }
72

  
73
    public String getLabel() {
74
        return label;
75
    }
76

  
77
    public void setLabel(String label) {
78
        this.label = label;
79
    }
80

  
81
}
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/vectorialdb/visibility/VisibilityScaleSelector.java
1
/* gvSIG. Desktop Geographic Information System.
2
 *
3
 * Copyright ? 2007-2017 gvSIG Association
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
 * MA  02110-1301, USA.
19
 *
20
 * For any additional information, do not hesitate to contact us
21
 * at info AT gvsig.com, or visit our website www.gvsig.com.
22
 */
23
package org.gvsig.geodb.vectorialdb.visibility;
24

  
25
import java.awt.event.ActionEvent;
26
import java.awt.event.ActionListener;
27
import java.util.Locale;
28
import org.gvsig.geodb.WizardDBVectorial;
29

  
30

  
31
import org.slf4j.Logger;
32
import org.slf4j.LoggerFactory;
33

  
34
import org.gvsig.tools.ToolsLocator;
35
import org.gvsig.tools.i18n.I18nManager;
36

  
37

  
38
/**
39
 * @author fdiaz
40
 *
41
 */
42
public class VisibilityScaleSelector extends VisibilityScaleSelectorView {
43

  
44
    private static final Logger LOG = LoggerFactory.getLogger(VisibilityScaleSelector.class);
45
    
46
    private static final int SCALE_ABOVE_DENOMINATOR_1_1000 = 2000;
47
    private static final int SCALE_BELOW_DENOMINATOR_1_1000 = 1;
48

  
49
    private static final int SCALE_ABOVE_DENOMINATOR_1_5000 = 8000;
50
    private static final int SCALE_BELOW_DENOMINATOR_1_5000 = 1;
51

  
52
    private static final int SCALE_ABOVE_DENOMINATOR_1_25000 = 40000;
53
    private static final int SCALE_BELOW_DENOMINATOR_1_25000 = 1;
54
    
55
    private boolean okPressed = false;
56

  
57

  
58
    /**
59
     *
60
     */
61
    public VisibilityScaleSelector() {
62
        super();
63
        init();
64
        initializeComponents();
65
        translate();
66
    }
67
    
68
    /**
69
     * This method initializes this
70
     * 
71
     * @return void
72
     */
73
    private void init() {
74
        btnAccept.addActionListener((java.awt.event.ActionEvent e) -> {
75
            closeWindow();
76
            okPressed = true;
77
        });
78
        btnCancel.addActionListener((java.awt.event.ActionEvent e) -> {
79
            closeWindow();
80
            okPressed = false;
81
        });
82
    }
83

  
84
    private void initializeComponents() {
85

  
86
        rdb1_1000.addActionListener(new ActionListener() {
87
            @Override
88
            public void actionPerformed(ActionEvent e) {
89
                txtScaleAboveDenominator.setValue(SCALE_ABOVE_DENOMINATOR_1_1000);
90
                txtScaleBelowDenominator.setValue(SCALE_BELOW_DENOMINATOR_1_1000);
91
            }
92
        });
93
        
94
        rdb1_5000.addActionListener(new ActionListener() {
95
            @Override
96
            public void actionPerformed(ActionEvent e) {
97
                txtScaleAboveDenominator.setValue(SCALE_ABOVE_DENOMINATOR_1_5000);
98
                txtScaleBelowDenominator.setValue(SCALE_BELOW_DENOMINATOR_1_5000);
99
            }
100
        });
101
        
102
        rdb1_25000.addActionListener(new ActionListener() {
103
            @Override
104
            public void actionPerformed(ActionEvent e) {
105
                txtScaleAboveDenominator.setValue(SCALE_ABOVE_DENOMINATOR_1_25000);
106
                txtScaleBelowDenominator.setValue(SCALE_BELOW_DENOMINATOR_1_25000);
107
            }
108
        });
109

  
110

  
111
    }
112

  
113
    private void translate() {
114
        I18nManager i18nManager = ToolsLocator.getI18nManager();
115
        String value = String.valueOf(WizardDBVectorial.NUMBER_OF_FEATURES_TO_ASK_FOR_VISIBILITY_SCALE);
116
        lblDescription.setText(i18nManager.getTranslation(lblDescription.getText(),new String[]{value}));
117
        lbl_1_25000_description.setText(i18nManager.getTranslation(lbl_1_25000_description.getText()));
118
        lbl_1_5000_description.setText(i18nManager.getTranslation(lbl_1_5000_description.getText()));
119
        lbl_1_1000_description.setText(i18nManager.getTranslation(lbl_1_1000_description.getText()));
120
        rdbConditions.setText(i18nManager.getTranslation(rdbConditions.getText()));
121
        lblBelow.setText(i18nManager.getTranslation(lblBelow.getText()));
122
        lblAbove.setText(i18nManager.getTranslation(lblAbove.getText()));
123
        lblMaximumScale.setText(i18nManager.getTranslation(lblMaximumScale.getText()));
124
        lblMinimumScale.setText(i18nManager.getTranslation(lblMinimumScale.getText()));
125
        chkRememberAnswer.setText(i18nManager.getTranslation(chkRememberAnswer.getText()));
126
        btnAccept.setText(i18nManager.getTranslation(btnAccept.getText()));
127
        btnCancel.setText(i18nManager.getTranslation(btnCancel.getText()));
128

  
129
    }
130

  
131
    /**
132
     * @param locale
133
     *
134
     */
135
    public void setLocate(Locale locale) {
136
        Locale l = super.getLocale();
137
        if (!l.equals(locale)) {
138
            translate();
139
        }
140
        super.setLocale(locale);
141
    }
142
    
143
    public int getScaleAboveDenominator(){
144
        if(rdb1_1000.isSelected()){
145
            return SCALE_ABOVE_DENOMINATOR_1_1000;
146
        }
147
        if(rdb1_5000.isSelected()){
148
            return SCALE_ABOVE_DENOMINATOR_1_5000;
149
        }
150
        if(rdb1_25000.isSelected()){
151
            return SCALE_ABOVE_DENOMINATOR_1_25000;
152
        }
153
        if(rdbConditions.isSelected()){
154
            return ((Number)txtScaleAboveDenominator.getValue()).intValue();
155
        }
156
        return Integer.MAX_VALUE;
157
    }
158

  
159
    public int getScaleBelowDenominator(){
160
        if(rdb1_1000.isSelected()){
161
            return SCALE_BELOW_DENOMINATOR_1_1000;
162
        }
163
        if(rdb1_5000.isSelected()){
164
            return SCALE_BELOW_DENOMINATOR_1_5000;
165
        }
166
        if(rdb1_25000.isSelected()){
167
            return SCALE_BELOW_DENOMINATOR_1_25000;
168
        }
169
        if(rdbConditions.isSelected()){
170
            return ((Number)txtScaleBelowDenominator.getValue()).intValue();
171
        }
172
        return 1;
173
    }
174
    
175
    public boolean getRememberAnswer() {
176
        return chkRememberAnswer.isSelected();
177
    }
178
    
179
    public void closeWindow() {
180
    	this.setVisible(false);
181
    }
182

  
183
    public boolean isOkPressed() {
184
        return okPressed;
185
    }
186

  
187
}
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/vectorialdb/visibility/VisibilityScaleSelectorView.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/pako/projects/gvSIG/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.geodb.app/org.gvsig.geodb.app.mainplugin/src/main/java/org/gvsig/geodb/vectorialdb/visibility/VisibilityScaleSelectorView.xml</at>
28
   <at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at>
29
   <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:MAX(100PX;DEFAULT):NONE,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">5</at>
39
           <at name="row">14</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.StandardComponent</at>
48
        </super>
49
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
50
        <at name="beanclass">javax.swing.JFormattedTextField</at>
51
        <at name="beanproperties">
52
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
53
          <at name="classname">javax.swing.JFormattedTextField</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="name">txtScaleBelowDenominator</at>
77
            <at name="width">96</at>
78
            <at name="height">20</at>
79
           </object>
80
          </at>
81
         </object>
82
        </at>
83
       </object>
84
      </at>
85
     </item>
86
     <item >
87
      <at name="value">
88
       <object classname="com.jeta.forms.store.memento.BeanMemento">
89
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
90
         <at name="cellconstraints">
91
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
92
           <at name="column">7</at>
93
           <at name="row">15</at>
94
           <at name="colspan">1</at>
95
           <at name="rowspan">1</at>
96
           <at name="halign">default</at>
97
           <at name="valign">default</at>
98
           <at name="insets" object="insets">0,0,0,0</at>
99
          </object>
100
         </at>
101
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
102
        </super>
103
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
104
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
105
        <at name="beanproperties">
106
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
107
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
108
          <at name="properties">
109
           <object classname="com.jeta.forms.store.support.PropertyMap">
110
            <at name="border">
111
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
112
              <super classname="com.jeta.forms.store.properties.BorderProperty">
113
               <at name="name">border</at>
114
              </super>
115
              <at name="borders">
116
               <object classname="java.util.LinkedList">
117
                <item >
118
                 <at name="value">
119
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
120
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
121
                    <at name="name">border</at>
122
                   </super>
123
                  </object>
124
                 </at>
125
                </item>
126
               </object>
127
              </at>
128
             </object>
129
            </at>
130
            <at name="name">lblMinimumScale</at>
131
            <at name="width">1055</at>
132
            <at name="text">minimum_scale</at>
133
            <at name="fill">
134
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
135
              <at name="name">fill</at>
136
             </object>
137
            </at>
138
            <at name="height">14</at>
139
           </object>
140
          </at>
141
         </object>
142
        </at>
143
       </object>
144
      </at>
145
     </item>
146
     <item >
147
      <at name="value">
148
       <object classname="com.jeta.forms.store.memento.BeanMemento">
149
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
150
         <at name="cellconstraints">
151
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
152
           <at name="column">7</at>
153
           <at name="row">14</at>
154
           <at name="colspan">1</at>
155
           <at name="rowspan">1</at>
156
           <at name="halign">default</at>
157
           <at name="valign">default</at>
158
           <at name="insets" object="insets">0,0,0,0</at>
159
          </object>
160
         </at>
161
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
162
        </super>
163
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
164
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
165
        <at name="beanproperties">
166
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
167
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
168
          <at name="properties">
169
           <object classname="com.jeta.forms.store.support.PropertyMap">
170
            <at name="border">
171
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
172
              <super classname="com.jeta.forms.store.properties.BorderProperty">
173
               <at name="name">border</at>
174
              </super>
175
              <at name="borders">
176
               <object classname="java.util.LinkedList">
177
                <item >
178
                 <at name="value">
179
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
180
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
181
                    <at name="name">border</at>
182
                   </super>
183
                  </object>
184
                 </at>
185
                </item>
186
               </object>
187
              </at>
188
             </object>
189
            </at>
190
            <at name="name">lblMaximumScale</at>
191
            <at name="width">1055</at>
192
            <at name="text">maximum_scale</at>
193
            <at name="fill">
194
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
195
              <at name="name">fill</at>
196
             </object>
197
            </at>
198
            <at name="height">14</at>
199
           </object>
200
          </at>
201
         </object>
202
        </at>
203
       </object>
204
      </at>
205
     </item>
206
     <item >
207
      <at name="value">
208
       <object classname="com.jeta.forms.store.memento.BeanMemento">
209
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
210
         <at name="cellconstraints">
211
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
212
           <at name="column">5</at>
213
           <at name="row">15</at>
214
           <at name="colspan">1</at>
215
           <at name="rowspan">1</at>
216
           <at name="halign">default</at>
217
           <at name="valign">default</at>
218
           <at name="insets" object="insets">0,0,0,0</at>
219
          </object>
220
         </at>
221
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
222
        </super>
223
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
224
        <at name="beanclass">javax.swing.JFormattedTextField</at>
225
        <at name="beanproperties">
226
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
227
          <at name="classname">javax.swing.JFormattedTextField</at>
228
          <at name="properties">
229
           <object classname="com.jeta.forms.store.support.PropertyMap">
230
            <at name="border">
231
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
232
              <super classname="com.jeta.forms.store.properties.BorderProperty">
233
               <at name="name">border</at>
234
              </super>
235
              <at name="borders">
236
               <object classname="java.util.LinkedList">
237
                <item >
238
                 <at name="value">
239
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
240
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
241
                    <at name="name">border</at>
242
                   </super>
243
                  </object>
244
                 </at>
245
                </item>
246
               </object>
247
              </at>
248
             </object>
249
            </at>
250
            <at name="name">txtScaleAboveDenominator</at>
251
            <at name="width">96</at>
252
            <at name="height">20</at>
253
           </object>
254
          </at>
255
         </object>
256
        </at>
257
       </object>
258
      </at>
259
     </item>
260
     <item >
261
      <at name="value">
262
       <object classname="com.jeta.forms.store.memento.BeanMemento">
263
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
264
         <at name="cellconstraints">
265
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
266
           <at name="column">3</at>
267
           <at name="row">14</at>
268
           <at name="colspan">1</at>
269
           <at name="rowspan">1</at>
270
           <at name="halign">default</at>
271
           <at name="valign">default</at>
272
           <at name="insets" object="insets">0,0,0,0</at>
273
          </object>
274
         </at>
275
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
276
        </super>
277
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
278
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
279
        <at name="beanproperties">
280
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
281
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
282
          <at name="properties">
283
           <object classname="com.jeta.forms.store.support.PropertyMap">
284
            <at name="border">
285
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
286
              <super classname="com.jeta.forms.store.properties.BorderProperty">
287
               <at name="name">border</at>
288
              </super>
289
              <at name="borders">
290
               <object classname="java.util.LinkedList">
291
                <item >
292
                 <at name="value">
293
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
294
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
295
                    <at name="name">border</at>
296
                   </super>
297
                  </object>
298
                 </at>
299
                </item>
300
               </object>
301
              </at>
302
             </object>
303
            </at>
304
            <at name="name">lblBelow</at>
305
            <at name="width">99</at>
306
            <at name="text">is_below_1_colon</at>
307
            <at name="fill">
308
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
309
              <at name="name">fill</at>
310
             </object>
311
            </at>
312
            <at name="height">14</at>
313
           </object>
314
          </at>
315
         </object>
316
        </at>
317
       </object>
318
      </at>
319
     </item>
320
     <item >
321
      <at name="value">
322
       <object classname="com.jeta.forms.store.memento.BeanMemento">
323
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
324
         <at name="cellconstraints">
325
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
326
           <at name="column">3</at>
327
           <at name="row">15</at>
328
           <at name="colspan">1</at>
329
           <at name="rowspan">1</at>
330
           <at name="halign">default</at>
331
           <at name="valign">default</at>
332
           <at name="insets" object="insets">0,0,0,0</at>
333
          </object>
334
         </at>
335
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
336
        </super>
337
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
338
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
339
        <at name="beanproperties">
340
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
341
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
342
          <at name="properties">
343
           <object classname="com.jeta.forms.store.support.PropertyMap">
344
            <at name="border">
345
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
346
              <super classname="com.jeta.forms.store.properties.BorderProperty">
347
               <at name="name">border</at>
348
              </super>
349
              <at name="borders">
350
               <object classname="java.util.LinkedList">
351
                <item >
352
                 <at name="value">
353
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
354
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
355
                    <at name="name">border</at>
356
                   </super>
357
                  </object>
358
                 </at>
359
                </item>
360
               </object>
361
              </at>
362
             </object>
363
            </at>
364
            <at name="name">lblAbove</at>
365
            <at name="width">99</at>
366
            <at name="text">is_above_1_colon</at>
367
            <at name="fill">
368
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
369
              <at name="name">fill</at>
370
             </object>
371
            </at>
372
            <at name="height">14</at>
373
           </object>
374
          </at>
375
         </object>
376
        </at>
377
       </object>
378
      </at>
379
     </item>
380
     <item >
381
      <at name="value">
382
       <object classname="com.jeta.forms.store.memento.BeanMemento">
383
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
384
         <at name="cellconstraints">
385
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
386
           <at name="column">2</at>
387
           <at name="row">4</at>
388
           <at name="colspan">6</at>
389
           <at name="rowspan">1</at>
390
           <at name="halign">default</at>
391
           <at name="valign">default</at>
392
           <at name="insets" object="insets">0,0,0,0</at>
393
          </object>
394
         </at>
395
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
396
        </super>
397
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
398
        <at name="beanclass">javax.swing.JRadioButton</at>
399
        <at name="beanproperties">
400
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
401
          <at name="classname">javax.swing.JRadioButton</at>
402
          <at name="properties">
403
           <object classname="com.jeta.forms.store.support.PropertyMap">
404
            <at name="border">
405
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
406
              <super classname="com.jeta.forms.store.properties.BorderProperty">
407
               <at name="name">border</at>
408
              </super>
409
              <at name="borders">
410
               <object classname="java.util.LinkedList">
411
                <item >
412
                 <at name="value">
413
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
414
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
415
                    <at name="name">border</at>
416
                   </super>
417
                  </object>
418
                 </at>
419
                </item>
420
               </object>
421
              </at>
422
             </object>
423
            </at>
424
            <at name="actionCommand">1:25000</at>
425
            <at name="buttonGroup">
426
             <object classname="com.jeta.forms.store.properties.ButtonGroupProperty">
427
              <at name="name">buttonGroup</at>
428
              <at name="groupname">1</at>
429
             </object>
430
            </at>
431
            <at name="name">rdb1_25000</at>
432
            <at name="width">1288</at>
433
            <at name="text">1:25000</at>
434
            <at name="height">16</at>
435
           </object>
436
          </at>
437
         </object>
438
        </at>
439
       </object>
440
      </at>
441
     </item>
442
     <item >
443
      <at name="value">
444
       <object classname="com.jeta.forms.store.memento.BeanMemento">
445
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
446
         <at name="cellconstraints">
447
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
448
           <at name="column">2</at>
449
           <at name="row">13</at>
450
           <at name="colspan">6</at>
451
           <at name="rowspan">1</at>
452
           <at name="halign">default</at>
453
           <at name="valign">default</at>
454
           <at name="insets" object="insets">0,0,0,0</at>
455
          </object>
456
         </at>
457
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
458
        </super>
459
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
460
        <at name="beanclass">javax.swing.JRadioButton</at>
461
        <at name="beanproperties">
462
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
463
          <at name="classname">javax.swing.JRadioButton</at>
464
          <at name="properties">
465
           <object classname="com.jeta.forms.store.support.PropertyMap">
466
            <at name="border">
467
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
468
              <super classname="com.jeta.forms.store.properties.BorderProperty">
469
               <at name="name">border</at>
470
              </super>
471
              <at name="borders">
472
               <object classname="java.util.LinkedList">
473
                <item >
474
                 <at name="value">
475
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
476
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
477
                    <at name="name">border</at>
478
                   </super>
479
                  </object>
480
                 </at>
481
                </item>
482
               </object>
483
              </at>
484
             </object>
485
            </at>
486
            <at name="actionCommand">dont_show_layer_when</at>
487
            <at name="buttonGroup">
488
             <object classname="com.jeta.forms.store.properties.ButtonGroupProperty">
489
              <at name="name">buttonGroup</at>
490
              <at name="groupname">1</at>
491
             </object>
492
            </at>
493
            <at name="name">rdbConditions</at>
494
            <at name="width">1288</at>
495
            <at name="text">dont_show_layer_when_scale</at>
496
            <at name="height">16</at>
497
           </object>
498
          </at>
499
         </object>
500
        </at>
501
       </object>
502
      </at>
503
     </item>
504
     <item >
505
      <at name="value">
506
       <object classname="com.jeta.forms.store.memento.BeanMemento">
507
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
508
         <at name="cellconstraints">
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff