aboutsummaryrefslogtreecommitdiff
path: root/js/components/tools-properties/pen-properties.reel/pen-properties.js
diff options
context:
space:
mode:
authorJohn Mayhew2012-05-03 15:11:56 -0700
committerJohn Mayhew2012-05-03 15:11:56 -0700
commit1a759361b82127f9d5c1428dc889fffdf2daaf86 (patch)
tree92e62aa215418d864e5224797a974cb9841d4b90 /js/components/tools-properties/pen-properties.reel/pen-properties.js
parent6b1a6994d98a18b45016b97ac8d81483109a586c (diff)
downloadninja-1a759361b82127f9d5c1428dc889fffdf2daaf86.tar.gz
First round of moving color chips into the sub tools. Shape and Pen tool now have chips in the sub tool bar. Still need to complete adding chips to the Brush tool and finalizing the subtool bar layout to our spec for all of the subtools.
Diffstat (limited to 'js/components/tools-properties/pen-properties.reel/pen-properties.js')
-rwxr-xr-xjs/components/tools-properties/pen-properties.reel/pen-properties.js83
1 files changed, 81 insertions, 2 deletions
diff --git a/js/components/tools-properties/pen-properties.reel/pen-properties.js b/js/components/tools-properties/pen-properties.reel/pen-properties.js
index b57f9a6f..cd205e07 100755
--- a/js/components/tools-properties/pen-properties.reel/pen-properties.js
+++ b/js/components/tools-properties/pen-properties.reel/pen-properties.js
@@ -7,8 +7,87 @@ No rights, expressed or implied, whatsoever to this software are provided by Mot
7var Montage = require("montage/core/core").Montage; 7var Montage = require("montage/core/core").Montage;
8var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties; 8var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties;
9 9
10exports.PenProperties = Montage.create(ToolProperties, { 10var PenProperties = exports.PenProperties = Montage.create(ToolProperties, {
11 addedColorChips: { value: false },
12
13 _fill: {
14 enumerable: false,
15 value: { colorMode: 'rgb', color: { r: 255, g: 255, b: 255, a: 1, css: 'rgb(255,255,255)', mode: 'rgb', wasSetByCode: true, type: 'change' }, webGlColor: [1, 1, 1, 1] }
16 },
17
18 _stroke: {
19 enumerable: false,
20 value: { colorMode: 'rgb', color: { r: 0, g: 0, b: 0, a: 1, css: 'rgb(0,0,0)', mode: 'rgb', wasSetByCode: true, type: 'change' }, webGlColor: [0, 0, 0, 1] }
21 },
22
23 stroke: {
24 enumerable: true,
25 get: function () {
26 return this._stroke;
27 },
28 set: function (value) {
29 if (value !== this._stroke) {
30 this._stroke = value;
31 }
32 }
33 },
34
35 fill: {
36 enumerable: true,
37 get: function () {
38 return this._fill;
39 },
40 set: function (value) {
41 if (value !== this._fill) {
42 this._fill = value;
43 }
44 }
45 },
46
11 strokeSize: { 47 strokeSize: {
12 get: function() { return this._strokeSize; } 48 get: function () {
49 return this._strokeSize;
50 }
51 },
52
53 draw: {
54 enumerable: false,
55 value: function () {
56 Object.getPrototypeOf(PenProperties).draw.call(this);
57
58 if (this.addedColorChips === false && this.application.ninja.colorController.colorPanelDrawn) {
59 // setup fill color
60 this._fillColorCtrl.props = { side: 'top', align: 'center', wheel: true, palette: true, gradient: false, image: false, nocolor: true, offset: -80 };
61 this.application.ninja.colorController.addButton("chip", this._fillColorCtrl);
62
63 // setup stroke color
64 this._strokeColorCtrl.props = { side: 'top', align: 'center', wheel: true, palette: true, gradient: false, image: false, nocolor: true, offset: -80 };
65 this.application.ninja.colorController.addButton("chip", this._strokeColorCtrl);
66
67 this._fillColorCtrl.addEventListener("change", this.handleFillColorChange.bind(this), false);
68 this._strokeColorCtrl.addEventListener("change", this.handleStrokeColorChange.bind(this), false);
69
70 this.addedColorChips = true;
71 }
72
73 if (this.addedColorChips) {
74 this._fillColorCtrl.color(this._fill.colorMode, this._fill.color);
75 this._strokeColorCtrl.color(this._stroke.colorMode, this._stroke.color);
76 }
77 }
78 },
79
80 handleFillColorChange: {
81 value: function (e) {
82 this.fill = e._event;
83 this.fill.webGlColor = this.application.ninja.colorController.colorModel.colorToWebGl(e._event.color);
84 }
85 },
86
87 handleStrokeColorChange: {
88 value: function (e) {
89 this.stroke = e._event;
90 this.stroke.webGlColor = this.application.ninja.colorController.colorModel.colorToWebGl(e._event.color);
91 }
13 } 92 }
14}); \ No newline at end of file 93}); \ No newline at end of file