aboutsummaryrefslogtreecommitdiff
path: root/js/components/tools-properties/text-properties.reel/text-properties.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/components/tools-properties/text-properties.reel/text-properties.js')
-rwxr-xr-xjs/components/tools-properties/text-properties.reel/text-properties.js319
1 files changed, 103 insertions, 216 deletions
diff --git a/js/components/tools-properties/text-properties.reel/text-properties.js b/js/components/tools-properties/text-properties.reel/text-properties.js
index a3adbb1d..911b4b19 100755
--- a/js/components/tools-properties/text-properties.reel/text-properties.js
+++ b/js/components/tools-properties/text-properties.reel/text-properties.js
@@ -34,180 +34,93 @@ var ArrayController = require("montage/ui/controller/array-controller").ArrayCon
34var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties; 34var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties;
35 35
36exports.TextProperties = Montage.create(ToolProperties, { 36exports.TextProperties = Montage.create(ToolProperties, {
37 className: {value: null, serializable: true}, 37
38 tagType: {value: null, serializable: true}, 38 fontName: {value: null, serializable: true},
39 fontSelection: {value: null, serializable: true},
40 fontSettings: {value: null, serializable: true},
41 fontSize: {value: null, serializable: true}, 39 fontSize: {value: null, serializable: true},
42 fontColor: {value: null, serializable: true}, 40 fontColor: {value: null, serializable: true},
41
43 btnBold: {value: null, serializable: true}, 42 btnBold: {value: null, serializable: true},
44 btnItalic: {value: null, serializable: true}, 43 btnItalic: {value: null, serializable: true},
45 btnUnderline: {value: null, serializable: true}, 44 btnUnderline: {value: null, serializable: true},
46 btnStrikethrough: {value: null, serializable: true}, 45 btnStrikethrough: {value: null, serializable: true},
47 txtLink: {value: null, serializable: true}, 46
48 linkTarget: {value: null, serializable: true},
49 alignLeft: {value: null, serializable: true}, 47 alignLeft: {value: null, serializable: true},
50 alignCenter: {value: null, serializable: true}, 48 alignCenter: {value: null, serializable: true},
51 alignRight: {value: null, serializable: true}, 49 alignRight: {value: null, serializable: true},
52 alignJustify: {value: null, serializable: true}, 50 alignJustify: {value: null, serializable: true},
51
53 indent: {value: null, serializable: true}, 52 indent: {value: null, serializable: true},
54 outdent: {value: null, serializable: true}, 53 outdent: {value: null, serializable: true},
54
55 numberedList: {value: null, serializable: true}, 55 numberedList: {value: null, serializable: true},
56 bulletedList: {value: null, serializable: true}, 56 bulletedList: {value: null, serializable: true},
57 fontTypes: {value: null, serializable: true},
58 fontSizes: {value: null, serializable: true},
59
60 prepareForDraw: {
61 value: function() {
62 // code commented out because montage ui element select-input is incomplete. Will switch back when they fix or actually complete the component
63// this.fontTypes = Montage.create(ArrayController);
64// this.fontTypes.content = [
65// { value: "Arial", text: "Arial" },
66// { value: "Arial Black", text: "Arial Black" },
67// { value: "Courier New", text: "Courier New" },
68// { value: "Garamond", text: "Garamond" },
69// { value: "Georgia", text: "Georgia" },
70// { value: "Open Sans", text: "Open Sans" },
71// { value: "Tahoma", text: "Tahoma" },
72// { value: "Times New Roman", text: "Times New Roman" },
73// { value: "Trebuchet MS", text: "Trebuchet MS" },
74// { value: "Verdana", text: "Verdana" }
75// ];
76
77 //this.fontSelection.contentController = this.fontTypes;
78//
79// this.fontSizes = Montage.create(ArrayController);
80// this.fontSizes.content = [
81// { value: 1, text: "8pt" },
82// { value: 2, text: "10pt" },
83// { value: 3, text: "12pt" },
84// { value: 4, text: "14pt" },
85// { value: 5, text: "18pt" },
86// { value: 6, text: "24pt" },
87// { value: 7, text: "36pt" }
88// ];
89// this.fontSize.contentController = this.fontSizes;
90
91 this.fontSelection.items = ["Arial", "Arial Black", "Courier New", "Garamond", "Georgia", "Open Sans", "Tahoma", "Times New Roman", "Trebuchet MS", "Verdana"];
92 this.fontSize.items = ["8pt","10pt","12pt","14pt","18pt","24pt","36pt"];
93 this.tagType.items = ["div", "span", "p", "section", "article", "h1", "h2", "h3", "h4", "h5", "h6"];
94 }
95 },
96 57
58 // Events
97 handleEditorSelect: { 59 handleEditorSelect: {
98 value: function(e) { 60 value: function(e) {
99 //this.application.ninja.stage.textTool.updateStates(); 61 this.alignLeft.pressed = false;
100// this.fontSelection.value = this.application.ninja.stage.textTool.states.fontname; 62 this.alignCenter.pressed = false;
101// 63 this.alignRight.pressed = false;
102// for( var i = 0; i < this.fontSize.items.length; i++) { 64 this.alignJustify.pressed = false;
103// if (this.application.ninja.stage.textTool.states.fontsize == i + 1) { 65 this.bulletedList.pressed = false;
104// this.fontSize.value = this.fontSize.items[i] 66 this.numberedList.pressed = false;
105// break;
106// }
107// }
108 }
109 },
110
111 _subPrepare: {
112 value: function() {
113 //this.divElement.addEventListener("click", this, false);
114 }
115 },
116 67
117 handleClick: {
118 value: function(event) {
119 // this.selectedElement = event._event.target.id;
120
121 }
122 },
123
124 handleAlignLeftAction: {
125 value: function(e) {
126 //this.alignLeft.value = false;
127 this.alignCenter.value = false;
128 this.alignRight.value = false;
129 this.alignJustify.value = false;
130 this.application.ninja.stage.textTool.doAction("justifyleft");
131 }
132 },
133 68
134 handleAlignCenterAction: { 69 switch(this.application.ninja.stage.textTool.justify) {
135 value: function(e) { 70 case "left":
136 this.alignLeft.value = false; 71 this.alignLeft.pressed = true;
137 //this.alignCenter.value = false; 72 break;
138 this.alignRight.value = false; 73 case "center":
139 this.alignJustify.value = false; 74 this.alignCenter.pressed = true;
140 this.application.ninja.stage.textTool.doAction("justifycenter"); 75 break;
76 case "right":
77 this.alignRight.pressed = true;
78 break;
79 case "full":
80 this.alignJustify.pressed = true;
141 } 81 }
142 },
143 82
144 handleAlignRightAction: { 83 switch(this.application.ninja.stage.textTool.listStyle) {
145 value: function(e) { 84 case "ordered":
146 this.alignLeft.value = false; 85 this.numberedList.pressed = true;
147 this.alignCenter.value = false; 86 break;
148 //this.alignRight.value = false; 87 case "unordered":
149 this.alignJustify.value = false; 88 this.bulletedList.pressed = true;
150 this.application.ninja.stage.textTool.doAction("justifyright");
151 } 89 }
152 },
153
154 handleAlignJustifyAction: {
155 value: function(e) {
156 this.alignLeft.value = false;
157 this.alignCenter.value = false;
158 this.alignRight.value = false;
159 //this.alignJustify.value = false;
160 this.application.ninja.stage.textTool.doAction("justifyfull");
161 } 90 }
162 }, 91 },
163 92
164 handleIndentAction: { 93 handleEditorBlur: {
165 value: function(e) { 94 value: function(e) {
166 this.application.ninja.stage.textTool.doAction("indent");
167 }
168 },
169 95
170 handleOutdentAction: {
171 value: function(e) {
172 this.application.ninja.stage.textTool.doAction("outdent");
173 } 96 }
174 }, 97 },
175 98
176 handleBulletedListAction: {
177 value: function(e) {
178 this.application.ninja.stage.textTool.doAction("insertunorderedlist");
179 }
180 },
181 99
182 handleNumberedListAction: { 100 // Draw Cycle
183 value: function(e) { 101 prepareForDraw: {
184 this.application.ninja.stage.textTool.doAction("insertorderedlist");
185 }
186 },