aboutsummaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
Diffstat (limited to 'js')
-rw-r--r--js/components/hintable.reel/hintable.js8
-rwxr-xr-xjs/controllers/elements/element-controller.js22
-rwxr-xr-xjs/mediators/element-mediator.js4
-rw-r--r--js/panels/Timeline/Collapser.js2
-rw-r--r--js/panels/Timeline/Keyframe.reel/Keyframe.js48
-rw-r--r--js/panels/Timeline/Keyframe.reel/css/Keyframe.css11
-rw-r--r--js/panels/Timeline/Layer.reel/Layer.html117
-rw-r--r--js/panels/Timeline/Layer.reel/Layer.js388
-rw-r--r--js/panels/Timeline/Layer.reel/css/Layer.css78
-rw-r--r--js/panels/Timeline/Layer.reel/scss/Layer.scss14
-rw-r--r--js/panels/Timeline/PropertyTrack.reel/PropertyTrack.html40
-rw-r--r--js/panels/Timeline/PropertyTrack.reel/PropertyTrack.js361
-rw-r--r--js/panels/Timeline/PropertyTrack.reel/css/PropertyTrack.css11
-rw-r--r--js/panels/Timeline/PropertyTrack.reel/scss/.sass-cache/a26ed2cbe268f8c721d1b1d8dfa075c8c5b47e72/PropertyTrack.scsscbin0 -> 5151 bytes
-rw-r--r--js/panels/Timeline/PropertyTrack.reel/scss/PropertyTrack.scss8
-rw-r--r--js/panels/Timeline/Span.reel/Span.html18
-rw-r--r--js/panels/Timeline/Span.reel/Span.js127
-rw-r--r--js/panels/Timeline/Span.reel/css/Span.css107
-rw-r--r--js/panels/Timeline/Span.reel/scss/Span.scss101
-rw-r--r--js/panels/Timeline/Span.reel/scss/config.rb9
-rw-r--r--js/panels/Timeline/Style.reel/Style.js5
-rw-r--r--js/panels/Timeline/Style.reel/css/Style.css91
-rw-r--r--js/panels/Timeline/Style.reel/scss/Style.scss11
-rw-r--r--js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html4
-rw-r--r--js/panels/Timeline/TimelinePanel.reel/TimelinePanel.js1128
-rw-r--r--js/panels/Timeline/TimelinePanel.reel/css/TimelinePanel.css2
-rw-r--r--js/panels/Timeline/TimelinePanel.reel/scss/TimelinePanel.scss2
-rw-r--r--js/panels/Timeline/TimelineTrack.reel/TimelineTrack.html81
-rw-r--r--js/panels/Timeline/TimelineTrack.reel/TimelineTrack.js449
-rw-r--r--js/panels/Timeline/TimelineTrack.reel/css/TimelineTrack.css18
-rw-r--r--js/panels/Timeline/TimelineTrack.reel/scss/TimelineTrack.scss2
-rw-r--r--js/panels/Timeline/Tween.reel/Tween.js122
-rwxr-xr-xjs/panels/properties.reel/properties.js1
33 files changed, 2383 insertions, 1007 deletions
diff --git a/js/components/hintable.reel/hintable.js b/js/components/hintable.reel/hintable.js
index 803770db..08e87bf0 100644
--- a/js/components/hintable.reel/hintable.js
+++ b/js/components/hintable.reel/hintable.js
@@ -146,7 +146,11 @@ exports.Hintable = Montage.create(Editable, {
146 }, 146 },
147 set: function(str) { 147 set: function(str) {
148 var node = this._getFirstTextNode(); 148 var node = this._getFirstTextNode();
149 node.textContent = str; 149 if (node.textContent !== str) {
150 node.textContent = str;
151 }
152
153 //node.innerText = str;
150 } 154 }
151 }, 155 },
152 156
@@ -331,4 +335,4 @@ exports.Hintable = Montage.create(Editable, {
331 distinct: true 335 distinct: true
332 } 336 }
333 337
334}); \ No newline at end of file 338});
diff --git a/js/controllers/elements/element-controller.js b/js/controllers/elements/element-controller.js
index 01e132d7..53588f68 100755
--- a/js/controllers/elements/element-controller.js
+++ b/js/controllers/elements/element-controller.js
@@ -14,13 +14,32 @@ exports.ElementController = Montage.create(Component, {
14 14
15 if (el.getAttribute) el.setAttribute('data-ninja-node', 'true'); 15 if (el.getAttribute) el.setAttribute('data-ninja-node', 'true');
16 16
17 // Updated to use new methods in TimelinePanel. JR.
18 var insertionIndex = this.application.ninja.timeline.getInsertionIndex();
19 if (insertionIndex === false) {
20 this.application.ninja.currentSelectedContainer.appendChild(el);
21 } else {
22 if (insertionIndex === 0) {
23 this.application.ninja.currentSelectedContainer.appendChild(el);
24 } else {
25 var element = this.application.ninja.timeline.arrLayers[insertionIndex].layerData.stageElement;
26 element.parentNode.insertBefore(el, element.nextSibling);
27 }
28 }
29
30 if(styles) {
31 this.application.ninja.stylesController.setElementStyles(el, styles);
32 }
33
34 /*
35 // Old methods. Kept for reference. Delete if not needed. JR.
17 if(this.application.ninja.timeline.currentLayerSelected) { 36 if(this.application.ninja.timeline.currentLayerSelected) {
18 var selectedLayerIndex = this.application.ninja.timeline.getLayerIndexByID(this.application.ninja.timeline.currentLayerSelected.layerData.layerID); 37 var selectedLayerIndex = this.application.ninja.timeline.getLayerIndexByID(this.application.ninja.timeline.currentLayerSelected.layerData.layerID);
19 38
20 if(selectedLayerIndex === 0) { 39 if(selectedLayerIndex === 0) {
21 this.application.ninja.currentSelectedContainer.appendChild(el); 40 this.application.ninja.currentSelectedContainer.appendChild(el);
22 } else { 41 } else {
23 var element = this.application.ninja.timeline.arrLayers[selectedLayerIndex].layerData.elementsList[0]; 42 var element = this.application.ninja.timeline.arrLayers[selectedLayerIndex].layerData.stageElement;
24 element.parentNode.insertBefore(el, element.nextSibling); 43 element.parentNode.insertBefore(el, element.nextSibling);
25 } 44 }
26 } else { 45 } else {
@@ -30,6 +49,7 @@ exports.ElementController = Montage.create(Component, {
30 if(styles) { 49 if(styles) {
31 this.application.ninja.stylesController.setElementStyles(el, styles); 50 this.application.ninja.stylesController.setElementStyles(el, styles);
32 } 51 }
52 */
33 } 53 }
34 }, 54 },
35 55
diff --git a/js/mediators/element-mediator.js b/js/mediators/element-mediator.js
index 1d5e9ade..1d188dbf 100755
--- a/js/mediators/element-mediator.js
+++ b/js/mediators/element-mediator.js
@@ -524,9 +524,9 @@ exports.ElementMediator = Montage.create(Component, {
524 length = layersDraggedArray.length; 524 length = layersDraggedArray.length;
525 525
526 for(var i=0; documentRoot.children[i]; i++) { 526 for(var i=0; documentRoot.children[i]; i++) {
527 if(documentRoot.children[i] === layerDroppedAfter.layerData.elementsList[0]) { 527 if(documentRoot.children[i] === layerDroppedAfter.layerData.stageElement) {
528 if(length >0){ 528 if(length >0){
529 documentRoot.children[i].parentNode.insertBefore(layersDraggedArray[length-1].layerData.elementsList[0], documentRoot.children[i]); 529 documentRoot.children[i].parentNode.insertBefore(layersDraggedArray[length-1].layerData.stageElement, documentRoot.children[i]);
530 } 530 }
531 531
532 /* Will require for Multiple Drag n Drop */ 532 /* Will require for Multiple Drag n Drop */
diff --git a/js/panels/Timeline/Collapser.js b/js/panels/Timeline/Collapser.js
index 88314c8b..9c8d4434 100644
--- a/js/panels/Timeline/Collapser.js
+++ b/js/panels/Timeline/Collapser.js
@@ -151,7 +151,6 @@ var Montage = require("montage/core/core").Montage,
151 151
152 // isToggling: Bindable property. Set this (to anything) to trigger a toggle. 152 // isToggling: Bindable property. Set this (to anything) to trigger a toggle.
153 _isToggling: { 153 _isToggling: {
154 serializable: true,
155 value: true 154 value: true
156 }, 155 },
157 isToggling: { 156 isToggling: {
@@ -179,7 +178,6 @@ var Montage = require("montage/core/core").Montage,
179 178
180 prepareForDraw: { 179 prepareForDraw: {
181 value: function() { 180 value: function() {
182
183 // Get the original value of the overflow property: 181 // Get the original value of the overflow property:
184 this._origOverflowValue = window.getComputedStyle(this.myContent, null).getPropertyValue("overflow"); 182 this._origOverflowValue = window.getComputedStyle(this.myContent, null).getPropertyValue("overflow");
185 if (this.isCollapsed === false) { 183 if (this.isCollapsed === false) {
diff --git a/js/panels/Timeline/Keyframe.reel/Keyframe.js b/js/panels/Timeline/Keyframe.reel/Keyframe.js
index 859cdfb1..b91027b6 100644
--- a/js/panels/Timeline/Keyframe.reel/Keyframe.js
+++ b/js/panels/Timeline/Keyframe.reel/Keyframe.js
@@ -31,24 +31,32 @@ var Keyframe = exports.Keyframe = Montage.create(Component, {
31 prepareForDraw:{ 31 prepareForDraw:{
32 value:function(){ 32 value:function(){
33 this.element.addEventListener("click", this, false); 33 this.element.addEventListener("click", this, false);
34
35 // Drag and drop event handlers
36 this.element.addEventListener("mouseover", this.handleMouseover.bind(this), false);
37 this.element.addEventListener("mouseout", this.handleMouseout.bind(this), false);
38 this.element.addEventListener("dragstart", this.handleDragstart.bind(this), false);
39 this.element.addEventListener("dragend", this.handleDragend.bind(this), false);
34 } 40 }
35 }, 41 },
36 42
37 draw:{ 43 draw:{
38 value:function(){ 44 value:function(){
39 this.element.style.left = (this.position - 3) + "px"; 45 this.element.style.left = (this.position - 5) + "px";
40 } 46 }
41 }, 47 },
42 48
43 deselectKeyframe:{ 49 deselectKeyframe:{
44 value:function(){ 50 value:function(){
45 this.element.classList.remove("keyframeSelected"); 51 this.element.classList.remove("keyframeSelected");
52 this.element.style.left = (this.position - 5) + "px";
46 } 53 }
47 }, 54 },
48 55
49 selectKeyframe:{ 56 selectKeyframe:{
50 value:function(){ 57 value:function(){
51 this.element.classList.add("keyframeSelected"); 58 this.element.classList.add("keyframeSelected");
59 this.element.style.left = (this.position - 6) + "px";
52 this.parentComponent.selectTween(); 60 this.parentComponent.selectTween();
53 } 61 }
54 }, 62 },
@@ -56,6 +64,42 @@ var Keyframe = exports.Keyframe = Montage.create(Component, {
56 handleClick:{