Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(327)

Side by Side Diff: chrome/browser/resources/chromeos/chromevox/host/interface/abstract_earcons.js

Issue 1306773003: Make earcon ids strings instead of numbers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@remove_unused_earcons
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @fileoverview Base class for implementing earcons. 6 * @fileoverview Base class for implementing earcons.
7 * 7 *
8 * When adding earcons, please add them to getEarconName and getEarconId. 8 * When adding earcons, please add them to getEarconName and getEarconId.
9 * 9 *
10 */ 10 */
11 11
12 goog.provide('cvox.AbstractEarcons'); 12 goog.provide('cvox.AbstractEarcons');
13 goog.provide('cvox.Earcon');
13 14
14 15
15 /** 16 /**
17 * Earcon names.
18 * @enum {string}
19 */
20 cvox.Earcon = {
21 ALERT_NONMODAL: 'alert_nonmodal',
22 BULLET: 'bullet',
23 BUSY_PROGRESS_LOOP: 'busy_progress_loop',
24 BUTTON: 'button',
25 CHECK_OFF: 'check_off',
26 CHECK_ON: 'check_on',
27 EDITABLE_TEXT: 'editable_text',
28 FONT_CHANGE: 'font_change',
29 LINK: 'link',
30 LISTBOX: 'listbox',
31 LIST_ITEM: 'bullet',
32 LONG_DESC: 'long_desc',
33 OBJECT_CLOSE: 'object_close',
34 OBJECT_ENTER: 'object_enter',
35 OBJECT_EXIT: 'object_exit',
36 OBJECT_OPEN: 'object_open',
37 OBJECT_SELECT: 'object_select',
38 PARAGRAPH_BREAK: 'paragraph_break',
39 SECTION: 'section',
40 SELECTION: 'selection',
41 SELECTION_REVERSE: 'selection_reverse',
42 SPECIAL_CONTENT: 'special_content',
43 TASK_SUCCESS: 'task_success',
44 WRAP: 'wrap',
45 WRAP_EDGE: 'wrap_edge',
46 };
47
48
49 /**
16 * @constructor 50 * @constructor
17 */ 51 */
18 cvox.AbstractEarcons = function() { 52 cvox.AbstractEarcons = function() {
19 /** 53 /**
20 * Public flag set to enable or disable earcons. Callers should prefer 54 * Public flag set to enable or disable earcons. Callers should prefer
21 * toggle(); however, this member is public for initialization. 55 * toggle(); however, this member is public for initialization.
22 * @type {boolean} 56 * @type {boolean}
23 */ 57 */
24 this.enabled = true; 58 this.enabled = true;
25 }; 59 };
26 60
27 61
28 /** 62 /**
29 * Plays the specified earcon sound. 63 * Plays the specified earcon sound.
30 * @param {number} earcon An earcon index. 64 * @param {cvox.Earcon} earcon An earcon identifier.
31 */ 65 */
32 cvox.AbstractEarcons.prototype.playEarcon = function(earcon) { 66 cvox.AbstractEarcons.prototype.playEarcon = function(earcon) {
33 }; 67 };
34 68
35 69
36 /** 70 /**
37 * Plays the specified earcon sound, given the name of the earcon.
38 * @param {string} earconName The name of the earcon.
39 */
40 cvox.AbstractEarcons.prototype.playEarconByName = function(earconName) {
41 this.playEarcon(this.getEarconId(earconName));
42 };
43
44
45 /**
46 * Whether or not earcons are available. 71 * Whether or not earcons are available.
47 * @return {boolean} True if earcons are available. 72 * @return {boolean} True if earcons are available.
48 */ 73 */
49 cvox.AbstractEarcons.prototype.earconsAvailable = function() { 74 cvox.AbstractEarcons.prototype.earconsAvailable = function() {
50 return true; 75 return true;
51 }; 76 };
52 77
53 78
54 /** 79 /**
55 * @param {number} earcon An earcon index.
56 * @return {string} The readable earcon name.
57 */
58 cvox.AbstractEarcons.prototype.getEarconName = function(earcon) {
59 if (!this.earconNames) {
60 this.earconNames = new Array();
61 this.earconNames.push('ALERT_NONMODAL');
62 this.earconNames.push('BULLET');
63 this.earconNames.push('BUSY_PROGRESS_LOOP');
64 this.earconNames.push('BUTTON');
65 this.earconNames.push('CHECK_OFF');
66 this.earconNames.push('CHECK_ON');
67 this.earconNames.push('EDITABLE_TEXT');
68 this.earconNames.push('FONT_CHANGE');
69 this.earconNames.push('LINK');
70 this.earconNames.push('LISTBOX');
71 this.earconNames.push('LIST_ITEM');
72 this.earconNames.push('LONG_DESC');
73 this.earconNames.push('OBJECT_CLOSE');
74 this.earconNames.push('OBJECT_ENTER');
75 this.earconNames.push('OBJECT_EXIT');
76 this.earconNames.push('OBJECT_OPEN');
77 this.earconNames.push('OBJECT_SELECT');
78 this.earconNames.push('PARAGRAPH_BREAK');
79 this.earconNames.push('SECTION');
80 this.earconNames.push('SELECTION');
81 this.earconNames.push('SELECTION_REVERSE');
82 this.earconNames.push('SPECIAL_CONTENT');
83 this.earconNames.push('TASK_SUCCESS');
84 this.earconNames.push('WRAP');
85 this.earconNames.push('WRAP_EDGE');
86 }
87 return this.earconNames[earcon];
88 };
89
90
91 /**
92 * @param {string} earconName An earcon name.
93 * @return {number} The earcon ID.
94 */
95 cvox.AbstractEarcons.prototype.getEarconId = function(earconName) {
96 if (!this.earconNamesToIds) {
97 this.earconNamesToIds = new Object();
98 this.earconNamesToIds['ALERT_NONMODAL'] =
99 cvox.AbstractEarcons.ALERT_NONMODAL;
100 this.earconNamesToIds['BULLET'] = cvox.AbstractEarcons.BULLET;
101 this.earconNamesToIds['BUSY_PROGRESS_LOOP'] =
102 cvox.AbstractEarcons.BUSY_PROGRESS_LOOP;
103 this.earconNamesToIds['BUTTON'] = cvox.AbstractEarcons.BUTTON;
104 this.earconNamesToIds['CHECK_OFF'] = cvox.AbstractEarcons.CHECK_OFF;
105 this.earconNamesToIds['CHECK_ON'] = cvox.AbstractEarcons.CHECK_ON;
106 this.earconNamesToIds['EDITABLE_TEXT'] = cvox.AbstractEarcons.EDITABLE_TEXT;
107 this.earconNamesToIds['FONT_CHANGE'] = cvox.AbstractEarcons.FONT_CHANGE;
108 this.earconNamesToIds['LINK'] = cvox.AbstractEarcons.LINK;
109 this.earconNamesToIds['LISTBOX'] = cvox.AbstractEarcons.LISTBOX;
110 this.earconNamesToIds['LIST_ITEM'] = cvox.AbstractEarcons.LIST_ITEM;
111 this.earconNamesToIds['LONG_DESC'] = cvox.AbstractEarcons.LONG_DESC;
112 this.earconNamesToIds['OBJECT_CLOSE'] = cvox.AbstractEarcons.OBJECT_CLOSE;
113 this.earconNamesToIds['OBJECT_ENTER'] = cvox.AbstractEarcons.OBJECT_ENTER;
114 this.earconNamesToIds['OBJECT_EXIT'] = cvox.AbstractEarcons.OBJECT_EXIT;
115 this.earconNamesToIds['OBJECT_OPEN'] = cvox.AbstractEarcons.OBJECT_OPEN;
116 this.earconNamesToIds['OBJECT_SELECT'] = cvox.AbstractEarcons.OBJECT_SELECT;
117 this.earconNamesToIds['PARAGRAPH_BREAK'] =
118 cvox.AbstractEarcons.PARAGRAPH_BREAK;
119 this.earconNamesToIds['SECTION'] = cvox.AbstractEarcons.SECTION;
120 this.earconNamesToIds['SELECTION'] = cvox.AbstractEarcons.SELECTION;
121 this.earconNamesToIds['SELECTION_REVERSE'] =
122 cvox.AbstractEarcons.SELECTION_REVERSE;
123 this.earconNamesToIds['SPECIAL_CONTENT'] =
124 cvox.AbstractEarcons.SPECIAL_CONTENT;
125 this.earconNamesToIds['TASK_SUCCESS'] = cvox.AbstractEarcons.TASK_SUCCESS;
126 this.earconNamesToIds['WRAP'] = cvox.AbstractEarcons.WRAP;
127 this.earconNamesToIds['WRAP_EDGE'] = cvox.AbstractEarcons.WRAP_EDGE;
128 }
129 return this.earconNamesToIds[earconName];
130 };
131
132
133 /**
134 * @param {number} earconId The earcon ID.
135 * @return {string} The filename for the earcon.
136 */
137 cvox.AbstractEarcons.prototype.getEarconFilename = function(earconId) {
138 return cvox.AbstractEarcons.earconMap[earconId];
139 };
140
141
142 /**
143 * Toggles earcons on or off. 80 * Toggles earcons on or off.
144 * @return {boolean} True if earcons are now enabled; false otherwise. 81 * @return {boolean} True if earcons are now enabled; false otherwise.
145 */ 82 */
146 cvox.AbstractEarcons.prototype.toggle = function() { 83 cvox.AbstractEarcons.prototype.toggle = function() {
147 this.enabled = !this.enabled; 84 this.enabled = !this.enabled;
148 return this.enabled; 85 return this.enabled;
149 }; 86 };
150
151
152 /**
153 * @type {number}
154 */
155 cvox.AbstractEarcons.ALERT_NONMODAL = 1;
156
157 /**
158 * @type {number}
159 */
160 cvox.AbstractEarcons.BULLET = 2;
161
162 /**
163 * @type {number}
164 */
165 cvox.AbstractEarcons.BUSY_PROGRESS_LOOP = 3;
166
167 /**
168 * @type {number}
169 */
170 cvox.AbstractEarcons.BUTTON = 5;
171
172 /**
173 * @type {number}
174 */
175 cvox.AbstractEarcons.CHECK_OFF = 6;
176
177 /**
178 * @type {number}
179 */
180 cvox.AbstractEarcons.CHECK_ON = 7;
181
182 /**
183 * @type {number}
184 */
185 cvox.AbstractEarcons.EDITABLE_TEXT = 9;
186
187 /**
188 * @type {number}
189 */
190 cvox.AbstractEarcons.FONT_CHANGE = 12;
191
192 /**
193 * @type {number}
194 */
195 cvox.AbstractEarcons.LINK = 14;
196
197 /**
198 * @type {number}
199 */
200 cvox.AbstractEarcons.LISTBOX = 15;
201
202 /**
203 * @type {number}
204 */
205 cvox.AbstractEarcons.LIST_ITEM = 16;
206
207 /**
208 * @type {number}
209 */
210 cvox.AbstractEarcons.LONG_DESC = 17;
211
212 /**
213 * @type {number}
214 */
215 cvox.AbstractEarcons.OBJECT_CLOSE = 19;
216
217 /**
218 * @type {number}
219 */
220 cvox.AbstractEarcons.OBJECT_ENTER = 22;
221
222 /**
223 * @type {number}
224 */
225 cvox.AbstractEarcons.OBJECT_EXIT = 23;
226
227 /**
228 * @type {number}
229 */
230 cvox.AbstractEarcons.OBJECT_OPEN = 24;
231
232 /**
233 * @type {number}
234 */
235 cvox.AbstractEarcons.OBJECT_SELECT = 25;
236
237 /**
238 * @type {number}
239 */
240 cvox.AbstractEarcons.PARAGRAPH_BREAK = 26;
241
242 /**
243 * @type {number}
244 */
245 cvox.AbstractEarcons.SECTION = 29;
246
247 /**
248 * @type {number}
249 */
250 cvox.AbstractEarcons.SELECTION = 30;
251
252 /**
253 * @type {number}
254 */
255 cvox.AbstractEarcons.SELECTION_REVERSE = 31;
256
257 /**
258 * @type {number}
259 */
260 cvox.AbstractEarcons.SPECIAL_CONTENT = 32;
261
262 /**
263 * @type {number}
264 */
265 cvox.AbstractEarcons.TASK_SUCCESS = 33;
266
267 /**
268 * @type {number}
269 */
270 cvox.AbstractEarcons.WRAP = 34;
271
272 /**
273 * @type {number}
274 */
275 cvox.AbstractEarcons.WRAP_EDGE = 35;
276
277 /**
278 * The earcon map.
279 * @type {Object}
280 */
281 cvox.AbstractEarcons.earconMap = new Object();
282 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.ALERT_NONMODAL] =
283 'alert_nonmodal.ogg';
284 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BULLET] = 'bullet.ogg';
285 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BUSY_PROGRESS_LOOP] =
286 'busy_progress_loop.ogg';
287 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BUTTON] = 'button.ogg';
288 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.CHECK_OFF] =
289 'check_off.ogg';
290 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.CHECK_ON] = 'check_on.ogg';
291 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.EDITABLE_TEXT] =
292 'editable_text.ogg';
293 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.FONT_CHANGE] =
294 'font_change.ogg';
295 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LINK] = 'link.ogg';
296 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LISTBOX] = 'listbox.ogg';
297 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LIST_ITEM] = 'bullet.ogg';
298 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LONG_DESC] =
299 'long_desc.ogg';
300 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_CLOSE] =
301 'object_close.ogg';
302 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_ENTER] =
303 'object_enter.ogg';
304 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_EXIT] =
305 'object_exit.ogg';
306 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_OPEN] =
307 'object_open.ogg';
308 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_SELECT] =
309 'object_select.ogg';
310 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.PARAGRAPH_BREAK] =
311 'paragraph_break.ogg';
312 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SECTION] = 'section.ogg';
313 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SELECTION] =
314 'selection.ogg';
315 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SELECTION_REVERSE] =
316 'selection_reverse.ogg';
317 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SPECIAL_CONTENT] =
318 'special_content.ogg';
319 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.TASK_SUCCESS] =
320 'task_success.ogg';
321 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.WRAP] = 'wrap.ogg';
322 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.WRAP_EDGE] =
323 'wrap_edge.ogg';
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698