Thanks Michael
This makes sense
Peppe
Il 15/Ott/2016 13:18, <jump-pilot-...@lists.sourceforge.net> ha scritto:
> Revision: 5077
> http://sourceforge.net/p/jump-pilot/code/5077
> Author: michaudm
> Date: 2016-10-15 11:18:13 +0000 (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 = "<html><br>" + I18N.getMessage(CONFIRMATION_1,
> "<i>'"+layerable.getName()+"'</i>");
> message += "<br><br>" + I18N.get(CONFIRMATION_2) + "<br></html>";
> 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