Revision 47618
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/featureform/swing/impl/DefaultJFeaturesForm.java | ||
---|---|---|
760 | 760 |
theFormSet.message(i18n.getTranslation("Data saving has been cancelled.")); |
761 | 761 |
return; |
762 | 762 |
} |
763 |
if (!editingManager.canWriteFeature(newFeature)) {
|
|
763 |
if (!editingManager.validateFeature(newFeature)) {
|
|
764 | 764 |
theFormSet.message(i18n.getTranslation("The data cannot be saved. Check that all the required fields are filled out..")); |
765 | 765 |
return; |
766 | 766 |
} |
... | ... | |
788 | 788 |
if( notification.isCanceled() ) { |
789 | 789 |
theFormSet.message(i18n.getTranslation("Data saving has been cancelled.")); |
790 | 790 |
return; |
791 |
}
|
|
792 |
if (!editingManager.canWriteFeature(feature)) {
|
|
791 |
} |
|
792 |
if (!editingManager.validateFeature(feature)) {
|
|
793 | 793 |
theFormSet.message(i18n.getTranslation("The data cannot be saved. Check that all the required fields are filled out..")); |
794 | 794 |
return; |
795 | 795 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/DefaultDataSwingManager.java | ||
---|---|---|
32 | 32 |
import java.util.List; |
33 | 33 |
import java.util.Map; |
34 | 34 |
import java.util.function.Predicate; |
35 |
import java.util.function.Supplier; |
|
35 | 36 |
import javax.json.JsonObject; |
36 | 37 |
import javax.swing.AbstractButton; |
37 | 38 |
import javax.swing.Action; |
... | ... | |
151 | 152 |
import org.gvsig.fmap.dal.swing.storesrepository.StoresRepositoryController; |
152 | 153 |
import org.gvsig.fmap.dal.swing.storesrepository.StoresRepositoryTreeModel; |
153 | 154 |
import org.gvsig.fmap.geom.Geometry; |
155 |
import org.gvsig.fmap.geom.primitive.Envelope; |
|
154 | 156 |
import org.gvsig.tools.ToolsLocator; |
155 | 157 |
import org.gvsig.tools.dynform.DynFormDefinition; |
156 | 158 |
import org.gvsig.tools.dynform.DynFormLocator; |
... | ... | |
181 | 183 |
private Map<String,SearchConditionPanelFactory> searchConditionPanelFactories; |
182 | 184 |
private Integer useLabels; |
183 | 185 |
private HashMap<String, SearchResultsPanelFactory> searchResultsPanelFactories; |
186 |
private Supplier<Envelope> currentBoundingBox; |
|
184 | 187 |
|
185 | 188 |
public DefaultDataSwingManager() { |
186 | 189 |
this.featureStoreActions = new LinkedHashMap<>(); |
... | ... | |
1000 | 1003 |
public List<ReportAction> getReportActions(DataStore store, Predicate filter) { |
1001 | 1004 |
return ReportUtils.getReportActions(store, filter); |
1002 | 1005 |
} |
1006 |
|
|
1007 |
@Override |
|
1008 |
public void setCurrentBoundingBox(Supplier<Envelope> boundingBoxSupplier) { |
|
1009 |
this.currentBoundingBox = boundingBoxSupplier; |
|
1010 |
} |
|
1011 |
|
|
1012 |
@Override |
|
1013 |
public Supplier<Envelope> getCurrentBoundingBox() { |
|
1014 |
return this.currentBoundingBox; |
|
1015 |
} |
|
1003 | 1016 |
} |
1004 | 1017 |
|
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SearchConditionFieldController.java | ||
---|---|---|
19 | 19 |
import java.util.Locale; |
20 | 20 |
import java.util.Map; |
21 | 21 |
import java.util.Objects; |
22 |
import java.util.function.Supplier; |
|
22 | 23 |
import javax.json.JsonArray; |
23 | 24 |
import javax.json.JsonObject; |
24 | 25 |
import javax.swing.ComboBoxModel; |
... | ... | |
54 | 55 |
import org.gvsig.fmap.dal.feature.FeatureType; |
55 | 56 |
import org.gvsig.fmap.dal.feature.ForeingKey; |
56 | 57 |
import org.gvsig.fmap.dal.swing.DALSwingLocator; |
58 |
import org.gvsig.fmap.dal.swing.DataSwingManager; |
|
57 | 59 |
import org.gvsig.fmap.dal.swing.impl.featuretype.DefaultFeatureAttributeSelectionPanel; |
58 | 60 |
import static org.gvsig.fmap.dal.swing.impl.searchpanel.SearchConditionPanelSimplified.PANEL_NAME; |
59 | 61 |
import static org.gvsig.fmap.dal.swing.searchpanel.FeatureStoreSearchPanel.NOT_HANDLE_NULL; |
... | ... | |
62 | 64 |
import org.gvsig.fmap.dal.swing.searchpanel.SearchParameters; |
63 | 65 |
import org.gvsig.fmap.geom.Geometry; |
64 | 66 |
import org.gvsig.fmap.geom.GeometryUtils; |
67 |
import org.gvsig.fmap.geom.primitive.Envelope; |
|
65 | 68 |
import org.gvsig.json.Json; |
66 | 69 |
import org.gvsig.json.JsonArrayBuilder; |
67 | 70 |
import org.gvsig.json.JsonObjectBuilder; |
... | ... | |
108 | 111 |
/*friend*/ static final int GEOM_OPERAND_MODE_CLIPBOARD = 1; |
109 | 112 |
/*friend*/ static final int GEOM_OPERAND_MODE_LAYER_SELECTION = 2; |
110 | 113 |
/*friend*/ static final int GEOM_OPERAND_MODE_CONSTANT = 3; |
114 |
/*friend*/ static final int GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX = 4; |
|
111 | 115 |
|
112 | 116 |
private static final String OPERATOR_CONTAINS = "CONTAINS"; |
113 | 117 |
|
... | ... | |
618 | 622 |
case GEOM_OPERAND_MODE_CLIPBOARD: |
619 | 623 |
this.txtValue.setText("Contenido del portapapeles"); // i18n.getTranslation("_Clipboard_content")); |
620 | 624 |
break; |
625 |
case GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX: |
|
626 |
DataSwingManager dataSwingManager = DALSwingLocator.getDataSwingManager(); |
|
627 |
Supplier<Envelope> bbox = dataSwingManager.getCurrentBoundingBox(); |
|
628 |
if( bbox!=null ) { |
|
629 |
Envelope env = bbox.get(); |
|
630 |
if( env != null && !env.isEmpty() && !env.isCollapsed() ) { |
|
631 |
this.txtValue.setText(Objects.toString(GeometryUtils.toWKT(env.getGeometry()), "")); |
|
632 |
} else { |
|
633 |
this.txtValue.setText(""); |
|
634 |
} |
|
635 |
} else { |
|
636 |
this.txtValue.setText(""); |
|
637 |
} |
|
638 |
break; |
|
621 | 639 |
} |
622 | 640 |
break; |
623 | 641 |
default: |
... | ... | |
1740 | 1758 |
case GEOM_OPERAND_MODE_CLIPBOARD: |
1741 | 1759 |
geoms = this.getGeometryOperandFromClipboard(proj, warnings); |
1742 | 1760 |
break; |
1761 |
case GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX: |
|
1762 |
geoms = this.getCurrentBoundingBoxGeometry(proj, warnings); |
|
1763 |
break; |
|
1743 | 1764 |
case GEOM_OPERAND_MODE_EMPTY: |
1744 | 1765 |
default: |
1745 | 1766 |
return null; |
... | ... | |
1872 | 1893 |
} |
1873 | 1894 |
return s; |
1874 | 1895 |
} |
1896 |
private List<Geometry> getCurrentBoundingBoxGeometry(IProjection proj, StringBuilder warnings) { |
|
1897 |
DataSwingManager dataSwingManager = DALSwingLocator.getDataSwingManager(); |
|
1898 |
Supplier<Envelope> bbox = dataSwingManager.getCurrentBoundingBox(); |
|
1899 |
if( bbox!=null ) { |
|
1900 |
Envelope env = bbox.get(); |
|
1901 |
if( env != null && !env.isEmpty() && !env.isCollapsed() ) { |
|
1902 |
return Collections.singletonList(env.getGeometry()); |
|
1903 |
} |
|
1904 |
} |
|
1905 |
return null; |
|
1906 |
} |
|
1907 |
|
|
1875 | 1908 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SelectGeometryPanelView.xml | ||
---|---|---|
26 | 26 |
</super> |
27 | 27 |
<at name="id">/home/jjdelcerro/datos/devel/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SelectGeometryPanelView.xml</at> |
28 | 28 |
<at name="path">datos/devel/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SelectGeometryPanelView.xml</at> |
29 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.9),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.1),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at> |
|
29 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.9),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.1),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at>
|
|
30 | 30 |
<at name="colspecs">FILL:4DLU:NONE,FILL:8DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
31 | 31 |
<at name="components"> |
32 | 32 |
<object classname="java.util.LinkedList"> |
... | ... | |
37 | 37 |
<at name="cellconstraints"> |
38 | 38 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
39 | 39 |
<at name="column">2</at> |
40 |
<at name="row">2</at>
|
|
40 |
<at name="row">4</at>
|
|
41 | 41 |
<at name="colspan">2</at> |
42 | 42 |
<at name="rowspan">1</at> |
43 | 43 |
<at name="halign">default</at> |
... | ... | |
82 | 82 |
</object> |
83 | 83 |
</at> |
84 | 84 |
<at name="name">rdbUseGeomsFromClipbard</at> |
85 |
<at name="width">1418</at>
|
|
85 |
<at name="width">1189</at>
|
|
86 | 86 |
<at name="text">_Use_geometries_from_clipboard</at> |
87 | 87 |
<at name="height">18</at> |
88 | 88 |
</object> |
... | ... | |
99 | 99 |
<at name="cellconstraints"> |
100 | 100 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
101 | 101 |
<at name="column">2</at> |
102 |
<at name="row">4</at>
|
|
102 |
<at name="row">6</at>
|
|
103 | 103 |
<at name="colspan">2</at> |
104 | 104 |
<at name="rowspan">1</at> |
105 | 105 |
<at name="halign">default</at> |
... | ... | |
144 | 144 |
</object> |
145 | 145 |
</at> |
146 | 146 |
<at name="name">rdbUseGeomsFromLayerSelection</at> |
147 |
<at name="width">1418</at>
|
|
147 |
<at name="width">1189</at>
|
|
148 | 148 |
<at name="text">_Use_geometries_from_layer_selection</at> |
149 | 149 |
<at name="height">18</at> |
150 | 150 |
</object> |
... | ... | |
161 | 161 |
<at name="cellconstraints"> |
162 | 162 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
163 | 163 |
<at name="column">2</at> |
164 |
<at name="row">10</at>
|
|
164 |
<at name="row">12</at>
|
|
165 | 165 |
<at name="colspan">2</at> |
166 | 166 |
<at name="rowspan">1</at> |
167 | 167 |
<at name="halign">default</at> |
... | ... | |
206 | 206 |
</object> |
207 | 207 |
</at> |
208 | 208 |
<at name="name">rdbConstantGeometry</at> |
209 |
<at name="width">1418</at>
|
|
209 |
<at name="width">1189</at>
|
|
210 | 210 |
<at name="text">_Use_the_following_geometry</at> |
211 | 211 |
<at name="height">18</at> |
212 | 212 |
</object> |
... | ... | |
223 | 223 |
<at name="cellconstraints"> |
224 | 224 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
225 | 225 |
<at name="column">3</at> |
226 |
<at name="row">8</at>
|
|
226 |
<at name="row">10</at>
|
|
227 | 227 |
<at name="colspan">1</at> |
228 | 228 |
<at name="rowspan">1</at> |
229 | 229 |
<at name="halign">default</at> |
... | ... | |
263 | 263 |
<at name="scrollableTracksViewportHeight">true</at> |
264 | 264 |
<at name="scrollableTracksViewportWidth">true</at> |
265 | 265 |
<at name="name">treeStores</at> |
266 |
<at name="width">1404</at>
|
|
266 |
<at name="width">1175</at>
|
|
267 | 267 |
<at name="scollBars"> |
268 | 268 |
<object classname="com.jeta.forms.store.properties.ScrollBarsProperty"> |
269 | 269 |
<at name="name">scollBars</at> |
... | ... | |
291 | 291 |
</at> |
292 | 292 |
</object> |
293 | 293 |
</at> |
294 |
<at name="height">578</at>
|
|
294 |
<at name="height">555</at>
|
|
295 | 295 |
</object> |
296 | 296 |
</at> |
297 | 297 |
</object> |
... | ... | |
306 | 306 |
<at name="cellconstraints"> |
307 | 307 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
308 | 308 |
<at name="column">3</at> |
309 |
<at name="row">12</at>
|
|
309 |
<at name="row">14</at>
|
|
310 | 310 |
<at name="colspan">1</at> |
311 | 311 |
<at name="rowspan">1</at> |
312 | 312 |
<at name="halign">default</at> |
... | ... | |
346 | 346 |
<at name="scrollableTracksViewportHeight">true</at> |
347 | 347 |
<at name="scrollableTracksViewportWidth">true</at> |
348 | 348 |
<at name="name">txtGeometry</at> |
349 |
<at name="width">1404</at>
|
|
349 |
<at name="width">1175</at>
|
|
350 | 350 |
<at name="scollBars"> |
351 | 351 |
<object classname="com.jeta.forms.store.properties.ScrollBarsProperty"> |
352 | 352 |
<at name="name">scollBars</at> |
... | ... | |
374 | 374 |
</at> |
375 | 375 |
</object> |
376 | 376 |
</at> |
377 |
<at name="height">133</at>
|
|
377 |
<at name="height">131</at>
|
|
378 | 378 |
</object> |
379 | 379 |
</at> |
380 | 380 |
</object> |
... | ... | |
389 | 389 |
<at name="cellconstraints"> |
390 | 390 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
391 | 391 |
<at name="column">3</at> |
392 |
<at name="row">14</at>
|
|
392 |
<at name="row">16</at>
|
|
393 | 393 |
<at name="colspan">1</at> |
394 | 394 |
<at name="rowspan">1</at> |
395 | 395 |
<at name="halign">default</at> |
... | ... | |
399 | 399 |
</at> |
400 | 400 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
401 | 401 |
</super> |
402 |
<at name="id">embedded.1945238884</at>
|
|
402 |
<at name="id">embedded.400599432</at>
|
|
403 | 403 |
<at name="rowspecs">CENTER:DEFAULT:NONE</at> |
404 | 404 |
<at name="colspecs">FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at> |
405 | 405 |
<at name="components"> |
... | ... | |
449 | 449 |
</object> |
450 | 450 |
</at> |
451 | 451 |
<at name="name">txtProjection</at> |
452 |
<at name="width">1309</at>
|
|
452 |
<at name="width">1080</at>
|
|
453 | 453 |
<at name="height">22</at> |
454 | 454 |
</object> |
455 | 455 |
</at> |
... | ... | |
667 | 667 |
<at name="cellconstraints"> |
668 | 668 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
669 | 669 |
<at name="column">3</at> |
670 |
<at name="row">6</at>
|
|
670 |
<at name="row">8</at>
|
|
671 | 671 |
<at name="colspan">1</at> |
672 | 672 |
<at name="rowspan">1</at> |
673 | 673 |
<at name="halign">default</at> |
... | ... | |
706 | 706 |
</at> |
707 | 707 |
<at name="actionCommand">_Use_the_geometry_bounding_box</at> |
708 | 708 |
<at name="name">chkUseTheGeometryBoundingBox</at> |
709 |
<at name="width">1406</at>
|
|
709 |
<at name="width">1177</at>
|
|
710 | 710 |
<at name="text">_Use_the_geometry_bounding_box</at> |
711 | 711 |
<at name="height">18</at> |
712 | 712 |
</object> |
... | ... | |
716 | 716 |
</object> |
717 | 717 |
</at> |
718 | 718 |
</item> |
719 |
<item > |
|
720 |
<at name="value"> |
|
721 |
<object classname="com.jeta.forms.store.memento.BeanMemento"> |
|
722 |
<super classname="com.jeta.forms.store.memento.ComponentMemento"> |
|
723 |
<at name="cellconstraints"> |
|
724 |
<object classname="com.jeta.forms.store.memento.CellConstraintsMemento"> |
|
725 |
<at name="column">2</at> |
|
726 |
<at name="row">2</at> |
|
727 |
<at name="colspan">2</at> |
|
728 |
<at name="rowspan">1</at> |
|
729 |
<at name="halign">default</at> |
|
730 |
<at name="valign">default</at> |
|
731 |
<at name="insets" object="insets">0,0,0,0</at> |
|
732 |
</object> |
|
733 |
</at> |
|
734 |
<at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at> |
|
735 |
</super> |
|
736 |
<at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at> |
|
737 |
<at name="beanclass">javax.swing.JRadioButton</at> |
|
738 |
<at name="beanproperties"> |
|
739 |
<object classname="com.jeta.forms.store.memento.PropertiesMemento"> |
|
740 |
<at name="classname">javax.swing.JRadioButton</at> |
|
741 |
<at name="properties"> |
|
742 |
<object classname="com.jeta.forms.store.support.PropertyMap"> |
|
743 |
<at name="border"> |
|
744 |
<object classname="com.jeta.forms.store.properties.CompoundBorderProperty"> |
|
745 |
<super classname="com.jeta.forms.store.properties.BorderProperty"> |
|
746 |
<at name="name">border</at> |
|
747 |
</super> |
|
748 |
<at name="borders"> |
|
749 |
<object classname="java.util.LinkedList"> |
|
750 |
<item > |
|
751 |
<at name="value"> |
|
752 |
<object classname="com.jeta.forms.store.properties.DefaultBorderProperty"> |
|
753 |
<super classname="com.jeta.forms.store.properties.BorderProperty"> |
|
754 |
<at name="name">border</at> |
|
755 |
</super> |
|
756 |
</object> |
|
757 |
</at> |
|
758 |
</item> |
|
759 |
</object> |
|
760 |
</at> |
|
761 |
</object> |
|
762 |
</at> |
|
763 |
<at name="actionCommand">_Use_geometries_from_clipboard</at> |
|
764 |
<at name="buttonGroup"> |
|
765 |
<object classname="com.jeta.forms.store.properties.ButtonGroupProperty"> |
|
766 |
<at name="name">buttonGroup</at> |
|
767 |
<at name="groupname">1</at> |
|
768 |
</object> |
|
769 |
</at> |
|
770 |
<at name="name">rdbUseCurrentBoundingBox</at> |
|
771 |
<at name="width">1189</at> |
|
772 |
<at name="text">_Use_current_boundingbox</at> |
|
773 |
<at name="height">18</at> |
|
774 |
</object> |
|
775 |
</at> |
|
776 |
</object> |
|
777 |
</at> |
|
778 |
</object> |
|
779 |
</at> |
|
780 |
</item> |
|
719 | 781 |
</object> |
720 | 782 |
</at> |
721 | 783 |
<at name="properties"> |
... | ... | |
773 | 835 |
<at name="cellpainters"> |
774 | 836 |
<object classname="com.jeta.forms.store.support.Matrix"> |
775 | 837 |
<at name="rows"> |
776 |
<object classname="[Ljava.lang.Object;" size="15">
|
|
838 |
<object classname="[Ljava.lang.Object;" size="17">
|
|
777 | 839 |
<at name="item" index="0"> |
778 | 840 |
<object classname="[Ljava.lang.Object;" size="4"/> |
779 | 841 |
</at> |
... | ... | |
819 | 881 |
<at name="item" index="14"> |
820 | 882 |
<object classname="[Ljava.lang.Object;" size="4"/> |
821 | 883 |
</at> |
884 |
<at name="item" index="15"> |
|
885 |
<object classname="[Ljava.lang.Object;" size="4"/> |
|
886 |
</at> |
|
887 |
<at name="item" index="16"> |
|
888 |
<object classname="[Ljava.lang.Object;" size="4"/> |
|
889 |
</at> |
|
822 | 890 |
</object> |
823 | 891 |
</at> |
824 | 892 |
</object> |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SelectGeometryPanelView.java | ||
---|---|---|
35 | 35 |
JButton btnProjection = new JButton(); |
36 | 36 |
JLabel lblProjection = new JLabel(); |
37 | 37 |
JCheckBox chkUseTheGeometryBoundingBox = new JCheckBox(); |
38 |
JRadioButton rdbUseCurrentBoundingBox = new JRadioButton(); |
|
38 | 39 |
|
39 | 40 |
/** |
40 | 41 |
* Default constructor |
... | ... | |
126 | 127 |
public JPanel createPanel() |
127 | 128 |
{ |
128 | 129 |
JPanel jpanel1 = new JPanel(); |
129 |
FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:8DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.9),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.1),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE"); |
|
130 |
FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:8DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.9),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.1),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE");
|
|
130 | 131 |
CellConstraints cc = new CellConstraints(); |
131 | 132 |
jpanel1.setLayout(formlayout1); |
132 | 133 |
|
... | ... | |
134 | 135 |
rdbUseGeomsFromClipbard.setName("rdbUseGeomsFromClipbard"); |
135 | 136 |
rdbUseGeomsFromClipbard.setText("_Use_geometries_from_clipboard"); |
136 | 137 |
buttongroup1.add(rdbUseGeomsFromClipbard); |
137 |
jpanel1.add(rdbUseGeomsFromClipbard,cc.xywh(2,2,2,1));
|
|
138 |
jpanel1.add(rdbUseGeomsFromClipbard,cc.xywh(2,4,2,1));
|
|
138 | 139 |
|
139 | 140 |
rdbUseGeomsFromLayerSelection.setActionCommand("_Use_geometries_from_layer_selection"); |
140 | 141 |
rdbUseGeomsFromLayerSelection.setName("rdbUseGeomsFromLayerSelection"); |
141 | 142 |
rdbUseGeomsFromLayerSelection.setText("_Use_geometries_from_layer_selection"); |
142 | 143 |
buttongroup1.add(rdbUseGeomsFromLayerSelection); |
143 |
jpanel1.add(rdbUseGeomsFromLayerSelection,cc.xywh(2,4,2,1));
|
|
144 |
jpanel1.add(rdbUseGeomsFromLayerSelection,cc.xywh(2,6,2,1));
|
|
144 | 145 |
|
145 | 146 |
rdbConstantGeometry.setActionCommand("_Use_next_geometry"); |
146 | 147 |
rdbConstantGeometry.setName("rdbConstantGeometry"); |
147 | 148 |
rdbConstantGeometry.setText("_Use_the_following_geometry"); |
148 | 149 |
buttongroup1.add(rdbConstantGeometry); |
149 |
jpanel1.add(rdbConstantGeometry,cc.xywh(2,10,2,1));
|
|
150 |
jpanel1.add(rdbConstantGeometry,cc.xywh(2,12,2,1));
|
|
150 | 151 |
|
151 | 152 |
treeStores.setName("treeStores"); |
152 | 153 |
JScrollPane jscrollpane1 = new JScrollPane(); |
153 | 154 |
jscrollpane1.setViewportView(treeStores); |
154 | 155 |
jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); |
155 | 156 |
jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); |
156 |
jpanel1.add(jscrollpane1,cc.xy(3,8));
|
|
157 |
jpanel1.add(jscrollpane1,cc.xy(3,10));
|
|
157 | 158 |
|
158 | 159 |
txtGeometry.setName("txtGeometry"); |
159 | 160 |
JScrollPane jscrollpane2 = new JScrollPane(); |
160 | 161 |
jscrollpane2.setViewportView(txtGeometry); |
161 | 162 |
jscrollpane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); |
162 | 163 |
jscrollpane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); |
163 |
jpanel1.add(jscrollpane2,cc.xy(3,12));
|
|
164 |
jpanel1.add(jscrollpane2,cc.xy(3,14));
|
|
164 | 165 |
|
165 |
jpanel1.add(createPanel1(),cc.xy(3,14));
|
|
166 |
jpanel1.add(createPanel1(),cc.xy(3,16));
|
|
166 | 167 |
chkUseTheGeometryBoundingBox.setActionCommand("_Use_the_geometry_bounding_box"); |
167 | 168 |
chkUseTheGeometryBoundingBox.setName("chkUseTheGeometryBoundingBox"); |
168 | 169 |
chkUseTheGeometryBoundingBox.setText("_Use_the_geometry_bounding_box"); |
169 |
jpanel1.add(chkUseTheGeometryBoundingBox,cc.xy(3,6));
|
|
170 |
jpanel1.add(chkUseTheGeometryBoundingBox,cc.xy(3,8));
|
|
170 | 171 |
|
171 |
addFillComponents(jpanel1,new int[]{ 1,2,3,4 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }); |
|
172 |
rdbUseCurrentBoundingBox.setActionCommand("_Use_geometries_from_clipboard"); |
|
173 |
rdbUseCurrentBoundingBox.setName("rdbUseCurrentBoundingBox"); |
|
174 |
rdbUseCurrentBoundingBox.setText("_Use_current_boundingbox"); |
|
175 |
buttongroup1.add(rdbUseCurrentBoundingBox); |
|
176 |
jpanel1.add(rdbUseCurrentBoundingBox,cc.xywh(2,2,2,1)); |
|
177 |
|
|
178 |
addFillComponents(jpanel1,new int[]{ 1,2,3,4 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17 }); |
|
172 | 179 |
return jpanel1; |
173 | 180 |
} |
174 | 181 |
|
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/searchpanel/SelectGeometryPanel.java | ||
---|---|---|
10 | 10 |
import org.gvsig.fmap.dal.swing.ProjectionPickerController; |
11 | 11 |
import static org.gvsig.fmap.dal.swing.impl.searchpanel.SearchConditionFieldController.GEOM_OPERAND_MODE_CLIPBOARD; |
12 | 12 |
import static org.gvsig.fmap.dal.swing.impl.searchpanel.SearchConditionFieldController.GEOM_OPERAND_MODE_CONSTANT; |
13 |
import static org.gvsig.fmap.dal.swing.impl.searchpanel.SearchConditionFieldController.GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX; |
|
13 | 14 |
import static org.gvsig.fmap.dal.swing.impl.searchpanel.SearchConditionFieldController.GEOM_OPERAND_MODE_LAYER_SELECTION; |
14 | 15 |
import org.gvsig.fmap.dal.swing.storesrepository.StoresRepositoryController; |
15 | 16 |
import org.gvsig.fmap.geom.Geometry; |
... | ... | |
62 | 63 |
this.rdbUseGeomsFromLayerSelection.addChangeListener((ChangeEvent e) -> { |
63 | 64 |
doUpdateEnableComponents(); |
64 | 65 |
}); |
66 |
this.rdbUseCurrentBoundingBox.addChangeListener((ChangeEvent e) -> { |
|
67 |
doUpdateEnableComponents(); |
|
68 |
}); |
|
65 | 69 |
this.rdbUseGeomsFromClipbard.setSelected(true); |
66 | 70 |
|
67 | 71 |
toolsSwingManager.setDefaultPopupMenu(txtGeometry); |
... | ... | |
78 | 82 |
toolsSwingManager.translate(this.rdbConstantGeometry); |
79 | 83 |
toolsSwingManager.translate(this.rdbUseGeomsFromClipbard); |
80 | 84 |
toolsSwingManager.translate(this.rdbUseGeomsFromLayerSelection); |
85 |
toolsSwingManager.translate(this.rdbUseCurrentBoundingBox); |
|
81 | 86 |
toolsSwingManager.translate(this.lblProjection); |
82 | 87 |
toolsSwingManager.translate(this.chkUseTheGeometryBoundingBox); |
83 | 88 |
} |
... | ... | |
92 | 97 |
return GEOM_OPERAND_MODE_CLIPBOARD; |
93 | 98 |
} else if( this.rdbUseGeomsFromLayerSelection.isSelected() ) { |
94 | 99 |
return GEOM_OPERAND_MODE_LAYER_SELECTION; |
100 |
} else if( this.rdbUseCurrentBoundingBox.isSelected() ) { |
|
101 |
return GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX; |
|
95 | 102 |
} else if( this.rdbConstantGeometry.isSelected() ) { |
96 | 103 |
return GEOM_OPERAND_MODE_CONSTANT; |
97 | 104 |
} |
... | ... | |
138 | 145 |
this.pickerProjection.setEnabled(false); |
139 | 146 |
this.txtGeometry.setEnabled(false); |
140 | 147 |
this.chkUseTheGeometryBoundingBox.setEnabled(true); |
148 |
} else if( this.rdbUseCurrentBoundingBox.isSelected() ) { |
|
149 |
this.treeStores.setEnabled(false); |
|
150 |
this.pickerProjection.setEnabled(false); |
|
151 |
this.txtGeometry.setEnabled(false); |
|
152 |
this.chkUseTheGeometryBoundingBox.setEnabled(false); |
|
141 | 153 |
} else if( this.rdbConstantGeometry.isSelected() ) { |
142 | 154 |
this.treeStores.setEnabled(false); |
143 | 155 |
this.pickerProjection.setEnabled(true); |
... | ... | |
149 | 161 |
void setMode(int mode) { |
150 | 162 |
switch(mode) { |
151 | 163 |
case GEOM_OPERAND_MODE_LAYER_SELECTION: |
164 |
this.rdbUseCurrentBoundingBox.setSelected(false); |
|
152 | 165 |
this.rdbUseGeomsFromClipbard.setSelected(false); |
153 | 166 |
this.rdbUseGeomsFromLayerSelection.setSelected(true); |
154 | 167 |
this.rdbConstantGeometry.setSelected(false); |
155 | 168 |
break; |
156 | 169 |
case GEOM_OPERAND_MODE_CONSTANT: |
170 |
this.rdbUseCurrentBoundingBox.setSelected(false); |
|
157 | 171 |
this.rdbUseGeomsFromClipbard.setSelected(false); |
158 | 172 |
this.rdbUseGeomsFromLayerSelection.setSelected(false); |
159 | 173 |
this.rdbConstantGeometry.setSelected(true); |
160 | 174 |
break; |
175 |
case GEOM_OPERAND_MODE_CURRENT_BOUNDINGBOX: |
|
176 |
this.rdbUseCurrentBoundingBox.setSelected(true); |
|
177 |
this.rdbUseGeomsFromClipbard.setSelected(false); |
|
178 |
this.rdbUseGeomsFromLayerSelection.setSelected(false); |
|
179 |
this.rdbConstantGeometry.setSelected(false); |
|
180 |
break; |
|
161 | 181 |
case GEOM_OPERAND_MODE_CLIPBOARD: |
162 | 182 |
default: |
183 |
this.rdbUseCurrentBoundingBox.setSelected(false); |
|
163 | 184 |
this.rdbUseGeomsFromClipbard.setSelected(true); |
164 | 185 |
this.rdbUseGeomsFromLayerSelection.setSelected(false); |
165 | 186 |
this.rdbConstantGeometry.setSelected(false); |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.api/src/main/java/org/gvsig/fmap/dal/swing/DataSwingManager.java | ||
---|---|---|
28 | 28 |
import java.util.List; |
29 | 29 |
import java.util.Map; |
30 | 30 |
import java.util.function.Predicate; |
31 |
import java.util.function.Supplier; |
|
31 | 32 |
import javax.json.JsonObject; |
32 | 33 |
import javax.swing.AbstractButton; |
33 | 34 |
import javax.swing.Icon; |
... | ... | |
83 | 84 |
import org.gvsig.fmap.dal.swing.searchpanel.SearchConditionPanel.SearchConditionPanelFactory; |
84 | 85 |
import org.gvsig.fmap.dal.swing.searchpanel.SearchParameters; |
85 | 86 |
import org.gvsig.fmap.dal.swing.storesrepository.StoresRepositoryController; |
87 |
import org.gvsig.fmap.geom.primitive.Envelope; |
|
86 | 88 |
import org.gvsig.tools.dynform.DynFormDefinition; |
87 | 89 |
import org.gvsig.tools.dynobject.DynStruct; |
88 | 90 |
import org.gvsig.tools.util.Factory; |
... | ... | |
270 | 272 |
public void registerSearchResultsPanel(SearchResultsPanelFactory factory); |
271 | 273 |
|
272 | 274 |
public Iterable<SearchResultsPanelFactory> getSearchResultsPanels(); |
273 |
} |
|
275 |
|
|
276 |
public void setCurrentBoundingBox(Supplier<Envelope> boundingBoxSupplier); |
|
277 |
|
|
278 |
public Supplier<Envelope> getCurrentBoundingBox(); |
|
279 |
|
|
280 |
} |
Also available in: Unified diff