diff options
Diffstat (limited to 'js/panels')
-rw-r--r-- | js/panels/Timeline/Layer.reel/Layer.js | 55 | ||||
-rw-r--r-- | js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html | 19 | ||||
-rw-r--r-- | js/panels/Timeline/TimelinePanel.reel/TimelinePanel.js | 767 | ||||
-rw-r--r-- | js/panels/Timeline/TimelineTrack.reel/TimelineTrack.js | 60 |
4 files changed, 411 insertions, 490 deletions
diff --git a/js/panels/Timeline/Layer.reel/Layer.js b/js/panels/Timeline/Layer.reel/Layer.js index 5206ae16..238ddae9 100644 --- a/js/panels/Timeline/Layer.reel/Layer.js +++ b/js/panels/Timeline/Layer.reel/Layer.js | |||
@@ -314,9 +314,10 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
314 | return this._isMainCollapsed; | 314 | return this._isMainCollapsed; |
315 | }, | 315 | }, |
316 | set: function(newVal) { | 316 | set: function(newVal) { |
317 | this.log('layer.js: isMainCollapsed: ' + newVal); | ||
318 | if (newVal !== this._isMainCollapsed) { | 317 | if (newVal !== this._isMainCollapsed) { |
318 | this.log('layer.js: isMainCollapsed: ' + newVal); | ||
319 | this._isMainCollapsed = newVal; | 319 | this._isMainCollapsed = newVal; |
320 | this.layerData.isMainCollapsed = newVal; | ||
320 | } | 321 | } |
321 | } | 322 | } |
322 | }, | 323 | }, |
@@ -333,7 +334,7 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
333 | set: function(newVal) { | 334 | set: function(newVal) { |
334 | if (newVal !== this._isTransformCollapsed) { | 335 | if (newVal !== this._isTransformCollapsed) { |
335 | this._isTransformCollapsed = newVal; | 336 | this._isTransformCollapsed = newVal; |
336 | //this.needsDraw = true; | 337 | this.layerData.isTransformCollapsed = newVal; |
337 | } | 338 | } |
338 | } | 339 | } |
339 | }, | 340 | }, |
@@ -350,7 +351,7 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
350 | set: function(newVal) { | 351 | set: function(newVal) { |
351 | if (newVal !== this._isPositionCollapsed) { | 352 | if (newVal !== this._isPositionCollapsed) { |
352 | this._isPositionCollapsed = newVal; | 353 | this._isPositionCollapsed = newVal; |
353 | //this.needsDraw = true; | 354 | this.layerData.isPositionCollapsed = newVal; |
354 | } | 355 | } |
355 | } | 356 | } |
356 | }, | 357 | }, |
@@ -367,7 +368,7 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
367 | set: function(newVal) { | 368 | set: function(newVal) { |
368 | if (newVal !== this._isStyleCollapsed) { | 369 | if (newVal !== this._isStyleCollapsed) { |
369 | this._isStyleCollapsed = newVal; | 370 | this._isStyleCollapsed = newVal; |
370 | //this.needsDraw = true; | 371 | this.layerData.isStyleCollapsed = newVal; |
371 | } | 372 | } |
372 | } | 373 | } |
373 | }, | 374 | }, |
@@ -381,7 +382,11 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
381 | return this._bypassAnimation; | 382 | return this._bypassAnimation; |
382 | }, | 383 | }, |
383 | set: function(newVal) { | 384 | set: function(newVal) { |
384 | this._bypassAnimation = newVal; | 385 | if (newVal !== this._bypassAnimation) { |
386 | this._bypassAnimation = newVal; | ||
387 | this.layerData.bypassAnimation = newVal; | ||
388 | //this.triggerOutgoingBinding(); | ||
389 | } | ||
385 | } | 390 | } |
386 | }, | 391 | }, |
387 | 392 | ||
@@ -426,6 +431,36 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
426 | this.needsDraw = true; | 431 | this.needsDraw = true; |
427 | } | 432 | } |
428 | }, | 433 | }, |
434 | |||
435 | /* Data binding point and outgoing binding trigger method */ | ||
436 | _bindingPoint : { | ||
437 | serializable: true, | ||
438 | value : {} | ||
439 | }, | ||
440 | bindingPoint: { | ||
441 | serializable: true, | ||
442 | get: function() { | ||
443 | return this._bindingPoint; | ||
444 | }, | ||
445 | set: function(newVal) { | ||
446 | if (newVal !== this._bindingPoint) { | ||
447 | this._bindingPoint = newVal; | ||
448 | this.setData(); | ||
449 | } | ||
450 | } | ||
451 | }, | ||
452 | |||
453 | triggerOutgoingBinding : { | ||
454 | value: function() { | ||
455 | if (this.layerData.triggerBinding === true) { | ||
456 | this.layerData.triggerBinding = false; | ||
457 | } else { | ||
458 | this.layerData.triggerBinding = true; | ||
459 | } | ||
460 | } | ||
461 | }, | ||
462 | |||
463 | // Is this the first draw? | ||
429 | _isFirstDraw : { | 464 | _isFirstDraw : { |
430 | value: true | 465 | value: true |
431 | }, | 466 | }, |
@@ -700,44 +735,52 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
700 | value: function(event) { | 735 | value: function(event) { |
701 | this.mainCollapser.bypassAnimation = false; | 736 | this.mainCollapser.bypassAnimation = false; |
702 | this.bypassAnimation = false; | 737 | this.bypassAnimation = false; |
738 | this.layerData.bypassAnimation = false; | ||
703 | if (this.isMainCollapsed) { | 739 | if (this.isMainCollapsed) { |
704 | this.isMainCollapsed = false; | 740 | this.isMainCollapsed = false; |
705 | } else { | 741 | } else { |
706 | this.isMainCollapsed = true; | 742 | this.isMainCollapsed = true; |
707 | } | 743 | } |
744 | this.triggerOutgoingBinding(); | ||
708 | } | 745 | } |
709 | }, | 746 | }, |
710 | handlePositionCollapserClick : { | 747 | handlePositionCollapserClick : { |
711 | value: function(event) { | 748 | value: function(event) { |
712 | this.positionCollapser.bypassAnimation = false; | 749 | this.positionCollapser.bypassAnimation = false; |
713 | this.bypassAnimation = false; | 750 | this.bypassAnimation = false; |
751 | this.layerData.bypassAnimation = false; | ||
714 | if (this.isPositionCollapsed) { | 752 | if (this.isPositionCollapsed) { |
715 | this.isPositionCollapsed = false; | 753 | this.isPositionCollapsed = false; |
716 | } else { | 754 | } else { |
717 | this.isPositionCollapsed = true; | 755 | this.isPositionCollapsed = true; |
718 | } | 756 | } |
757 | this.triggerOutgoingBinding(); | ||
719 | } | 758 | } |
720 | }, | 759 | }, |
721 | handleTransformCollapserClick : { | 760 | handleTransformCollapserClick : { |
722 | value: function(event) { | 761 | value: function(event) { |
723 | this.transformCollapser.bypassAnimation = false; | 762 | this.transformCollapser.bypassAnimation = false; |
724 | this.bypassAnimation = false; | 763 | this.bypassAnimation = false; |
764 | this.layerData.bypassAnimation = false; | ||
725 | if (this.isTransformCollapsed) { | 765 | if (this.isTransformCollapsed) { |
726 | this.isTransformCollapsed = false; | 766 | this.isTransformCollapsed = false; |
727 | } else { | 767 | } else { |
728 | this.isTransformCollapsed = true; | 768 | this.isTransformCollapsed = true; |
729 | } | 769 | } |
770 | this.triggerOutgoingBinding(); | ||
730 | } | 771 | } |
731 | }, | 772 | }, |
732 | handleStyleCollapserClick : { | 773 | handleStyleCollapserClick : { |
733 | value: function(event) { | 774 | value: function(event) { |
734 | this.styleCollapser.bypassAnimation = false; | 775 | this.styleCollapser.bypassAnimation = false; |
735 | this.bypassAnimation = false; | 776 | this.bypassAnimation = false; |
777 | this.layerData.bypassAnimation = false; | ||
736 | if (this.isStyleCollapsed) { | 778 | if (this.isStyleCollapsed) { |
737 | this.isStyleCollapsed = false; | 779 | this.isStyleCollapsed = false; |
738 | } else { | 780 | } else { |
739 | this.isStyleCollapsed = true; | 781 | this.isStyleCollapsed = true; |
740 | } | 782 | } |
783 | this.triggerOutgoingBinding(); | ||
741 | } | 784 | } |
742 | }, | 785 | }, |
743 | /* End: Event handlers */ | 786 | /* End: Event handlers */ |
@@ -773,4 +816,4 @@ var Layer = exports.Layer = Montage.create(Component, { | |||
773 | } | 816 | } |
774 | /* End: Logging routines */ | 817 | /* End: Logging routines */ |
775 | 818 | ||
776 | }); \ No newline at end of file | 819 | }); |
diff --git a/js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html b/js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html index 14c5f1c8..6e7d410c 100644 --- a/js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html +++ b/js/panels/Timeline/TimelinePanel.reel/TimelinePanel.html | |||
@@ -22,8 +22,6 @@ | |||
22 | "timeline_leftpane" : {"#" : "timeline_leftpane"}, | 22 | "timeline_leftpane" : {"#" : "timeline_leftpane"}, |
23 | "layer_tracks": {"#": "layer_tracks"}, | 23 | "layer_tracks": {"#": "layer_tracks"}, |
24 | "master_track": {"#": "master_track"}, | 24 | "master_track": {"#": "master_track"}, |
25 | "newlayer_button": {"#": "newlayer_button"}, | ||
26 | "deletelayer_button": {"#": "deletelayer_button"}, | ||
27 | "time_markers" : {"#": "timeline_markers"}, | 25 | "time_markers" : {"#": "timeline_markers"}, |
28 | "layerRepetition" : {"@": "repetition1"}, | 26 | "layerRepetition" : {"@": "repetition1"}, |
29 | "trackRepetition" : {"@" : "repetition2"}, | 27 | "trackRepetition" : {"@" : "repetition2"}, |
@@ -77,7 +75,12 @@ | |||
77 | "boundObject" : {"@" : "repetition1"}, | 75 | "boundObject" : {"@" : "repetition1"}, |
78 | "boundObjectPropertyPath" : "objectAtCurrentIteration.layerData", | 76 | "boundObjectPropertyPath" : "objectAtCurrentIteration.layerData", |
79 | "oneway" : false | 77 | "oneway" : false |
80 | } | 78 | }, |
79 | "bindingPoint" : { | ||
80 | "boundObject" : {"@" : "repetition1"}, | ||
81 | "boundObjectPropertyPath" : "objectAtCurrentIteration.layerData.triggerBinding", | ||
82 | "oneway" : false | ||