OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef ASH_IME_INPUT_METHOD_MENU_ITEM_H_ | |
6 #define ASH_IME_INPUT_METHOD_MENU_ITEM_H_ | |
7 | |
8 #include <string> | |
9 #include <vector> | |
10 #include "ash/ash_export.h" | |
11 | |
12 namespace ash { | |
13 namespace ime { | |
14 | |
15 // A structure which represents a property for an input method engine. | |
16 struct ASH_EXPORT InputMethodMenuItem { | |
17 InputMethodMenuItem(const std::string& in_key, | |
18 const std::string& in_label, | |
19 bool in_is_selection_item, | |
20 bool in_is_selection_item_checked); | |
21 | |
22 InputMethodMenuItem(); | |
23 ~InputMethodMenuItem(); | |
24 | |
25 bool operator==(const InputMethodMenuItem& other) const; | |
26 bool operator!=(const InputMethodMenuItem& other) const; | |
27 | |
28 // Debug print function. | |
29 std::string ToString() const; | |
30 | |
31 std::string key; // A key which identifies the property. Non-empty string. | |
32 // (e.g. "InputMode.HalfWidthKatakana") | |
33 std::string label; // A description of the property. Non-empty string. | |
34 // (e.g. "Switch to full punctuation mode", "Hiragana") | |
35 bool is_selection_item; // true if the property is a selection item. | |
36 bool is_selection_item_checked; // true if |is_selection_item| is true and | |
37 // the selection_item is selected. | |
38 }; | |
39 typedef std::vector<InputMethodMenuItem> InputMethodMenuItemList; | |
40 | |
41 } // namespace ime | |
42 } // namespace ash | |
43 | |
44 #endif // ASH_IME_INPUT_METHOD_MENU_ITEM_H_ | |
OLD | NEW |