aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/canvas-runtime.js1
-rwxr-xr-xcss/ninja.css30
-rwxr-xr-xjs/components/layout/bread-crumb.reel/bread-crumb.css10
-rwxr-xr-xjs/controllers/color-controller.js4
-rwxr-xr-xjs/controllers/elements/shapes-controller.js4
-rwxr-xr-xjs/lib/drawing/world.js21
-rwxr-xr-xjs/lib/geom/geom-obj.js2
-rw-r--r--js/lib/rdge/materials/radial-blur-material.js18
-rwxr-xr-xjs/models/materials-model.js1
-rwxr-xr-xjs/ninja.reel/ninja.html101
-rwxr-xr-xjs/ninja.reel/ninja.js120
-rwxr-xr-xjs/panels/Splitter.js2
-rw-r--r--js/panels/Timeline/TimelinePanel.reel/css/TimelinePanel.css4
-rw-r--r--js/panels/resize-composer.js34
-rwxr-xr-xjs/stage/stage-view.reel/stage-view.js12
-rwxr-xr-xjs/tools/EyedropperTool.js28
-rwxr-xr-xscss/imports/scss/_MainWindow.scss41
-rwxr-xr-xscss/imports/scss/_ScrollBars.scss27
18 files changed, 380 insertions, 80 deletions
diff --git a/assets/canvas-runtime.js b/assets/canvas-runtime.js
index dd909e26..f53a4ef6 100644
--- a/assets/canvas-runtime.js
+++ b/assets/canvas-runtime.js
@@ -527,6 +527,7 @@ function RuntimeGeomObj()
527 case "deform": 527 case "deform":
528 case "water": 528 case "water":
529 case "paris": 529 case "paris":
530 case "raiders":
530 case "tunnel": 531 case "tunnel":
531 case "reliefTunnel": 532 case "reliefTunnel":
532 case "squareTunnel": 533 case "squareTunnel":
diff --git a/css/ninja.css b/css/ninja.css
index 2f3be9ce..605951e4 100755
--- a/css/ninja.css
+++ b/css/ninja.css
@@ -76,11 +76,11 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co
76 76
77#topMenu { background-color: #474747; position: absolute; height: 28px; width: 100%; top: 0px; left: 0px; z-index: 6995; } 77#topMenu { background-color: #474747; position: absolute; height: 28px; width: 100%; top: 0px; left: 0px; z-index: 6995; }
78 78
79#topPanelContainer, #leftPanelContainer, #rightPanelContainer, #bottomPanelContainer { background-color: #282828; } 79#topPanelContainer, #leftPanelContainer, #rightPanelContainer, .timelinePanel { background-color: #282828; }
80 80
81#topPanelContainer { overflow: hidden; margin-bottom: 2px; height: 32px; } 81#topPanelContainer { overflow: hidden; margin-bottom: 2px; height: 32px; }
82 82
83#bottomPanelContainer { background: transparent; height: 150px; min-height: 80px; max-height: 50%; overflow: auto; } 83.timelinePanel { background: transparent; height: 150px; min-height: 46px; max-height: 50%; overflow: auto; }
84 84
85.panelContainer { display: -webkit-box; -webkit-box-orient: vertical; position: relative; } 85.panelContainer { display: -webkit-box; -webkit-box-orient: vertical; position: relative; }
86 86
@@ -92,7 +92,7 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co
92 92
93.mainContainerContent { position: absolute; display: -webkit-box; width: 100%; height: 100%; -webkit-box-orient: vertical; } 93.mainContainerContent { position: absolute; display: -webkit-box; width: 100%; height: 100%; -webkit-box-orient: vertical; }
94 94
95.mainContainerContent > #mainContent { -webkit-box-flex: 1; display: -webkit-box; -webkit-box-orient: horizontal; margin-top: 0px; } 95.mainContainerContent > #mainContent { -webkit-box-flex: 1; display: -webkit-box; -webkit-box-orient: horizontal; margin-top: 0px; position: relative; }
96 96
97.mainContainerContent > section { margin-top: 2px; -webkit-box-flex: 0; } 97.mainContainerContent > section { margin-top: 2px; -webkit-box-flex: 0; }
98 98
@@ -118,15 +118,17 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co
118 118
119#sceneBar { height: 70px; background-color: #474747; } 119#sceneBar { height: 70px; background-color: #474747; }
120 120
121#mainContainer #rulerTop { background: gray; height: 15px; margin-bottom: 0px; } 121#mainContainer #rulerTop { display: none; background: gray url("../images/temp/ruler-top.png"); height: 15px; margin-bottom: 0px; border-right: 11px solid black; }
122 122
123#rulerLeft { background: gray; width: 16px; } 123#rulerLeft { display: none; background: gray url("../images/temp/ruler-left.png"); width: 16px; border-bottom: 11px solid black; }
124 124
125#stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; } 125#stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; }
126 126
127#stageContainer { -webkit-box-flex: 1; position: relative; } 127#stageContainer { -webkit-box-flex: 1; position: relative; }
128 128
129.timelineResizer { background: black center center no-repeat url("data:image/gif;base64,R0lGODlhGQADAMQAAD49PXx8fGppaSYmJl9fXysrKykpKW5uboqJiUxMTGlpaV9eXjo6OoeHhyUkJD09PSoqKmpqaj8/P4qKiiQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjEgNjQuMTQwOTQ5LCAyMDEwLzEyLzA3LTEwOjU3OjAxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdEMUI3NjM1QkQ1QTExRTBBMTJFQzE1RDk5REVFRkI4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdEMUI3NjM2QkQ1QTExRTBBMTJFQzE1RDk5REVFRkI4Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6N0QxQjc2MzNCRDVBMTFFMEExMkVDMTVEOTlERUVGQjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6N0QxQjc2MzRCRDVBMTFFMEExMkVDMTVEOTlERUVGQjgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAfHh0cGxoZGBcWFRQTEhEQDw4NDAsKCQgHBgUEAwIBAAAh+QQAAAAAACwAAAAAGQADAAAFH6ABDVRpnujpQAXxKFIUz3JNzwKwMEcz/cCgMIgIJEIAOw=="); width: 100%; height: 6px; cursor: row-resize; } 129.pasteboardResizer { position: absolute; width: 11px; height: 11px; bottom: 0px; right: 0px; z-index: 20; background-image: url("../images/scrollbars/scrollbar_resizer.png"); background-repeat: no-repeat; background-color: #000; cursor: se-resize; }
130
131.timelineResizer { background: #282828; width: 100%; height: 6px; cursor: row-resize; }
130 132
131.timelineResizer.collapsed { height: 0px !important; margin: 0px !important; padding: 0px !important; } 133.timelineResizer.collapsed { height: 0px !important; margin: 0px !important; padding: 0px !important; }
132 134
@@ -136,7 +138,7 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co
136 138
137.resizeBar { -webkit-transition: all 0.15s linear; } 139.resizeBar { -webkit-transition: all 0.15s linear; }
138 140
139.panelContainer, .panelContainer.collapsed { -webkit-transition: all 0.15s ease-in; } 141.panelContainer.collapsed { -webkit-transition: all 0.15s ease-in; }
140 142
141.panel.disableTransition { -webkit-transition: none !important; -webkit-box-flex: 0.1 !important; } 143.panel.disableTransition { -webkit-transition: none !important; -webkit-box-flex: 0.1 !important; }
142 144
@@ -144,7 +146,7 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co
144 146
145#rightPanelContainer.collapsed, #leftPanelContainer.collapsed { width: 0px !important; min-width: 0px !important; overflow: hidden; border: 0px; margin: 0px; padding: 0px; } 147#rightPanelContainer.collapsed, #leftPanelContainer.collapsed { width: 0px !important; min-width: 0px !important; overflow: hidden; border: 0px; margin: 0px; padding: 0px; }
146 148
147#topPanelContainer.collapsed, #bottomPanelContainer.collapsed { height: 0px !important; min-height: 0px !important; overflow: hidden; border: 0px; margin: 0px; padding: 0px; } 149#topPanelContainer.collapsed, .timelinePanel.collapsed { height: 0px !important; min-height: 0px !important; overflow: hidden; border: 0px; margin: 0px; padding: 0px; }
148 150
149.leftSplitter.collapsed { -webkit-transform: rotate(180deg); } 151.leftSplitter.collapsed { -webkit-transform: rotate(180deg); }
150 152
@@ -971,7 +973,17 @@ input[type="radio"]:disabled { opacity: .3; background: #282828; border-width: 1
971 973
972::-webkit-scrollbar-corner:disabled { display: none; } 974::-webkit-scrollbar-corner:disabled { display: none; }
973 975
974::-webkit-resizer:disabled { display: none; } 976#iframeContainer::-webkit-resizer:disabled { display: block; }
977
978#iframeContainer::-webkit-scrollbar-track:vertical:disabled { display: block; }
979
980#iframeContainer::-webkit-scrollbar-track:horizontal:disabled { display: block; }
981
982#iframeContainer::-webkit-scrollbar-track-piece:disabled { display: block; }
983
984#iframeContainer::-webkit-scrollbar-corner:disabled { display: block; }
985
986#iframeContainer::-webkit-resizer:disabled { display: block; }
975 987
976.tree { -webkit-user-select: none; cursor: default; float: left; padding-left: 0; color: white; } 988.tree { -webkit-user-select: none; cursor: default; float: left; padding-left: 0; color: white; }
977 989
diff --git a/js/components/layout/bread-crumb.reel/bread-crumb.css b/js/components/layout/bread-crumb.reel/bread-crumb.css
index dcfd471c..26a56b45 100755
--- a/js/components/layout/bread-crumb.reel/bread-crumb.css
+++ b/js/components/layout/bread-crumb.reel/bread-crumb.css
@@ -4,14 +4,20 @@
4 (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. 4 (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5 </copyright> */ 5 </copyright> */
6 6
7.breadcrumbTrail{ 7.breadcrumbTrail {
8
8 background-color: #282828; 9 background-color: #282828;
9 border-style: double;
10 height: 26px; 10 height: 26px;
11 position:relative; 11 position:relative;
12 -webkit-box-flex: 0; 12 -webkit-box-flex: 0;
13} 13}
14 14
15.mainContentContainer > section.breadcrumbTrail {
16 border:0;
17 margin:0;
18 border-bottom:1px solid #000;
19 margin-bottom:1px;
20}
15.breadcrumbTrail button.nj-skinned { 21.breadcrumbTrail button.nj-skinned {
16 float: left; 22 float: left;
17 width: 60px; 23 width: 60px;
diff --git a/js/controllers/color-controller.js b/js/controllers/color-controller.js
index 8e000b19..c6d664cf 100755
--- a/js/controllers/color-controller.js
+++ b/js/controllers/color-controller.js
@@ -227,14 +227,14 @@ exports.ColorController = Montage.create(Component, {
227 // 227 //
228 this.fill = color; 228 this.fill = color;
229 // 229 //
230 if(e._event.wasSetByCode && mode !== 'nocolor') return; 230 if(e._event.wasSetByCode) return;
231 // 231 //
232 this.setColor(mode, color, true); 232 this.setColor(mode, color, true);
233 } else if (input === 'stroke') { 233 } else if (input === 'stroke') {
234 // 234 //
235 this.stroke = color; 235 this.stroke = color;
236 // 236 //
237 if(e._event.wasSetByCode && mode !== 'nocolor') return; 237 if(e._event.wasSetByCode) return;
238 238
239 this.setColor(mode, color, false); 239 this.setColor(mode, color, false);
240 } 240 }
diff --git a/js/controllers/elements/shapes-controller.js b/js/controllers/elements/shapes-controller.js
index 5b9e4672..f0e9458b 100755
--- a/js/controllers/elements/shapes-controller.js
+++ b/js/controllers/elements/shapes-controller.js
@@ -274,6 +274,10 @@ exports.ShapesController = Montage.create(CanvasController, {
274 color = this.getShapeProperty(el, "stroke"); 274 color = this.getShapeProperty(el, "stroke");
275 } 275 }
276 276
277 if(!css) {
278 return null;
279 }
280
277 css = this.application.ninja.colorController.colorModel.webGlToCss(color); 281 css = this.application.ninja.colorController.colorModel.webGlToCss(color);
278 return this.application.ninja.colorController.getColorObjFromCss(css); 282 return this.application.ninja.colorController.getColorObjFromCss(css);
279 } 283 }
diff --git a/js/lib/drawing/world.js b/js/lib/drawing/world.js
index 781695b6..fec6a478 100755
--- a/js/lib/drawing/world.js
+++ b/js/lib/drawing/world.js
@@ -761,13 +761,10 @@ World.prototype.exportJSON = function()
761 // We need to rebuild everything 761 // We need to rebuild everything
762 if (this._useWebGL) 762 if (this._useWebGL)
763 { 763 {
764 var root = this._rootNode;
765 root.children = new Array();
766 if (worldObj.children && (worldObj.children.length === 1)) 764 if (worldObj.children && (worldObj.children.length === 1))
767 { 765 {
768 this.init(); 766 this.rebuildTree(this._geomRoot);