aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/canvas-runtime.js438
-rwxr-xr-xjs/components/layout/tools-list.reel/tools-list.js1
-rwxr-xr-xjs/components/ui/color-chip.reel/color-chip.js2
-rwxr-xr-xjs/components/ui/input-group.reel/input-group.css15
-rwxr-xr-xjs/controllers/elements/canvas-controller.js8
-rwxr-xr-xjs/controllers/elements/component-controller.js2
-rwxr-xr-xjs/controllers/elements/element-controller.js169
-rwxr-xr-xjs/controllers/elements/shapes-controller.js392
-rwxr-xr-xjs/controllers/elements/stage-controller.js94
-rwxr-xr-xjs/controllers/selection-controller.js7
-rwxr-xr-xjs/controllers/styles-controller.js69
-rw-r--r--js/data/panels-data.js12
-rwxr-xr-xjs/data/pi/pi-data.js4
-rwxr-xr-xjs/data/tools-data.js6
-rwxr-xr-xjs/document/html-document.js8
-rwxr-xr-xjs/document/templates/montage-html/default_html.css9
-rwxr-xr-xjs/document/templates/montage-html/index.html2
-rwxr-xr-xjs/helper-classes/3D/draw-utils.js31
-rwxr-xr-xjs/helper-classes/3D/hit-record.js10
-rwxr-xr-xjs/helper-classes/3D/snap-manager.js29
-rwxr-xr-xjs/helper-classes/3D/view-utils.js257
-rwxr-xr-xjs/io/system/coreioapi.js2
-rwxr-xr-xjs/io/ui/file-picker/file-input-field.reel/file-input-field.html10
-rwxr-xr-xjs/io/ui/file-picker/file-input-field.reel/file-input-field.js37
-rwxr-xr-xjs/io/ui/new-file-dialog/new-file-location.reel/new-file-location.html9
-rwxr-xr-xjs/io/ui/new-file-dialog/new-file-location.reel/new-file-location.js32
-rw-r--r--js/io/ui/new-file-dialog/new-file-options-navigator.reel/new-file-options-navigator.js46
-rw-r--r--js/io/ui/save-as-dialog.reel/save-as-dialog.html9
-rw-r--r--js/io/ui/save-as-dialog.reel/save-as-dialog.js80
-rwxr-xr-xjs/lib/NJUtils.js12
-rwxr-xr-xjs/lib/drawing/world.js2
-rwxr-xr-xjs/lib/geom/circle.js19
-rwxr-xr-xjs/lib/geom/geom-obj.js128
-rwxr-xr-xjs/lib/geom/line.js10
-rwxr-xr-xjs/lib/geom/rectangle.js15
-rwxr-xr-xjs/mediators/drag-drop-mediator.js4
-rwxr-xr-xjs/mediators/element-mediator.js261
-rwxr-xr-xjs/mediators/keyboard-mediator.js18
-rwxr-xr-xjs/models/color-model.js56
-rwxr-xr-xjs/models/element-model.js36
-rwxr-xr-xjs/models/properties-3d.js48
-rwxr-xr-xjs/models/shape-model.js7
-rwxr-xr-xjs/panels/Materials/materials-popup.reel/materials-popup.css46
-rwxr-xr-xjs/panels/Materials/materials-popup.reel/materials-popup.html2
-rwxr-xr-xjs/panels/Materials/materials-popup.reel/materials-popup.js2
-rwxr-xr-xjs/panels/Panel.reel/Panel.js5
-rwxr-xr-xjs/panels/PanelContainer.reel/PanelContainer.html11
-rwxr-xr-xjs/panels/PanelContainer.reel/PanelContainer.js1
-rwxr-xr-xjs/panels/Splitter.js2
-rwxr-xr-xjs/panels/components-panel.reel/components-panel.js4
-rw-r--r--js/panels/history-panel/history-item.reel/history-item.css0
-rw-r--r--js/panels/history-panel/history-item.reel/history-item.html29
-rw-r--r--js/panels/history-panel/history-item.reel/history-item.js32
-rw-r--r--js/panels/history-panel/history.reel/history.css34
-rw-r--r--js/panels/history-panel/history.reel/history.html106
-rw-r--r--js/panels/history-panel/history.reel/history.js26
-rwxr-xr-xjs/panels/properties.reel/properties.css5
-rwxr-xr-xjs/panels/properties.reel/properties.js29
-rwxr-xr-xjs/panels/properties.reel/sections/three-d-view.reel/three-d-view.html28
-rwxr-xr-xjs/panels/properties.reel/sections/three-d-view.reel/three-d-view.js14
-rwxr-xr-xjs/stage/layout.js2
-rwxr-xr-xjs/stage/stage.reel/stage.js5
-rwxr-xr-xjs/stage/tool-handle.js7
-rw-r--r--js/tools/BrushTool.js8
-rwxr-xr-xjs/tools/FillTool.js20
-rwxr-xr-xjs/tools/InkBottleTool.js21
-rwxr-xr-xjs/tools/LineTool.js11
-rwxr-xr-xjs/tools/OvalTool.js15
-rwxr-xr-xjs/tools/PenTool.js3
-rwxr-xr-xjs/tools/RectTool.js15
-rwxr-xr-xjs/tools/Rotate3DToolBase.js203
-rwxr-xr-xjs/tools/RotateObject3DTool.js2
-rwxr-xr-xjs/tools/RotateStage3DTool.js22
-rwxr-xr-xjs/tools/SelectionTool.js365
-rwxr-xr-xjs/tools/ShapeTool.js20
-rwxr-xr-xjs/tools/TagTool.js21
-rwxr-xr-xjs/tools/Translate3DToolBase.js180
-rwxr-xr-xjs/tools/TranslateObject3DTool.js50
-rwxr-xr-xjs/tools/drawing-tool-base.js9
-rwxr-xr-xjs/tools/modifier-tool-base.js64
80 files changed, 2212 insertions, 1613 deletions
diff --git a/assets/canvas-runtime.js b/assets/canvas-runtime.js
index a35f473d..ee9f24a4 100644
--- a/assets/canvas-runtime.js
+++ b/assets/canvas-runtime.js
@@ -121,13 +121,12 @@ NinjaCvsRt.GLRuntime = function ( canvas, jObj, assetPath )
121 // all "live" materials 121 // all "live" materials
122 this._materials = []; 122 this._materials = [];
123 123
124 // provide the mapping for the asset directory 124 // provide the mapping for the asset directory
125 if (assetPath) 125 if (assetPath) {
126 { 126 this._assetPath = assetPath.slice();
127 this._assetPath = assetPath.slice(); 127 if (this._assetPath[this._assetPath.length - 1] != '/')
128 if (this._assetPath[this._assetPath.length-1] != '/') 128 this._assetPath += '/';
129 this._assetPath += '/'; 129 }
130 }
131 130
132 if(this._assetPath !== undefined) { 131 if(this._assetPath !== undefined) {
133 RDGE.globals.engine.setAssetPath(this._assetPath); 132 RDGE.globals.engine.setAssetPath(this._assetPath);
@@ -289,23 +288,23 @@ NinjaCvsRt.GLRuntime = function ( canvas, jObj, assetPath )
289 288
290 this.importObject = function( jObj, parent ) 289 this.importObject = function( jObj, parent )
291 { 290 {
292 var type = jObj.type 291 var type = jObj.type;
293 var obj; 292 var obj;
294 switch (type) 293 switch (type)
295 { 294 {
296 case 1: 295 case 1:
297 obj = new NinjaCvsRt.RuntimeRectangle(); 296 obj = new NinjaCvsRt.RuntimeRectangle();
298 obj.importJSON( jObj, parent ); 297 obj.importJSON( jObj );
299 break; 298 break;
300 299
301 case 2: // circle 300 case 2: // circle
302 obj = new NinjaCvsRt.RuntimeOval(); 301 obj = new NinjaCvsRt.RuntimeOval();
303 obj.importJSON( jObj, parent ); 302 obj.importJSON( jObj );
304 break; 303 break;
305 304
306 case 3: // line 305 case 3: // line
307 obj = new NinjaCvsRt.RuntimeLine(); 306 obj = new NinjaCvsRt.RuntimeLine();
308 obj.importJSON( jObj, parent ); 307 obj.importJSON( jObj );
309 break; 308 break;
310 309
311 default: 310 default:
@@ -514,7 +513,7 @@ NinjaCvsRt.RuntimeGeomObj = function ()
514 case "pulse": mat = new NinjaCvsRt.RuntimePulseMaterial(); break; 513 case "pulse": mat = new NinjaCvsRt.RuntimePulseMaterial(); break;
515 514
516 default: 515 default:
517 console.log( "material type: " + materialType + " is not supported" ); 516 console.log( "material type: " + shaderName + " is not supported" );
518 break; 517 break;
519 } 518 }
520 519
@@ -638,7 +637,7 @@ NinjaCvsRt.RuntimeGeomObj = function ()
638 637
639 return mat; 638 return mat;
640 }; 639 };
641 640
642 this.MatrixRotationZ = function( angle ) 641 this.MatrixRotationZ = function( angle )
643 { 642 {
644 var mat = this.MatrixIdentity(4); 643 var mat = this.MatrixIdentity(4);
@@ -742,7 +741,7 @@ NinjaCvsRt.RuntimeRectangle = function ()
742 ctx.quadraticCurveTo( width-inset, inset, width-inset-rad, inset ); 741 ctx.quadraticCurveTo( width-inset, inset, width-inset-rad, inset );
743 742
744 // do the top of the rectangle 743 // do the top of the rectangle
745 pt = [inset, inset] 744 pt = [inset, inset];
746 rad = tlRad - inset; 745 rad = tlRad - inset;
747 if (rad < 0) rad = 0; 746 if (rad < 0) rad = 0;
748 pt[0] += rad; 747 pt[0] += rad;
@@ -771,34 +770,81 @@ NinjaCvsRt.RuntimeRectangle = function ()
771 var w = world.getViewportWidth(), 770 var w = world.getViewportWidth(),
772 h = world.getViewportHeight(); 771 h = world.getViewportHeight();
773 772
774 // render the fill 773 var c,
775 ctx.beginPath(); 774 inset,
776 var c = null, inset = 0; 775 gradient,
777 if (this._fillColor) 776 colors,
778 { 777 len,
779 c = "rgba(" + 255*this._fillColor[0] + "," + 255*this._fillColor[1] + "," + 255*this._fillColor[2] + "," + this._fillColor[3] + ")"; 778 n,
780