diff options
Diffstat (limited to 'js/components/tools-properties/text-properties.reel/text-properties.js')
-rwxr-xr-x | js/components/tools-properties/text-properties.reel/text-properties.js | 342 |
1 files changed, 115 insertions, 227 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 0cfa6c4c..36aa3ce8 100755 --- a/js/components/tools-properties/text-properties.reel/text-properties.js +++ b/js/components/tools-properties/text-properties.reel/text-properties.js | |||
@@ -1,24 +1,25 @@ | |||
1 | /* <copyright> | 1 | /* <copyright> |
2 | Copyright (c) 2012, Motorola Mobility, Inc | 2 | Copyright (c) 2012, Motorola Mobility LLC. |
3 | All Rights Reserved. | 3 | All Rights Reserved. |
4 | BSD License. | ||
5 | 4 | ||
6 | Redistribution and use in source and binary forms, with or without | 5 | Redistribution and use in source and binary forms, with or without |
7 | modification, are permitted provided that the following conditions are met: | 6 | modification, are permitted provided that the following conditions are met: |
8 | 7 | ||
9 | - Redistributions of source code must retain the above copyright notice, | 8 | * Redistributions of source code must retain the above copyright notice, |
10 | this list of conditions and the following disclaimer. | 9 | this list of conditions and the following disclaimer. |
11 | - Redistributions in binary form must reproduce the above copyright | 10 | |
12 | notice, this list of conditions and the following disclaimer in the | 11 | * Redistributions in binary form must reproduce the above copyright notice, |
13 | documentation and/or other materials provided with the distribution. | 12 | this list of conditions and the following disclaimer in the documentation |
14 | - Neither the name of Motorola Mobility nor the names of its contributors | 13 | and/or other materials provided with the distribution. |
15 | may be used to endorse or promote products derived from this software | 14 | |
16 | without specific prior written permission. | 15 | * Neither the name of Motorola Mobility LLC nor the names of its |
16 | contributors may be used to endorse or promote products derived from this | ||
17 | software without specific prior written permission. | ||
17 | 18 | ||
18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 20 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 21 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
21 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | 22 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
22 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | 23 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
23 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | 24 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
24 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | 25 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
@@ -34,180 +35,93 @@ var ArrayController = require("montage/ui/controller/array-controller").ArrayCon | |||
34 | var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties; | 35 | var ToolProperties = require("js/components/tools-properties/tool-properties").ToolProperties; |
35 | 36 | ||
36 | exports.TextProperties = Montage.create(ToolProperties, { | 37 | exports.TextProperties = Montage.create(ToolProperties, { |
37 | className: {value: null, serializable: true}, | 38 | |
38 | tagType: {value: null, serializable: true}, | 39 | fontName: {value: null, serializable: true}, |
39 | fontSelection: {value: null, serializable: true}, | ||
40 | fontSettings: {value: null, serializable: true}, | ||
41 | fontSize: {value: null, serializable: true}, | 40 | fontSize: {value: null, serializable: true}, |
42 | fontColor: {value: null, serializable: true}, | 41 | fontColor: {value: null, serializable: true}, |
42 | |||
43 | btnBold: {value: null, serializable: true}, | 43 | btnBold: {value: null, serializable: true}, |
44 | btnItalic: {value: null, serializable: true}, | 44 | btnItalic: {value: null, serializable: true}, |
45 | btnUnderline: {value: null, serializable: true}, | 45 | btnUnderline: {value: null, serializable: true}, |
46 | btnStrikethrough: {value: null, serializable: true}, | 46 | btnStrikethrough: {value: null, serializable: true}, |
47 | txtLink: {value: null, serializable: true}, | 47 | |
48 | linkTarget: {value: null, serializable: true}, | ||
49 | alignLeft: {value: null, serializable: true}, | 48 | alignLeft: {value: null, serializable: true}, |
50 | alignCenter: {value: null, serializable: true}, | 49 | alignCenter: {value: null, serializable: true}, |
51 | alignRight: {value: null, serializable: true}, | 50 | alignRight: {value: null, serializable: true}, |
52 | alignJustify: {value: null, serializable: true}, | 51 | alignJustify: {value: null, serializable: true}, |
52 | |||
53 | indent: {value: null, serializable: true}, | 53 | indent: {value: null, serializable: true}, |
54 | outdent: {value: null, serializable: true}, | 54 | outdent: {value: null, serializable: true}, |
55 | |||
55 | numberedList: {value: null, serializable: true}, | 56 | numberedList: {value: null, serializable: true}, |
56 | bulletedList: {value: null, serializable: true}, | 57 | 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 | 58 | ||
59 | // Events | ||
97 | handleEditorSelect: { | 60 | handleEditorSelect: { |
98 | value: function(e) { | 61 | value: function(e) { |
99 | //this.application.ninja.stage.textTool.updateStates(); | 62 | this.alignLeft.pressed = false; |
100 | // this.fontSelection.value = this.application.ninja.stage.textTool.states.fontname; | 63 | this.alignCenter.pressed = false; |
101 | // | 64 | this.alignRight.pressed = false; |
102 | // for( var i = 0; i < this.fontSize.items.length; i++) { | 65 | this.alignJustify.pressed = false; |
103 | // if (this.application.ninja.stage.textTool.states.fontsize == i + 1) { | 66 | this.bulletedList.pressed = false; |
104 | // this.fontSize.value = this.fontSize.items[i] | 67 | 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 | |||
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: { | ||
135 | value: function(e) { | ||
136 | this.alignLeft.value = false; | ||
137 | //this.alignCenter.value = false; | ||
138 | this.alignRight.value = false; | ||
139 | this.alignJustify.value = false; | ||
140 | this.application.ninja.stage.textTool.doAction("justifycenter"); | ||
141 | } | ||
142 | }, | ||
143 | |||
144 | handleAlignRightAction: { | ||
145 | value: function(e) { | ||
146 | this.alignLeft.value = false; | ||
147 | this.alignCenter.value = false; | ||
148 | //this.alignRight.value = false; | ||
149 | this.alignJustify.value = false; | ||
150 | this.application.ninja.stage.textTool.doAction("justifyright"); | ||
151 | } | ||
152 | }, | ||
153 | 69 | ||
154 | handleAlignJustifyAction: { | 70 | switch(this.application.ninja.stage.textTool.justify) { |
155 | value: function(e) { | 71 | case "left": |
156 | this.alignLeft.value = false; | 72 | this.alignLeft.pressed = true; |
157 | this.alignCenter.value = false; | 73 | break; |
158 | this.alignRight.value = false; | 74 | case "center": |
159 | //this.alignJustify.value = false; | 75 | this.alignCenter.pressed = true; |
160 | this.application.ninja.stage.textTool.doAction("justifyfull"); | 76 | break; |
77 |