aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xjs/controllers/elements/body-controller.js44
-rwxr-xr-xjs/controllers/elements/controller-factory.js5
-rwxr-xr-xjs/data/pi/pi-data.js14
-rwxr-xr-xjs/document/document-html.js9
-rwxr-xr-xjs/document/html-document.js10
-rwxr-xr-xjs/document/templates/montage-web/default_html.css2
-rwxr-xr-xjs/document/templates/montage-web/index.html2
-rwxr-xr-xjs/lib/NJUtils.js14
-rwxr-xr-xjs/models/element-model.js35
-rwxr-xr-xjs/models/properties-3d.js3
-rwxr-xr-xjs/panels/properties.reel/properties.js1
11 files changed, 106 insertions, 33 deletions
diff --git a/js/controllers/elements/body-controller.js b/js/controllers/elements/body-controller.js
new file mode 100755
index 00000000..fbbb7c6e
--- /dev/null
+++ b/js/controllers/elements/body-controller.js
@@ -0,0 +1,44 @@
1/* <copyright>
2This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5</copyright> */
6
7var Montage = require("montage/core/core").Montage,
8 ElementController = require("js/controllers/elements/element-controller").ElementController;
9
10exports.BodyController = Montage.create(ElementController, {
11
12 // TODO - perspective distance needs to be passed in as "dist" and matrix3d needs to be passed in as "mat"
13 set3DProperties: {
14 value: function(el, props, update3DModel) {
15 }
16 },
17
18 getProperty: {
19 value: function(el, p) {
20 }
21 },
22
23 setProperty: {
24 value: function(el, p, value) {
25 }
26 },
27
28 setAttribute: {
29 value: function(el, att, value) {
30 }
31 },
32
33 getPerspectiveDist: {
34 value: function(el) {
35 if(el.elementModel && el.elementModel.props3D && el.elementModel.props3D.perspectiveDist) {
36 return el.elementModel.props3D.perspectiveDist;
37 } else {
38 var dist = this.application.ninja.stylesController.getPerspectiveDistFromElement(el, true);
39 el.elementModel.props3D.perspectiveDist = dist;
40 return dist;
41 }
42 }
43 }
44});
diff --git a/js/controllers/elements/controller-factory.js b/js/controllers/elements/controller-factory.js
index a772eb16..1bbbbce0 100755
--- a/js/controllers/elements/controller-factory.js
+++ b/js/controllers/elements/controller-factory.js
@@ -6,7 +6,8 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
6 6
7var Montage = require("montage/core/core").Montage; 7var Montage = require("montage/core/core").Montage;
8 8
9var BlockController = require("js/controllers/elements/block-controller").BlockController, 9var BodyController = require("js/controllers/elements/body-controller").BodyController,
10 BlockController = require("js/controllers/elements/block-controller").BlockController,
10 StageController = require("js/controllers/elements/stage-controller").StageController, 11 StageController = require("js/controllers/elements/stage-controller").StageController,
11 ShapesController = require("js/controllers/elements/shapes-controller").ShapesController, 12 ShapesController = require("js/controllers/elements/shapes-controller").ShapesController,
12 ImageController = require("js/controllers/elements/image-controller").ImageController, 13 ImageController = require("js/controllers/elements/image-controller").ImageController,
@@ -27,6 +28,8 @@ exports.ControllerFactory = Montage.create(Montage, {
27 return BlockController; 28 return BlockController;
28 } else if(value.indexOf("stage") !== -1) { 29 } else if(value.indexOf("stage") !== -1) {
29 return StageController; 30 return StageController;
31 } else if(value.indexOf("body") !== -1) {
32 return BodyController;
30 } else if(value.indexOf("shape") !== -1) { 33 } else if(value.indexOf("shape") !== -1) {
31 return ShapesController; 34 return ShapesController;
32 } else if(value.indexOf("canvas") !== -1) { 35 } else if(value.indexOf("canvas") !== -1) {
diff --git a/js/data/pi/pi-data.js b/js/data/pi/pi-data.js
index 157c54ec..65161b4f 100755
--- a/js/data/pi/pi-data.js
+++ b/js/data/pi/pi-data.js
@@ -9,6 +9,20 @@ var Montage = require("montage/core/core").Montage,
9 9
10exports.PiData = Montage.create( Montage, { 10exports.PiData = Montage.create( Montage, {
11 11
12 bodyPi: {
13 value: [
14 {
15 label: "Style",
16
17 Section: [
18 [
19
20 ]
21 ]
22 }
23 ]
24 },
25
12 stagePi: { 26 stagePi: {
13 value: [ 27 value: [
14 { 28 {
diff --git a/js/document/document-html.js b/js/document/document-html.js
index 8cb88516..24eb4f47 100755
--- a/js/document/document-html.js
+++ b/js/document/document-html.js
@@ -270,7 +270,8 @@ exports.HtmlDocument = Montage.create(Component, {
270 270
271 //TODO Finish this implementation once we start caching Core Elements 271 //TODO Finish this implementation once we start caching Core Elements
272 // Assign a model to the UserContent and add the ViewPort reference to it. 272 // Assign a model to the UserContent and add the ViewPort reference to it.
273 document.application.njUtils.makeElementModel(this.documentRoot, "Stage", "stage"); 273 document.application.njUtils.makeElementModel(this.documentRoot, "Body", "body");
274// this.documentRoot.elementModel.props3D.init(this.documentRoot, true);
274 275
275 for(i = 0; i < this._stylesheets.length; i++) { 276 for(i = 0; i < this._stylesheets.length; i++) {
276 if(this._stylesheets[i].ownerNode.id === "nj-stage-stylesheet") { 277 if(this._stylesheets[i].ownerNode.id === "nj-stage-stylesheet") {
@@ -309,6 +310,12 @@ exports.HtmlDocument = Montage.create(Component, {
309 } 310 }
310 }, 311 },
311 312
313 GetElementFromPoint: {
314 value: function(x, y) {
315 return this._window.getElement(x,y);
316 }
317 },
318
312 // Handler for user content main reel. Gets called once the main reel of the template 319 // Handler for user content main reel. Gets called once the main reel of the template
313 // gets deserialized. 320 // gets deserialized.
314 // Setting up the currentSelectedContainer to the document body. 321 // Setting up the currentSelectedContainer to the document body.
diff --git a/js/document/html-document.js b/js/document/html-document.js
index 3876670c..3dbf96ce 100755
--- a/js/document/html-document.js
+++ b/js/document/html-document.js
@@ -759,10 +759,14 @@ exports.HTMLDocument = Montage.create(TextDocument, {
759 //TODO Finish this implementation once we start caching Core Elements 759 //TODO Finish this implementation once we start caching Core Elements
760 // Assign a model to the UserContent and add the ViewPort reference to it. 760 // Assign a model to the UserContent and add the ViewPort reference to it.
761 NJUtils.makeElementModel(this.documentRoot, "Stage", "stage"); 761 NJUtils.makeElementModel(this.documentRoot, "Stage", "stage");
762 //this.documentRoot.elementModel.viewPort = this.iframe.contentWindow.document.getElementById("Viewport"); 762 NJUtils.makeElementModel(this.stageBG, "Stage", "stage");
763 NJUtils.makeElementModel(this.stageBG, "Stage", "stage");
764 NJUtils.makeElementModel(this.iframe.contentWindow.document.getElementById("Viewport"), "Stage", "stage"); 763 NJUtils.makeElementModel(this.iframe.contentWindow.document.getElementById("Viewport"), "Stage", "stage");
765 764
765 // Initialize the 3D properties
766 this.documentRoot.elementModel.props3D.init(this.documentRoot, true);
767 this.stageBG.elementModel.props3D.init(this.stageBG, true);
768 this.iframe.contentWindow.document.getElementById("Viewport").elementModel.props3D.init(this.iframe.contentWindow.document.getElementById("Viewport"), true);
769
766 for(i = 0; i < this._stylesheets.length; i++) { 770 for(i = 0; i < this._stylesheets.length; i++) {
767 if(this._stylesheets[i].ownerNode.id === this._stageStyleSheetId) { 771 if(this._stylesheets[i].ownerNode.id === this._stageStyleSheetId) {
768 this.documentRoot.elementModel.defaultRule = this._stylesheets[i]; 772 this.documentRoot.elementModel.defaultRule = this._stylesheets[i];
diff --git a/js/document/templates/montage-web/default_html.css b/js/document/templates/montage-web/default_html.css
index db069d4e..08e39f22 100755
--- a/js/document/templates/montage-web/default_html.css
+++ b/js/document/templates/montage-web/default_html.css
@@ -11,7 +11,7 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
11} 11}
12 12
13.active-element-outline { 13.active-element-outline {
14 outline: #adff2f solid 2px; 14 outline: #adff2f solid 2px;
15} 15}
16 16
17.nj-preset-transition { 17.nj-preset-transition {
diff --git a/js/document/templates/montage-web/index.html b/js/document/templates/montage-web/index.html
index 90b0f7fd..c52a5394 100755
--- a/js/document/templates/montage-web/index.html
+++ b/js/document/templates/montage-web/index.html
@@ -42,7 +42,7 @@
42 42
43 <body> 43 <body>
44 44
45 <div>IPSUM</div> 45 <!--<div>IPSUM</div>-->
46 46
47 </body> 47 </body>
48 48
diff --git a/js/lib/NJUtils.js b/js/lib/NJUtils.js
index 67bb59c4..dae128e4 100755
--- a/js/lib/NJUtils.js
+++ b/js/lib/NJUtils.js
@@ -94,10 +94,10 @@ exports.NJUtils = Object.create(Object.prototype, {
94 ///// TODO: find a different place for this function 94 ///// TODO: find a different place for this function
95 makeElementModel: { 95 makeElementModel: {
96 value: function(el, selection, controller, isShape) { 96 value: function(el, selection, controller, isShape) {
97 //el.elementModel = Montage.create(ElementModel).initialize(el.nodeName, selection, controller, isShape);
98
97 var p3d = Montage.create(Properties3D); 99 var p3d = Montage.create(Properties3D);
98 if(selection === "Stage") { 100
99 p3d.init(el, true);
100 }
101 var shapeProps = null; 101 var shapeProps = null;
102 var pi = controller + "Pi"; 102 var pi = controller + "Pi";
103 103
@@ -143,6 +143,7 @@ exports.NJUtils = Object.create(Object.prototype, {
143 isShape: { value: isShape} 143 isShape: { value: isShape}
144 }); 144 });
145 145
146
146 } 147 }
147 }, 148 },
148 149
@@ -167,15 +168,12 @@ exports.NJUtils = Object.create(Object.prototype, {
167 break; 168 break;
168 case "canvas": 169 case "canvas":
169 isShape = el.getAttribute("data-RDGE-id"); 170 isShape = el.getAttribute("data-RDGE-id");
170 if(isShape) 171 if(isShape) {
171 {
172 // TODO - Need more info about the shape