diff options
author | Ananya Sen | 2012-06-20 11:24:24 -0700 |
---|---|---|
committer | Ananya Sen | 2012-06-20 11:24:24 -0700 |
commit | d852ea28dad399e84e8d5e69c0293500c30b59f1 (patch) | |
tree | 9b3a4bc0b0a12aec1cd33622e8373cbe00ae1c1a | |
parent | 7ebdf28143306c0e3eca08846114179f0e037c1e (diff) | |
download | ninja-d852ea28dad399e84e8d5e69c0293500c30b59f1.tar.gz |
Notify for adding multiple elements together, to fix IKNINJA-1775 [Drawing a different type of object after performing copy-paste on an existing object throws error on console]
Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com>
-rw-r--r-- | js/controllers/clipboard-controller.js | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/js/controllers/clipboard-controller.js b/js/controllers/clipboard-controller.js index 129e1f89..afa9cbdb 100644 --- a/js/controllers/clipboard-controller.js +++ b/js/controllers/clipboard-controller.js | |||
@@ -233,7 +233,6 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
233 | if (copiedElement.tagName === "CANVAS"){ | 233 | if (copiedElement.tagName === "CANVAS"){ |
234 | //clone copied canvas | 234 | //clone copied canvas |
235 | var canvas = this.cloneCanvas(copiedElement); | 235 | var canvas = this.cloneCanvas(copiedElement); |
236 | NJevent("elementAdded", canvas); | ||
237 | pastedElements.push(canvas); | 236 | pastedElements.push(canvas); |
238 | } | 237 | } |
239 | else { | 238 | else { |
@@ -247,13 +246,13 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
247 | }else{ | 246 | }else{ |
248 | styles = null; | 247 | styles = null; |
249 | } | 248 | } |
250 | this.pastePositioned(node, styles, true/*notify*/); | 249 | this.pastePositioned(node, styles); |
251 | pastedElements.push(node); | 250 | pastedElements.push(node); |
252 | } | 251 | } |
253 | 252 | ||
254 | } | 253 | } |
255 | 254 | ||
256 | this.application.ninja.selectionController.selectElements(pastedElements); | 255 | NJevent("elementAdded", pastedElements); |
257 | 256 | ||
258 | this.application.ninja.currentDocument.model.needsSave = true; | 257 | this.application.ninja.currentDocument.model.needsSave = true; |
259 | } | 258 | } |
@@ -272,7 +271,6 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
272 | if (node.tagName === "CANVAS"){ | 271 | if (node.tagName === "CANVAS"){ |
273 | //paste canvas | 272 | //paste canvas |
274 | canvas = this.generateNewCanvas(this.copiedObjects.cut[j].outerhtml, this.copiedObjects.cut[j].styles, this.copiedObjects.cut[j].className, this.copiedObjects.cut[j].worldJson); | 273 | canvas = this.generateNewCanvas(this.copiedObjects.cut[j].outerhtml, this.copiedObjects.cut[j].styles, this.copiedObjects.cut[j].className, this.copiedObjects.cut[j].worldJson); |
275 | NJevent("elementAdded", canvas); | ||
276 | pastedElements.push(canvas); | 274 | pastedElements.push(canvas); |
277 | node = null; | 275 | node = null; |
278 | } | 276 | } |
@@ -281,12 +279,12 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
281 | node = null; | 279 | node = null; |
282 | } | 280 | } |
283 | else { | 281 | else { |
284 | this.pastePositioned(node, this.copiedObjects.cut[j].styles, true/*notify*/, false/*fromCopy*/); | 282 | this.pastePositioned(node, this.copiedObjects.cut[j].styles, false/*fromCopy*/); |
285 | pastedElements.push(node); | 283 | pastedElements.push(node); |
286 | } | 284 | } |
287 | } | 285 | } |
288 | 286 | ||
289 | this.application.ninja.selectionController.selectElements(pastedElements); | 287 | NJevent("elementAdded", pastedElements); |
290 | this.application.ninja.currentDocument.model.needsSave = true; | 288 | this.application.ninja.currentDocument.model.needsSave = true; |
291 | } | 289 | } |
292 | }, | 290 | }, |
@@ -337,7 +335,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
337 | divWrapper.appendChild(spanWrapper); | 335 | divWrapper.appendChild(spanWrapper); |
338 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; | 336 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; |
339 | 337 | ||
340 | this.pastePositioned(divWrapper, styles, true/*notify*/); | 338 | this.pastePositioned(divWrapper, styles); |
341 | 339 | ||
342 | nodeList[i] = null; | 340 | nodeList[i] = null; |
343 | 341 | ||
@@ -348,7 +346,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
348 | divWrapper.appendChild(node); | 346 | divWrapper.appendChild(node); |
349 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; | 347 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; |
350 | 348 | ||
351 | this.pastePositioned(divWrapper, styles, true/*notify*/); | 349 | this.pastePositioned(divWrapper, styles); |
352 | 350 | ||
353 | nodeList[i] = null; | 351 | nodeList[i] = null; |
354 | } | 352 | } |
@@ -358,7 +356,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
358 | //get class string while copying .... generate styles from class | 356 | //get class string while copying .... generate styles from class |
359 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; | 357 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; |
360 | 358 | ||
361 | this.pastePositioned(node, styles, true/*notify*/); | 359 | this.pastePositioned(node, styles); |
362 | 360 | ||
363 | nodeList[i] = null; | 361 | nodeList[i] = null; |
364 | } | 362 | } |
@@ -371,7 +369,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
371 | }else if(textData){ | 369 | }else if(textData){ |
372 | node = self.deserializeHtmlString("<div><span>"+ textData +"</span></div>")[0]; | 370 | node = self.deserializeHtmlString("<div><span>"+ textData +"</span></div>")[0]; |
373 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; | 371 | styles = {"position":"absolute", "top":"100px", "left":"100px"}; |
374 | this.pastePositioned(node, styles, true/*notify*/); | 372 | this.pastePositioned(node, styles); |
375 | } | 373 | } |
376 | 374 | ||
377 | } | 375 | } |
@@ -519,7 +517,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
519 | 517 | ||
520 | if (!canvas.getAttribute( "data-RDGE-id" )) canvas.setAttribute( "data-RDGE-id", NJUtils.generateRandom() ); | 518 | if (!canvas.getAttribute( "data-RDGE-id" )) canvas.setAttribute( "data-RDGE-id", NJUtils.generateRandom() ); |
521 | 519 | ||
522 | this.pastePositioned(canvas, styles, false/*notify*/, false/*from copy*/); | 520 | this.pastePositioned(canvas, styles, false/*from copy*/); |
523 | 521 | ||
524 | worldData = worldJson; | 522 | worldData = worldJson; |
525 | 523 | ||
@@ -583,7 +581,7 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
583 | 581 | ||
584 | 582 | ||
585 | pastePositioned:{ | 583 | pastePositioned:{ |
586 | value: function(element, styles, notify, fromCopy){// for now can wok for both in-place and centered paste | 584 | value: function(element, styles, fromCopy){// for now can wok for both in-place and centered paste |
587 | var modObject = [], x,y, newX, newY, counter; | 585 | var modObject = [], x,y, newX, newY, counter; |
588 | 586 | ||
589 | if((typeof fromCopy === "undefined") || (fromCopy && fromCopy === true)){ | 587 | if((typeof fromCopy === "undefined") || (fromCopy && fromCopy === true)){ |
@@ -598,9 +596,9 @@ var ClipboardController = exports.ClipboardController = Montage.create(Component | |||
598 | newY = styles ? ("" + (styles.top + (25 * counter)) + "px") : "100px"; | 596 | newY = styles ? ("" + (styles.top + (25 * counter)) + "px") : "100px"; |
599 | 597 | ||
600 | if(!styles || (styles && !styles.position)){ | 598 | if(!styles || (styles && !styles.position)){ |
601 | this.application.ninja.elementMediator.addElements(element, null, notify); | 599 | this.application.ninja.elementMediator.addElements(element, null, false); |
602 | }else if(styles && (styles.position === "absolute")){ | 600 | }else if(styles && (styles.position === "absolute")){ |
603 | this.application.ninja.elementMediator.addElements(element, {"top" : newY, "left" : newX}, notify);//displace | 601 | this.application.ninja.elementMediator.addElements(element, {"top" : newY, "left" : newX}, false);//displace |
604 | } | 602 | } |
605 | } | 603 | } |
606 | }, | 604 | }, |