ThinkGeo.com    |     Documentation    |     Premium Support

How to disable edited feature clickout which ends edit mode?

Hi


I would like to know if it is possible to prevent clickout when editing feature.


This is very frustrating for a user who is trying to edit a feature and is not able to move or resize a shape by dragging a vertex using finger on iPad.


When user can not grap a vertex, edit mode is ended.


User expects to see edit vertices until an 'Accept' button is clicked and then edit changes will be committed.


How is this possible?


I tried following java script code and it has no effect, map will end edit mode as soon as user clicks outsided of any edit vertex.


Is something missing here:


var responseData = result.get_responseData();


var features = Map1.getFeaturesFromJson(parameters[0]);


var editOverlay = Map1.getEditOverlay();


editOverlay.addFeatures(features);


var modify;


var modifyControls = Map1.getControlsByClass("OpenLayers.Control.ModifyFeature");


       if (modifyControls && modifyControls.length > 0) {


        modify = modifyControls[0];


      }


      else {


        Map1.getMapParser().initDrawControls();


        modify = Map1.getControlsByClass("OpenLayers.Control.ModifyFeature")[0];


      }





 


    if (editOverlay.features.length > 0) {


      //        modify.standalone = true;


      var feature = editOverlay.features[editOverlay.features.length - 1];





      modify.toggle = false;


      modify.clickout = false;


      modify.createVertices = true;


      modify.selectFeature(feature);


      modify.activate();


    }


    else {


      modify.deactivate();


    }


 


Is it possible to specify edit vertex size so it will be easire for a user to resize/move shape using finger on iPad?


 


 


 



 Hi Sergei,



Thanks for your detailed information; I think everything you have done is correct except the codes as following:


modify.toggle = false;

modify.clickout = false;


please change it to:


modify.selectControl.clickout = false;


       modify.selectControl.toggle = false;


Because both properties are used to create selectControl in its contructor, that's why it doesn't take effect when we change it after ModifyFeature is created. 


Hope it helps,


Johnny


 



Thank You Johnny. 
  
 How I can increase edit vertices size when shape is in edit mode so a user can easily move and re-size shape?

Hi Sergei, 
  
 Please check the anwser at gis.thinkgeo.com/Support/DiscussionForums/tabid/143/aff/45/aft/11135/afv/topic/Default.aspx#36622
  
 Thanks, 
 Johnny