aboutsummaryrefslogtreecommitdiff
path: root/js/panels/properties.reel/sections
diff options
context:
space:
mode:
Diffstat (limited to 'js/panels/properties.reel/sections')
-rwxr-xr-xjs/panels/properties.reel/sections/custom.reel/custom.js6
-rwxr-xr-xjs/panels/properties.reel/sections/position-size.reel/position-size.html16
-rwxr-xr-xjs/panels/properties.reel/sections/position-size.reel/position-size.js40
3 files changed, 47 insertions, 15 deletions
diff --git a/js/panels/properties.reel/sections/custom.reel/custom.js b/js/panels/properties.reel/sections/custom.reel/custom.js
index 9df16112..c599dcb0 100755
--- a/js/panels/properties.reel/sections/custom.reel/custom.js
+++ b/js/panels/properties.reel/sections/custom.reel/custom.js
@@ -233,6 +233,12 @@ exports.CustomSection = Montage.create(Component, {
233 boundObjectPropertyPath: "value" 233 boundObjectPropertyPath: "value"
234 }); 234 });
235 235
236 //Bind object value to controls list so it can be manipulated
237 Object.defineBinding(this.controls, aField.id + "Units", {
238 boundObject: obj,
239 boundObjectPropertyPath: "units"
240 });
241
236 return obj; 242 return obj;
237 } 243 }
238 }, 244 },
diff --git a/js/panels/properties.reel/sections/position-size.reel/position-size.html b/js/panels/properties.reel/sections/position-size.reel/position-size.html
index ccc7a159..d322f826 100755
--- a/js/panels/properties.reel/sections/position-size.reel/position-size.html
+++ b/js/panels/properties.reel/sections/position-size.reel/position-size.html
@@ -29,9 +29,12 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
29 "properties": { 29 "properties": {
30 "element": {"#": "PosX"}, 30 "element": {"#": "PosX"},
31 "maxValue": 10000, 31 "maxValue": 10000,
32 "minValue": -10000 32 "minValue": -10000,
33 "acceptableUnits" : ["px", "%"],
34 "units": "px"
33 }, 35 },
34 "bindings": { 36 "bindings": {
37 "units": {"<->": "@owner.leftUnits"},
35 "value": {"<->": "@owner.leftPosition"} 38 "value": {"<->": "@owner.leftPosition"}
36 } 39 }
37 }, 40 },
@@ -40,9 +43,12 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
40 "properties": { 43 "properties": {
41 "element": {"#": "PosY"}, 44 "element": {"#": "PosY"},
42 "maxValue": 10000, 45 "maxValue": 10000,
43 "minValue": -10000 46 "minValue": -10000,
47 "acceptableUnits" : ["px", "%"],
48 "units": "px"
44 }, 49 },
45 "bindings": { 50 "bindings": {
51 "units": {"<->": "@owner.topUnits"},
46 "value": {"<->": "@owner.topPosition"} 52 "value": {"<->": "@owner.topPosition"}
47 } 53 }
48 }, 54 },
@@ -50,9 +56,12 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
50 "PosH": { 56 "PosH": {
51 "prototype": "js/components/hottextunit.reel[HotTextUnit]", 57 "prototype": "js/components/hottextunit.reel[HotTextUnit]",
52 "properties": { 58 "properties": {
53 "element": {"#": "PosH"} 59 "element": {"#": "PosH"},
60 "acceptableUnits" : ["px", "%"],
61 "units": "px"
54 }, 62 },
55 "bindings": { 63 "bindings": {
64 "units": {"<->": "@owner.heightUnits"},
56 "value": {"<->": "@owner.heightSize"} 65 "value": {"<->": "@owner.heightSize"}
57 } 66 }
58 }, 67 },
@@ -65,6 +74,7 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
65 "units": "px" 74 "units": "px"
66 }, 75 },
67 "bindings": { 76 "bindings": {
77 "units": {"<->": "@owner.widthUnits"},
68 "value": {"<->": "@owner.widthSize"} 78 "value": {"<->": "@owner.widthSize"}
69 } 79 }
70 80
diff --git a/js/panels/properties.reel/sections/position-size.reel/position-size.js b/js/panels/properties.reel/sections/position-size.reel/position-size.js
index fef2b195..94c0bbf2 100755
--- a/js/panels/properties.reel/sections/position-size.reel/position-size.js
+++ b/js/panels/properties.reel/sections/position-size.reel/position-size.js
@@ -53,17 +53,33 @@ exports.PositionSize = Montage.create(Component, {
53 value: 0 53 value: 0
54 }, 54 },
55 55
56 leftUnits: {
57 value: "px"
58 },
59
56 topPosition: { 60 topPosition: {
57 value: 0 61 value: 0
58 }, 62 },
59 63
64 topUnits: {
65 value: "px"
66 },
67
60 heightSize: { 68 heightSize: {
61 value: 0 69 value: 0
62 }, 70 },
63 71
72 heightUnits: {
73 value: "px"
74 },
75
64 widthSize: { 76 widthSize: {
65 value: 0 77 value: 0
66 }, 78 },
79
80 widthUnits: {
81 value: "px"
82 },
67/* 83/*
68 widthSize: { 84 widthSize: {
69 get: function() { return this._widthSize;}, 85 get: function() { return this._widthSize;},
@@ -173,7 +189,7 @@ exports.PositionSize = Montage.create(Component, {
173 if(!event.wasSetByCode) { 189 if(!event.wasSetByCode) {
174 if(this.savedPosition) prevPosition = [this.savedPosition + "px"]; 190 if(this.savedPosition) prevPosition = [this.savedPosition + "px"];
175 191
176 this.application.ninja.elementMediator.setProperty(this.application.ninja.selectedElements, "left", [this.leftControl.value + "px"] , "Change", "pi", prevPosition); 192 this.application.ninja.elementMediator.setProperty(this.application.ninja.selectedElements, "left", [this.leftControl.value + this.leftControl.units] , "Change", "pi", prevPosition);
177 this.savedPosition = null; 193 this.savedPosition = null;
178 } 194 }
179 } 195 }
@@ -186,7 +202,7 @@ exports.PositionSize = Montage.create(Component, {
186 if(!event.wasSetByCode) { 202 if(!event.wasSetByCode) {
187 if(this.savedPosition) prevPosition = [this.savedPosition + "px"]; 203 if(this.savedPosition) prevPosition = [this.savedPosition + "px"];
188 204
189 this.application.ninja.elementMediator.setProperty(this.application.ninja.selectedElements, "top", [this.topControl.value + "px"] , "Change", "pi", prevPosition); 205 this.application.ninja.elementMediator.setProperty(this.application.ninja.selectedElements, "top", [this.topControl.value + this.topControl.units] , "Change", "pi", prevPosition);
190 this.savedPosition = null; 206 this.savedPosition = null;
191 } 207 }
192 } 208 }
@@ -197,7 +213,7 @@ exports.PositionSize = Montage.create(Component, {
197 var prevPosition, items; 213 var prevPosition, items;
198 214
199 if(!event.wasSetByCode) { 215 if(!event.wasSetByCode) {
200 if(this.savedPosition) prevPosition = [this.savedPosition + "px"]; 216 if(this.savedPosition) prevPosition = [this.savedPosition];
201 217
202 this.application.ninja.selectedElements.length ? items = this.application.ninja.selectedElements : items = [this.application.ninja.currentDocument.model.documentRoot]; 218 this.application.ninja.selectedElements.length ? items = this.application.ninja.selectedElements : items = [this.application.ninja.currentDocument.model.documentRoot];
203 219
@@ -211,7 +227,7 @@ exports.PositionSize = Montage.create(Component, {
211 this.application.ninja.elementMediator.setProperty(items, "width", [newWidth + "px"] , "Change", "pi"); 227 this.application.ninja.elementMediator.setProperty(items, "width", [newWidth + "px"] , "Change", "pi");
212 } 228 }
213 229
214 this.application.ninja.elementMediator.setProperty(items, "height", [this.heightControl.value + "px"] , "Change", "pi", prevPosition); 230 this.application.ninja.elementMediator.setProperty(items, "height", [this.heightControl.value + this.heightControl.units] , "Change", "pi", prevPosition);
215 this.savedPosition = null; 231 this.savedPosition = null;
216 } 232 }
217 } 233 }
@@ -222,7 +238,7 @@ exports.PositionSize = Montage.create(Component, {
222 var prevPosition, items; 238 var prevPosition, items;
223 239
224 if(!event.wasSetByCode) { 240 if(!event.wasSetByCode) {
225 if(this.savedPosition) prevPosition = [this.savedPosition + "px"]; 241 if(this.savedPosition) prevPosition = [this.savedPosition];
226 242
227 this.application.ninja.selectedElements.length ? items = this.application.ninja.selectedElements : items = [this.application.ninja.currentDocument.model.documentRoot]; 243 this.application.ninja.selectedElements.length ? items = this.application.ninja.selectedElements : items = [this.application.ninja.currentDocument.model.documentRoot];
228 244
@@ -237,7 +253,7 @@ exports.PositionSize = Montage.create(Component, {
237 253
238 } 254 }
239 255
240 this.application.ninja.elementMediator.setProperty(items, "width", [this.widthControl.value + "px"] , "Change", "pi", prevPosition); 256 this.application.ninja.elementMediator.setProperty(items, "width", [this.widthControl.value + this.widthControl.units] , "Change", "pi", prevPosition);
241 this.savedPosition = null; 257 this.savedPosition = null;
242 258
243 } 259 }
@@ -249,7 +265,7 @@ exports.PositionSize = Montage.create(Component, {
249 value: function(event) { 265 value: function(event) {