diff options
author | Jonathan Duran | 2012-02-08 10:48:52 -0800 |
---|---|---|
committer | Jonathan Duran | 2012-02-08 10:48:52 -0800 |
commit | 8a2ef825490358f992d6d687174b0a16fd8302c1 (patch) | |
tree | 12cdf68a4f1de01fc33b9e23bbce0afab6c2d7ae /js/components | |
parent | a460855c2132bffc666582659520e575d687d0cd (diff) | |
download | ninja-8a2ef825490358f992d6d687174b0a16fd8302c1.tar.gz |
Squashed commit of the following:
commit 763910b9d074137eb7dee80447b89407ce5750c9
Merge: e557937 329a859
Author: Valerio Virgillito <valerio@motorola.com>
Date: Wed Feb 8 10:18:36 2012 -0800
Merge pull request #20 from mqg734/ToolFixes
Hooked up materials code to go through the ShapesController and updated the PI to reflect the currently selected shape's materials. Also fixed the following bugs:
commit e5579374ff39b80b8c0c69faba37f6f581758fe0
Author: Valerio Virgillito <valerio@motorola.com>
Date: Tue Feb 7 13:28:17 2012 -0800
updated montage v.0.6 to the latest changes.
Signed-off-by: Valerio Virgillito <valerio@motorola.com>
commit 329a859e2666716c3a1d99c6bd2679e10c81fc8d
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 15:25:11 2012 -0800
Added ability to toggle combobox's visibility so we can show/hide materials comboboxes in the tool options.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 668510892537eaaeb2e11520831d87b44b2489b7
Merge: 8950b34 c066fb4
Author: Valerio Virgillito <valerio@motorola.com>
Date: Tue Feb 7 14:19:22 2012 -0800
Merge pull request #19 from ericguzman/TreeComponents
Tree Components - Added copyright comments
commit aec849d91e4b697d496b9ede28b5d89cf2283781
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 14:18:13 2012 -0800
id's must start with a letter, so our workaround for using uuid for RDGE canvas id's won't work because they often start with a number.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit e8e21367e59bb521801fe2e843f42ad5bca5ea9f
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 13:52:54 2012 -0800
Fixing some typos and undeclared variables in GLRectangle and ShapesController.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit c066fb41ebee85bacf9b2155366b16831af41d76
Author: Eric Guzman <ericg@motorola.com>
Date: Tue Feb 7 13:46:05 2012 -0800
Tree Components - Added copyright comments
commit 3a8875c288049b466bfeb8b7f0510fd8cbfb970d
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 13:30:08 2012 -0800
Supporting switching materials in the PI. Also, moved makeFillMaterial and makeStrokeMaterial functions into GLGeomObj so shapes other than GLRectangle can use these routines.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 8ad767b61460984a4031ba630f76ac8247a61857
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 11:42:10 2012 -0800
Fixed PI to support WebGL materials.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 486842239c71e7964f38a09aacda4970f2a82e1a
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 10:58:14 2012 -0800
Updated tools and PI to get/set materials by binding to appModel's materials property. This requires us to add FlatMaterial to the list of materials in the MaterialsLibrary.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 789eaf5a92c903f27462c69a8890fbec695ab14e
Merge: 92ae17b 8950b34
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Tue Feb 7 09:36:29 2012 -0800
Merge branch 'refs/heads/ninja-internal' into ToolFixes
commit 92ae17bc800cf82cdbd1482ef1af1a5fd7bd632a
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Mon Feb 6 16:35:12 2012 -0800
Force layout canvas and SelectionController to update their info when a 2d canvas is replaced by a 3d canvas (and vice-versa).
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 75486be2839494c9b54833aff8f5eef3f9542151
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Mon Feb 6 15:41:48 2012 -0800
Support toggling between 2d and 3d canvas context. This requires us to create a new canvas with all the same values as the canvas being replaced and copying over all the shape data.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit f94b0c5ada403379b3ff8a900c2a2aabcecce49e
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Mon Feb 6 14:03:40 2012 -0800
Add enabled property for ComboBox to support enabling/disabling materials dropdowns in the PI.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 5737864d1d55d96e3cc3c1bc9b38ec58303b3981
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Mon Feb 6 13:35:30 2012 -0800
Allow users to switch between 2d and webGL mode. Note that this doesn't currently work.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
commit 486d9a31a85dd833a1c798049a00403756703034
Author: Nivesh Rajbhandari <mqg734@motorola.com>
Date: Mon Feb 6 11:35:49 2012 -0800
Support use WebGL checkbox in the PI.
Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
Signed-off-by: Jonathan Duran <jduran@motorola.com>
Diffstat (limited to 'js/components')
21 files changed, 251 insertions, 51 deletions
diff --git a/js/components/combobox.reel/combobox.js b/js/components/combobox.reel/combobox.js index a68a7d6b..bc433f52 100644 --- a/js/components/combobox.reel/combobox.js +++ b/js/components/combobox.reel/combobox.js | |||
@@ -15,7 +15,7 @@ exports.Combobox = Montage.create(Component, { | |||
15 | }, | 15 | }, |
16 | 16 | ||
17 | _wasSetByCode: { | 17 | _wasSetByCode: { |
18 | enumerable: false, | 18 | enumerable: true, |
19 | value: true | 19 | value: true |
20 | }, | 20 | }, |
21 | 21 | ||
@@ -27,6 +27,14 @@ exports.Combobox = Montage.create(Component, { | |||
27 | value: null | 27 | value: null |
28 | }, | 28 | }, |
29 | 29 | ||
30 | dataField: { | ||
31 | value: null | ||
32 | }, | ||
33 | |||
34 | dataFunction: { | ||
35 | value: null | ||
36 | }, | ||
37 | |||
30 | _items: { | 38 | _items: { |
31 | value: [] | 39 | value: [] |
32 | }, | 40 | }, |
@@ -71,7 +79,47 @@ exports.Combobox = Montage.create(Component, { | |||
71 | e.value = this._value; | 79 | e.value = this._value; |
72 | this.dispatchEvent(e); | 80 | this.dispatchEvent(e); |
73 | 81 | ||
74 | this._wasSetByCode = false; | 82 | this._wasSetByCode = true; |
83 | } | ||
84 | } | ||
85 | }, | ||
86 | |||
87 | _enabled: { | ||
88 | enumerable: false, | ||
89 | value: true | ||
90 | }, | ||
91 | |||
92 | enabled: { | ||
93 | enumerable: true, | ||
94 | serializable: true, | ||
95 | get: function() { | ||
96 | return this._enabled; | ||
97 | }, | ||
98 | set: function(value) { | ||
99 | if(value !== this._enabled) | ||
100 | { | ||
101 | this._enabled = value; | ||
102 | this.needsDraw = true; | ||
103 | } | ||
104 | } | ||
105 | }, | ||
106 | |||
107 | _visible: { | ||
108 | enumerable: false, | ||
109 | value: true | ||
110 | }, | ||
111 | |||
112 | visible: { | ||
113 | enumerable: true, | ||
114 | serializable: true, | ||
115 | get: function() { | ||
116 | return this._visible; | ||
117 | }, | ||
118 | set: function(value) { | ||
119 | if(value !== this._visible) | ||
120 | { | ||
121 | this._visible = value; | ||
122 | this.needsDraw = true; | ||
75 | } | 123 | } |
76 | } | 124 | } |
77 | }, | 125 | }, |
@@ -102,7 +150,19 @@ exports.Combobox = Montage.create(Component, { | |||
102 | { | 150 | { |
103 | var current = items[i]; | 151 | var current = items[i]; |
104 | optionItem = document.createElement("option"); | 152 | optionItem = document.createElement("option"); |
105 | optionItem.value = current; | 153 | if(this.dataFunction) |
154 | { | ||
155 | optionItem.value = this.dataFunction(current); | ||
156 | } | ||
157 | else if(this.dataField) | ||
158 | { | ||
159 | optionItem.value = current[this.dataField]; | ||
160 | } | ||
161 | else | ||
162 | { | ||
163 | optionItem.value = current; | ||
164 | } | ||
165 | |||
106 | if(this.labelFunction) | 166 | if(this.labelFunction) |
107 | { | 167 | { |
108 | optionItem.innerText = this.labelFunction(current); | 168 | optionItem.innerText = this.labelFunction(current); |
@@ -117,6 +177,15 @@ exports.Combobox = Montage.create(Component, { | |||
117 | } | 177 | } |
118 | this.element.appendChild(optionItem); | 178 | this.element.appendChild(optionItem); |
119 | } | 179 | } |
180 | this.element.disabled = !this._enabled; | ||
181 | if(this._visible) | ||
182 | { | ||
183 | this.element.style.visibility = "visible"; | ||
184 | } | ||
185 | else | ||
186 | { | ||
187 | this.element.style.visibility = "hidden"; | ||
188 | } | ||
120 | } | 189 | } |
121 | } | 190 | } |
122 | }, | 191 | }, |
@@ -133,6 +202,22 @@ exports.Combobox = Montage.create(Component, { | |||
133 | 202 | ||
134 | prepareForDraw: { | 203 | prepareForDraw: { |
135 | value: function() { | 204 | value: function() { |
205 | if( (this._value === null) && this._items.length ) | ||
206 | { | ||
207 | var current = this._items[0]; | ||
208 | if(this.dataFunction) | ||
209 | { | ||
210 | this.value = this.dataFunction(current); | ||
211 | } | ||
212 | else if(this.dataField) | ||
213 | { | ||
214 | this.value = current[this.dataField]; | ||
215 | } | ||
216 | else | ||
217 | { | ||
218 | this.value = current; | ||
219 | } | ||
220 | } | ||
136 | this.element.addEventListener("change", this, false); | 221 | this.element.addEventListener("change", this, false); |
137 | } | 222 | } |
138 | } | 223 | } |
diff --git a/js/components/tools-properties/fill-properties.reel/fill-properties.html b/js/components/tools-properties/fill-properties.reel/fill-properties.html index d09b7f44..a35f9b15 100644 --- a/js/components/tools-properties/fill-properties.reel/fill-properties.html +++ b/js/components/tools-properties/fill-properties.reel/fill-properties.html | |||
@@ -11,6 +11,15 @@ | |||
11 | 11 | ||
12 | <script type="text/montage-serialization"> | 12 | <script type="text/montage-serialization"> |
13 | { | 13 | { |
14 | "_fillMaterialCB": { | ||
15 | "module": "js/components/combobox.reel", | ||
16 | "name": "Combobox", | ||
17 | "properties": { | ||
18 | "element": {"#": "fillMaterialCB"}, | ||
19 | "labelField": "_name", | ||
20 | "dataField": "_name" | ||
21 | } | ||
22 | }, | ||
14 | "owner": { | 23 | "owner": { |
15 | "module": "js/components/tools-properties/fill-properties.reel", | 24 | "module": "js/components/tools-properties/fill-properties.reel", |
16 | "name": "FillProperties", | 25 | "name": "FillProperties", |
@@ -18,7 +27,7 @@ | |||
18 | "element": {"#": "fillProperties"}, | 27 | "element": {"#": "fillProperties"}, |
19 | "_useWebGL": {"#": "useWebGLCH"}, |