aboutsummaryrefslogtreecommitdiff
path: root/js/panels/Timeline/Keyframe.reel
diff options
context:
space:
mode:
Diffstat (limited to 'js/panels/Timeline/Keyframe.reel')
-rw-r--r--js/panels/Timeline/Keyframe.reel/Keyframe.js47
1 files changed, 46 insertions, 1 deletions
diff --git a/js/panels/Timeline/Keyframe.reel/Keyframe.js b/js/panels/Timeline/Keyframe.reel/Keyframe.js
index 859cdfb1..5afff6e6 100644
--- a/js/panels/Timeline/Keyframe.reel/Keyframe.js
+++ b/js/panels/Timeline/Keyframe.reel/Keyframe.js
@@ -31,6 +31,17 @@ 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);
40
41
42
43
44
34 } 45 }
35 }, 46 },
36 47
@@ -57,5 +68,39 @@ var Keyframe = exports.Keyframe = Montage.create(Component, {
57 value:function(ev){ 68 value:function(ev){
58 this.selectKeyframe(); 69 this.selectKeyframe();
59 } 70 }
60 } 71 },
72
73 handleMouseover: {
74 value: function(event) {
75 this.element.draggable = true;
76 }
77 },
78 handleMouseout: {
79 value: function(event) {
80 this.element.draggable = false;
81 }
82 },
83 handleDragstart: {
84 value: function(event) {
85 //this.parentComponent.parentComponent.dragLayerID = this.layerID;
86 event.dataTransfer.setData('Text', 'Keyframe');
87
88 // Get my index in my track's tween array
89 var i = 0,
90 tweenRepetitionLength = this.parentComponent.parentComponent.parentComponent.tweenRepetition.childComponents.length,
91 myIndex = null;
92 for (i = 0; i < tweenRepetitionLength; i++) {
93 if (this.parentComponent.parentComponent.parentComponent.tweenRepetition.childComponents[i].uuid === this.parentComponent.uuid) {
94 myIndex = i;
95 }
96 }
97 this.parentComponent.parentComponent.parentComponent.draggingIndex = myIndex;
98 }
99 },
100 handleDragend: {
101 value: function(event) {
102 this.parentComponent.isDragging = false;
103 }
104 }
105
61}); 106});