Ignore:
Timestamp:
2019-01-15T10:08:58+13:00 (5 years ago)
Author:
ak19
Message:

Potential fix for a history bug found after resizing rectangles and circles

File:
1 edited

Legend:

Unmodified
Added
Removed
  • gs3-extensions/map-editor/DrawingManager/historyManager.js

    r32723 r32724  
    2727
    2828    //Deactivated at the moment
    29     if (enableSelectionFeature) {
    30         selectedShapes = [];
    31         var i = 0;
    32         var lastEntry = prevOverlays[prevOverlays.length - 1][i];
    33         console.log(prevOverlays[prevOverlays.length - 1].length);
    34 
    35         for (var i = 0; i < lastEntry.length; i++) {
    36             selectedShapes.push(prevOverlays)
    37             console.log("comes here");
    38         }
    39 
    40     }
     29    //if (enableSelectionFeature) {
     30    //  selectedShapes = [];
     31    //  var i = 0;
     32    //  var lastEntry = prevOverlays[prevOverlays.length - 1][i];
     33    //  console.log(prevOverlays[prevOverlays.length - 1].length);
     34    //
     35    //  for (var i = 0; i < lastEntry.length; i++) {
     36    //      selectedShapes.push(prevOverlays)
     37    //      console.log("comes here");
     38    //  }
     39    //
     40    //}
    4141}
    4242
     
    144144    var fillOpacity = rect.fillOpacity;
    145145    var bounds = rect.getBounds();
     146    var type = rect.type;
    146147    //var editable      = rect.editable;
    147148
     
    154155            bounds: bounds,
    155156            draggable: true,
    156             editable: false
     157            editable: false,
     158            type: type
    157159        });
    158160
     
    238240
    239241function historyOverlayPush() {
     242    if(undoneOverlays.length > 0) {
     243        for(var i = 0; i < undoneOverlays.length; i++) {
     244           
     245            entryType.pop();
     246        }       
     247    }
    240248    undoneOverlays = [];
    241     var overlays_copy = [];
    242     for (var i = 0; i < overlays.length; i++) {
    243        
    244         var clone_shape = cloneShape(overlays[i]);
    245         if (overlayItemIsShape(clone_shape)) {
    246             addShapeListeners(clone_shape, null); // don't have an overlay event!
    247         } else {
    248             addMarkerListeners(clone_shape, null); // don't have an overlay event!
    249         }
    250         overlays_copy[i] = clone_shape;
    251     }
    252 
    253     prevOverlays.push(overlays_copy);
    254 
     249    //if(resizeEntry){
     250            //prevOverlays.push(presentOverlays[0]);
     251           
     252    //} else {
     253        var overlays_copy = [];
     254        for (var i = 0; i < overlays.length; i++) {
     255            var clone_shape = cloneShape(overlays[i]);
     256            if(resizeEntry) {
     257                //console.log("hey lol");
     258                clone_shape = cloneShape(presentOverlays[0][i]);
     259            }
     260            if (overlayItemIsShape(clone_shape)) {
     261                addShapeListeners(clone_shape, null); // don't have an overlay event!
     262            } else {
     263                addMarkerListeners(clone_shape, null); // don't have an overlay event!
     264            }
     265            overlays_copy[i] = clone_shape;
     266        }
     267        prevOverlays.push(overlays_copy);       
     268    //}
    255269}
    256270
    257271function presentOverlayPush() {
    258     if (resizeEntry) {
    259         prevOverlays.push(presentOverlays[0]);
    260     }
     272   
     273    //clean the entry type array
     274
     275    if(resizeEntry) {
     276        entryType.push("resize");
     277    } else {
     278        entryType.push("not resize");
     279    }
     280   
    261281    presentOverlays = [];
    262282    var overlays_copy = [];
     
    274294
    275295function undoneOverlaysPush() {
     296   
    276297    var conditionUndone = presentOverlays[presentOverlays.length - 1] !== undefined;
    277298
     
    284305    if (conditionPresent) {
    285306        presentOverlays.push(prevOverlays[prevOverlays.length - 1]);
    286 
    287     }
    288 }
     307    }
     308}
Note: See TracChangeset for help on using the changeset viewer.