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/index.js

    r32723 r32724  
    1010var opacityValue = 0.4;
    1111var overlays = [];
     12var entryType = [];
    1213var drawingManager;
    1314var selectedShape;
     
    4243        setSelectedOpacity(opacityValue);
    4344    }
    44    
     45
    4546    document.getElementById("thicknessRange").addEventListener("mousedown", shapeSpecsChangeMD);
    4647    document.getElementById("colourOpacity").addEventListener("mousedown", shapeSpecsChangeMD);
     
    5152});
    5253
     54document.addEventListener("mousedown", function(){
     55   
     56  //console.log(document.body.style.cursor);
     57 // console.log(document.getElementById("map").style.cursor);
     58});
    5359function shapeSpecsChangeMD() {
    5460    if (selectedShapes.length > 0) {
     
    115121            center: {lat: -34.397, lng: 150.644
    116122            },
    117             zoom: 8,
     123            zoom: 2,
    118124        });
    119125
    120126    drawingManager = new google.maps.drawing.DrawingManager({
    121             drawingMode: google.maps.drawing.OverlayType.MARKER,
     127            drawingMode: google.maps.drawing.OverlayType.RECTANGLE,
    122128            drawingControl: true,
    123129            drawingControlOptions: {
     
    138144    //overlays.push(event.overlay); // store reference to added overlay
    139145    google.maps.event.addListener(drawingManager, 'overlaycomplete', function (e) {
     146        console.log(e);
    140147       
    141148        historyOverlayPush();
     
    257264    google.maps.event.addListener(newShape, 'dragstart', function (e) {
    258265       
     266       
     267       
    259268        beingDragged = true;
    260269        historyOverlayPush();
     
    278287   
    279288    google.maps.event.addListener(newShape, 'drag', function (e) {
     289       
     290       
    280291
    281292        //for(var i = 0; i < selectedShapes.length; i++) {
     
    287298        //          west: selectedShapes[i].getBounds().ea.j + (selectedShapes[i].getBounds().ea.j - mal)
    288299        //      }
    289         //      selectedShapes[i].set
     300        //      selectedShapes[i].setBounds
    290301        //  } else {
    291            
     302        //
    292303        //  }
    293304        // 
     
    299310   
    300311    google.maps.event.addListener(newShape, 'dragstart', function (e) {
     312       
     313        //faj = newShape.bounds.fa.j;
     314        //fal = newShape.bounds.fa.l;
     315        //maj = newShape.bounds.ma.j;
     316        //mal = newShape.bounds.ma.l;
     317       
     318        //console.log(faj, fal, maj, mal);
     319   
    301320       
    302321        beingDragged = true;
     
    315334        if (beingDragged == false){
    316335            resizeEntry = true;
     336            historyOverlayPush();
    317337            presentOverlayPush();
    318338            resizeEntry = false;
    319339        }
     340       
    320341    });
    321342
    322343    //Add an event listener to select a shape if the mouse hovers over it
    323344    google.maps.event.addListener(newShape, 'mousedown', function (e) {
     345        //console.log(e);
    324346        if (e.vertex !== undefined || e.edge !== undefined) {
    325347            historyOverlayPush()
     
    355377   
    356378//Set selection for the selected overlay
    357     function setSelection(shape, e) {   
    358         if (shape.type !== 'marker') {
    359             if (shiftKeyPressed == false) {
    360                 if (e.vertex == undefined) {
    361                     if(e.edge == undefined) {                   
    362                         clearSelection();
    363                         shape.setEditable(true);
    364                     }
     379function setSelection(shape, e) {   
     380    if (shape.type !== 'marker') {
     381        if (shiftKeyPressed == false) {
     382            if (e.vertex == undefined) {
     383                if(e.edge == undefined) {                   
     384                    clearSelection();
     385                    shape.setEditable(true);
    365386                }
    366387            }
    367             if (selectedShapes.includes(shape)) {
    368                 if(e.vertex == undefined ) {
    369                     if(e.edge == undefined) {
    370                         //removeFromSelectedShapes(shape);
    371                     }
     388        }
     389        if (selectedShapes.includes(shape)) {
     390            if(e.vertex == undefined ) {
     391                if(e.edge == undefined) {
     392                    //removeFromSelectedShapes(shape);
    372393                }
    373             } else {
    374                 shape.setEditable(true);
    375                 selectedShapes.push(shape);
    376             }
    377 
    378 
    379             //Send the values to be updated
    380             var thi = shape.strokeWeight;
    381             var opa = shape.fillOpacity;
    382             var fCol = shape.fillColor;
    383             var sCol = shape.strokeColor;
    384             updateMenuValues(thi, opa, fCol, sCol);
    385 
    386         } else if (shape.type == 'marker') {
    387             clearSelection();
    388         }
    389         selectedShape = shape;
    390     }
    391    
     394            }
     395        } else {
     396            shape.setEditable(true);
     397            selectedShapes.push(shape);
     398        }
     399
     400
     401        //Send the values to be updated
     402        var thi = shape.strokeWeight;
     403        var opa = shape.fillOpacity;
     404        var fCol = shape.fillColor;
     405        var sCol = shape.strokeColor;
     406        updateMenuValues(thi, opa, fCol, sCol);
     407
     408    } else if (shape.type == 'marker') {
     409        clearSelection();
     410    }
     411    selectedShape = shape;
     412}
     413
     414function boundsExtraction() {
     415   
     416   
     417}
    392418
    393419function removeFromSelectedShapes(shape) {
     
    399425        }
    400426        allowDeselect = false;
    401     }
    402    
    403    
     427    }   
    404428}
    405429   
     
    468492}
    469493
     494
    470495function printHistory() {
    471496    console.log("prev", prevOverlays);
    472497    console.log("present ", presentOverlays);
    473498    console.log("undone ", undoneOverlays);
     499    console.log(entryType);
    474500}
    475501
Note: See TracChangeset for help on using the changeset viewer.