diff options
Diffstat (limited to 'js/panels')
3 files changed, 52 insertions, 3 deletions
diff --git a/js/panels/properties.reel/properties.js b/js/panels/properties.reel/properties.js index 782dd138..ca720ae7 100755 --- a/js/panels/properties.reel/properties.js +++ b/js/panels/properties.reel/properties.js | |||
@@ -166,9 +166,9 @@ exports.Properties = Montage.create(Component, { | |||
166 | this.threeD.xAngle = ElementsMediator.get3DProperty(el, "xAngle"); | 166 | this.threeD.xAngle = ElementsMediator.get3DProperty(el, "xAngle"); |
167 | this.threeD.yAngle = ElementsMediator.get3DProperty(el, "yAngle"); | 167 | this.threeD.yAngle = ElementsMediator.get3DProperty(el, "yAngle"); |
168 | this.threeD.zAngle = ElementsMediator.get3DProperty(el, "zAngle"); | 168 | this.threeD.zAngle = ElementsMediator.get3DProperty(el, "zAngle"); |
169 | } | ||
170 | } | 169 | } |
171 | } | 170 | } |
171 | } | ||
172 | }, | 172 | }, |
173 | 173 | ||
174 | handleSelectionChange: { | 174 | handleSelectionChange: { |
@@ -207,6 +207,12 @@ exports.Properties = Montage.create(Component, { | |||
207 | this.threeD.zAngle = ElementsMediator.get3DProperty(stage, "zAngle"); | 207 | this.threeD.zAngle = ElementsMediator.get3DProperty(stage, "zAngle"); |
208 | } | 208 | } |
209 | 209 | ||
210 | if(ElementsMediator.getProperty(stage, "-webkit-transform-style") === "preserve-3d") { | ||
211 | this.threeD.flatten = false; | ||
212 | } else { | ||
213 | this.threeD.flatten = true; | ||
214 | } | ||
215 | |||
210 | if(this.customPi !== stage.elementModel.pi) { | 216 | if(this.customPi !== stage.elementModel.pi) { |
211 | // We need to unregister color chips from the previous selection from the Color Model | 217 | // We need to unregister color chips from the previous selection from the Color Model |
212 | var len = this.customSections.length; | 218 | var len = this.customSections.length; |
@@ -271,6 +277,11 @@ exports.Properties = Montage.create(Component, { | |||
271 | this.positionSize.heightSize = parseFloat(ElementsMediator.getProperty(el, "height")); | 277 | this.positionSize.heightSize = parseFloat(ElementsMediator.getProperty(el, "height")); |
272 | this.positionSize.widthSize = parseFloat(ElementsMediator.getProperty(el, "width")); | 278 | this.positionSize.widthSize = parseFloat(ElementsMediator.getProperty(el, "width")); |
273 | 279 | ||
280 | if(ElementsMediator.getProperty(el, "-webkit-transform-style") === "preserve-3d") { | ||
281 | this.threeD.flatten = false; | ||
282 | } else { | ||
283 | this.threeD.flatten = true; | ||
284 | } | ||
274 | 285 | ||
275 | if(this.threeD.inGlobalMode) | 286 | if(this.threeD.inGlobalMode) |
276 | { | 287 | { |
diff --git a/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.html b/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.html index 18a7369e..b6c25baf 100755 --- a/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.html +++ b/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.html | |||
@@ -22,7 +22,8 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot | |||
22 | "xAngleControl": {"@": "threeDRotX"}, | 22 | "xAngleControl": {"@": "threeDRotX"}, |
23 | "yAngleControl": {"@": "threeDRotY"}, | 23 | "yAngleControl": {"@": "threeDRotY"}, |
24 | "zAngleControl": {"@": "threeDRotZ"}, | 24 | "zAngleControl": {"@": "threeDRotZ"}, |
25 | "axisModeGroupControl": {"@": "axisModeGroup"} | 25 | "axisModeGroupControl": {"@": "axisModeGroup"}, |
26 | "flattenControl": {"@": "flattenCheckbox"} | ||
26 | } | 27 | } |
27 | }, | 28 | }, |
28 | 29 | ||
@@ -242,6 +243,29 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot | |||
242 | "value": "Global", | 243 | "value": "Global", |
243 | "group": {"@": "axisModeGroup"} | 244 | "group": {"@": "axisModeGroup"} |
244 | } | 245 | } |
246 | }, | ||
247 | "flattenCheckbox": { | ||
248 | "module": "montage/ui/checkbox.reel", | ||
249 | "name": "Checkbox", | ||
250 | "properties": { | ||
251 | "element": {"#": "flattenCh"}, | ||
252 | "identifier": "flatten", | ||
253 | "checked": false | ||
254 | }, | ||
255 | "bindings": { | ||
256 | "checked": { | ||
257 | "boundObject": {"@": "owner"}, | ||
258 | "boundObjectPropertyPath": "flatten", | ||
259 | "oneway": false | ||
260 | } | ||
261 | }, | ||
262 | "listeners": [ | ||
263 | { | ||
264 | "type": "action", | ||
265 | "listener": {"@": "owner"}, | ||
266 | "capture": false | ||
267 | } | ||
268 | ] | ||
245 | } | 269 | } |
246 | } | 270 | } |
247 | </script> | 271 | </script> |
@@ -335,7 +359,7 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot | |||
335 | <article class="fieldRow oneCol checkbox"> | 359 | <article class="fieldRow oneCol checkbox"> |
336 | <div> | 360 | <div> |
337 | <div class="inputField"> | 361 | <div class="inputField"> |
338 | <input class="nj-skinned" type="checkbox" /> | 362 | <input id="flattenCh" class="nj-skinned" type="checkbox" /> |
339 | </div> | 363 | </div> |
340 | <div> | 364 | <div> |
341 | <label> Flatten</label> | 365 | <label> Flatten</label> |
diff --git a/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.js b/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.js index 35591afa..0d3d111d 100755 --- a/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.js +++ b/js/panels/properties.reel/sections/three-d-view.reel/three-d-view.js | |||
@@ -79,6 +79,10 @@ exports.ThreeD = Montage.create(Component, { | |||
79 | value: 0 | 79 | value: 0 |
80 | }, | 80 | }, |
81 | 81 | ||
82 | flatten: { | ||
83 | value: false | ||
84 | }, | ||
85 | |||
82 | _disableTranslation: { | 86 | _disableTranslation: { |
83 | value: true | 87 | value: true |
84 | }, | 88 | }, |
@@ -107,6 +111,16 @@ exports.ThreeD = Montage.create(Component, { | |||
107 | value: null | 111 | value: null |
108 | }, | 112 | }, |
109 | 113 | ||
114 | handleAction: { | ||
115 | value: function(event) { | ||
116 | if(event.currentTarget.identifier === "flatten") { | ||
117 | this.application.ninja.elementMediator.setProperty([this.item], | ||
118 | "-webkit-transform-style", | ||
119 | event.currentTarget.checked ? ["flat"] : ["preserve-3d"]); | ||
120 | } | ||
121 | } | ||
122 | }, | ||
123 | |||
110 | handleChange: { | 124 | handleChange: { |
111 | value: function(event) { | 125 | value: function(event) { |
112 | if(event.wasSetByCode) { | 126 | if(event.wasSetByCode) { |