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 #include "ash/ime/input_method_menu_item.h" 6 7 #include <sstream> 8 9 #include "base/logging.h" 10 11 namespace ash { 12 namespace ime { 13 14 InputMethodMenuItem::InputMethodMenuItem(const std::string& in_key, 15 const std::string& in_label, 16 bool in_is_selection_item, 17 bool in_is_selection_item_checked) 18 : key(in_key), 19 label(in_label), 20 is_selection_item(in_is_selection_item), 21 is_selection_item_checked(in_is_selection_item_checked) { 22 DCHECK(!key.empty()); 23 } 24 25 InputMethodMenuItem::InputMethodMenuItem() 26 : is_selection_item(false), 27 is_selection_item_checked(false) { 28 } 29 30 InputMethodMenuItem::~InputMethodMenuItem() { 31 } 32 33 bool InputMethodMenuItem::operator==(const InputMethodMenuItem& other) const { 34 return key == other.key && 35 label == other.label && 36 is_selection_item == other.is_selection_item && 37 is_selection_item_checked == other.is_selection_item_checked; 38 } 39 40 bool InputMethodMenuItem::operator!=(const InputMethodMenuItem& other) const { 41 return !(*this == other); 42 } 43 44 std::string InputMethodMenuItem::ToString() const { 45 std::stringstream stream; 46 stream << "key=" << key 47 << ", label=" << label 48 << ", is_selection_item=" << is_selection_item 49 << ", is_selection_item_checked=" << is_selection_item_checked; 50 return stream.str(); 51 } 52 53 } // namespace ime 54 } // namespace ash 55