Thanks Michael
This makes sense
Peppe
Il 15/Ott/2016 13:18, ha scritto:
> Revision: 5077
> http://sourceforge.net/p/jump-pilot/code/5077
> Author: michaudm
> Date: 2016-10-15 11:18:13 + (Sat, 15 Oct 2016)
> Log Message:
> ---
> Fix #436 : make invisible layers not editable.
>
> Modified Paths:
> --
> core/trunk/src/com/vividsolutions/jump/workbench/
> model/AbstractLayerable.java
> core/trunk/src/com/vividsolutions/jump/workbench/
> ui/plugin/EditablePlugIn.java
>
> Modified: core/trunk/src/com/vividsolutions/jump/workbench/
> model/AbstractLayerable.java
> ===
> ---
> core/trunk/src/com/vividsolutions/jump/workbench/model/AbstractLayerable.java
> 2016-10-15 10:35:42 UTC (rev 5076)
> +++
> core/trunk/src/com/vividsolutions/jump/workbench/model/AbstractLayerable.java
> 2016-10-15 11:18:13 UTC (rev 5077)
> @@ -131,8 +131,8 @@
> if (this.visible == visible) {
>return;
> }
> -
> this.visible = visible;
> +editable = visible && editable;
> fireLayerChanged(LayerEventType.VISIBILITY_CHANGED);
>}
>
>
> Modified: core/trunk/src/com/vividsolutions/jump/workbench/
> ui/plugin/EditablePlugIn.java
> ===
> ---
> core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/EditablePlugIn.java
> 2016-10-15 10:35:42 UTC (rev 5076)
> +++
> core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/EditablePlugIn.java
> 2016-10-15 11:18:13 UTC (rev 5077)
> @@ -45,10 +45,7 @@
> import com.vividsolutions.jump.workbench.plugin.EnableCheckFactory;
> import com.vividsolutions.jump.workbench.plugin.MultiEnableCheck;
> import com.vividsolutions.jump.workbench.plugin.PlugInContext;
> -import com.vividsolutions.jump.workbench.ui.LayerNamePanel;
> -import com.vividsolutions.jump.workbench.ui.LayerNamePanelProxy;
> -import com.vividsolutions.jump.workbench.ui.LayerableNamePanel;
> -import com.vividsolutions.jump.workbench.ui.OKCancelDialog;
> +import com.vividsolutions.jump.workbench.ui.*;
> import com.vividsolutions.jump.workbench.ui.cursortool.
> editing.EditingPlugIn;
> import com.vividsolutions.jump.workbench.ui.images.IconLoader;
>
> @@ -76,16 +73,20 @@
>public boolean execute(PlugInContext context) throws Exception {
> reportNothingToUndoYet(context);
>
> +boolean single = PersistentBlackboardPlugIn.get(context.
> getWorkbenchContext())
> +.get(EditOptionsPanel.SINGLE_EDITABLE_LAYER_KEY, true);
> +
> Layerable[] layers = getSelectedLayerables(context.
> getWorkbenchContext());
> // assume what to do by status of first selected layer
> boolean makeEditable = !layers[0].isEditable();
> // set states for each
>
> for (Layerable layerable : layers) {
> - if (isWritable(layerable)) {
> -if (makeEditable) setAllLayersToUneditable(context);
> + if (isWritable(layerable) && layerable.isVisible()) {
> +if (single) setAllLayersToUneditable(context);
> +//if (makeEditable) setAllLayersToUneditable(context);
> layerable.setEditable(makeEditable);
> - } else {
> + } else if (layerable.isVisible()) {
> String message = "" + I18N.getMessage(CONFIRMATION_1,
> "'"+layerable.getName()+"'");
> message += "" + I18N.get(CONFIRMATION_2) + "";
> JLabel label = new JLabel(message);
> @@ -104,7 +105,8 @@
> });
> okCancelPanel.setVisible(true);
> if (okCancelPanel.wasOKPressed()) {
> - if (makeEditable) setAllLayersToUneditable(context);
> + if (single) setAllLayersToUneditable(context);
> + //if (makeEditable) setAllLayersToUneditable(context);
>layerable.setEditable(makeEditable);
>if (layerable instanceof Layer) {
> ((Layer)layerable).setDataSourceQuery(null);
>
>
>
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> ___
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot___
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel