diff options
Diffstat (limited to 'js/panels/properties')
4 files changed, 52 insertions, 3 deletions
diff --git a/js/panels/properties/content.reel/content.js b/js/panels/properties/content.reel/content.js index fcd85675..72c02ffd 100755 --- a/js/panels/properties/content.reel/content.js +++ b/js/panels/properties/content.reel/content.js | |||
@@ -55,7 +55,6 @@ exports.Content = Montage.create(Component, { | |||
55 | } | 55 | } |
56 | 56 | ||
57 | this.eventManager.addEventListener("openDocument", this, false); | 57 | this.eventManager.addEventListener("openDocument", this, false); |
58 | |||
59 | this.eventManager.addEventListener("switchDocument", this, false); | 58 | this.eventManager.addEventListener("switchDocument", this, false); |
60 | } | 59 | } |
61 | }, | 60 | }, |
@@ -81,7 +80,7 @@ exports.Content = Montage.create(Component, { | |||
81 | // For now always assume that the stage is selected by default | 80 | // For now always assume that the stage is selected by default |
82 | if(this.application.ninja.selectedElements.length === 0) { | 81 | if(this.application.ninja.selectedElements.length === 0) { |
83 | this.displayStageProperties(); | 82 | this.displayStageProperties(); |
84 | }else{ | 83 | }else { |
85 | if(this.application.ninja.selectedElements.length === 1) { | 84 | if(this.application.ninja.selectedElements.length === 1) { |
86 | this.displayElementProperties(this.application.ninja.selectedElements[0]._element); | 85 | this.displayElementProperties(this.application.ninja.selectedElements[0]._element); |
87 | } else { | 86 | } else { |
@@ -173,6 +172,17 @@ exports.Content = Montage.create(Component, { | |||
173 | this.positionSize.widthSize = parseFloat(ElementsMediator.getProperty(stage, "width")); | 172 | this.positionSize.widthSize = parseFloat(ElementsMediator.getProperty(stage, "width")); |
174 | 173 | ||
175 | if(this.customPi !== stage.elementModel.pi) { | 174 | if(this.customPi !== stage.elementModel.pi) { |
175 | // We need to unregister color chips from the previous selection from the Color Model | ||
176 | var len = this.customSections.length; | ||
177 | for(var n = 0, controls; n < len; n++) { | ||
178 | controls = this.customSections[n].content.controls; | ||
179 | if(controls["colorSelect"]) { | ||
180 | controls["colorSelect"].destroy(); | ||
181 | } else if(controls["stageBackground"]) { | ||
182 | controls["stageBackground"].destroy(); | ||
183 | } | ||
184 | } | ||
185 | |||
176 | this.customPi = stage.elementModel.pi; | 186 | this.customPi = stage.elementModel.pi; |
177 | this.displayCustomProperties(stage, stage.elementModel.pi); | 187 | this.displayCustomProperties(stage, stage.elementModel.pi); |
178 | } | 188 | } |
@@ -238,6 +248,17 @@ exports.Content = Montage.create(Component, { | |||
238 | 248 | ||
239 | // Custom Section | 249 | // Custom Section |
240 | if(this.customPi !== el.elementModel.pi) { | 250 | if(this.customPi !== el.elementModel.pi) { |
251 | // We need to unregister color chips from the previous selection from the Color Model | ||
252 | var len = this.customSections.length; | ||
253 | for(var n = 0, controls; n < len; n++) { | ||
254 | controls = this.customSections[n].content.controls; | ||
255 | if(controls["colorSelect"]) { | ||
256 | controls["colorSelect"].destroy(); | ||
257 | } else if(controls["stageBackground"]) { | ||
258 | controls["stageBackground"].destroy(); | ||
259 | } | ||
260 | } | ||
261 | |||
241 | this.customPi = el.elementModel.pi; | 262 | this.customPi = el.elementModel.pi; |
242 | this.displayCustomProperties(el, el.elementModel.pi); | 263 | this.displayCustomProperties(el, el.elementModel.pi); |
243 | } | 264 | } |
diff --git a/js/panels/properties/sections/custom-rows/color-select.reel/color-select.html b/js/panels/properties/sections/custom-rows/color-select.reel/color-select.html index 9c2588b9..96cc4de7 100755 --- a/js/panels/properties/sections/custom-rows/color-select.reel/color-select.html +++ b/js/panels/properties/sections/custom-rows/color-select.reel/color-select.html | |||
@@ -14,7 +14,9 @@ | |||
14 | "properties" : { | 14 | "properties" : { |
15 | "element" : {"#": "section"}, | 15 | "element" : {"#": "section"}, |
16 | "Stroke" : {"#": "Stroke"}, | 16 | "Stroke" : {"#": "Stroke"}, |
17 | "Fill" : {"#": "Fill"} | 17 | "Fill" : {"#": "Fill"}, |
18 | "strokeChip" : {"@": "colorChip"}, | ||
19 | "fillChip" : {"@": "colorChip2"} | ||
18 | } | 20 | } |
19 | }, | 21 | }, |
20 | 22 | ||
diff --git a/js/panels/properties/sections/custom-rows/color-select.reel/color-select.js b/js/panels/properties/sections/custom-rows/color-select.reel/color-select.js index 60f8efef..3e81ff67 100755 --- a/js/panels/properties/sections/custom-rows/color-select.reel/color-select.js +++ b/js/panels/properties/sections/custom-rows/color-select.reel/color-select.js | |||
@@ -17,6 +17,14 @@ exports.ColorSelect = Montage.create(Component, { | |||
17 | value: null | 17 | value: null |
18 | }, | 18 | }, |
19 | 19 | ||
20 | strokeChip: { | ||
21 | value: null | ||
22 | }, | ||
23 | |||
24 | fillChip: { | ||
25 | value: null | ||
26 | }, | ||
27 | |||
20 | handleChange: { | 28 | handleChange: { |
21 | value: function(e) { | 29 | value: function(e) { |
22 | 30 | ||
@@ -57,6 +65,19 @@ exports.ColorSelect = Montage.create(Component, { | |||
57 | // } | 65 | // } |
58 | 66 | ||
59 | } | 67 | } |
68 | }, | ||
69 | |||
70 | destroy: { | ||
71 | value: function() { | ||
72 | if(this.strokeChip) | ||
73 | { | ||
74 | this.strokeChip.destroy(); | ||
75 | } | ||
76 | if(this.fillChip) | ||
77 | { | ||
78 | this.fillChip.destroy(); | ||
79 | } | ||
80 | } | ||
60 | } | 81 | } |
61 | 82 | ||
62 | }); \ No newline at end of file | 83 | }); \ No newline at end of file |
diff --git a/js/panels/properties/sections/custom.reel/custom.js b/js/panels/properties/sections/custom.reel/custom.js index a2b9b9fa..a537d323 100755 --- a/js/panels/properties/sections/custom.reel/custom.js +++ b/js/panels/properties/sections/custom.reel/custom.js | |||
@@ -59,6 +59,8 @@ exports.CustomSection = Montage.create(Component, { | |||
59 | if(obj1.visible === false) tmpRow.colorVisible = obj1.visible; | 59 | if(obj1.visible === false) tmpRow.colorVisible = obj1.visible; |
60 | if(obj2.visible === false) tmpRow.color2Visible = obj2.visible; | 60 | if(obj2.visible === false) tmpRow.color2Visible = obj2.visible; |
61 | 61 | ||
62 | // TODO - Hack for now to reference the color select object to unregister color chips | ||
63 | this.controls["colorSelect"] = tmpRow; | ||
62 | } | 64 | } |
63 | else | 65 | else |
64 | { | 66 | { |
@@ -344,6 +346,9 @@ exports.CustomSection = Montage.create(Component, { | |||
344 | 346 | ||
345 | this.controls[aField.id] = obj; | 347 | this.controls[aField.id] = obj; |
346 | 348 | ||
349 | // TODO - Hack for now to reference the color select object to unregister color chips | ||
350 | this.controls["stageBackground"] = obj; | ||
351 | |||
347 | return obj; | 352 | return obj; |
348 | } | 353 | } |
349 | } | 354 | } |