1 // Copyright (c) 2012 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_SYSTEM_LOCALE_LOCALE_OBSERVER_H_ 6 #define ASH_SYSTEM_LOCALE_LOCALE_OBSERVER_H_ 7 8 #include "ash/ash_export.h" 9 10 namespace ash { 11 12 class ASH_EXPORT LocaleObserver { 13 public: 14 class Delegate { 15 public: ~Delegate()16 virtual ~Delegate() {} 17 18 virtual void AcceptLocaleChange() = 0; 19 virtual void RevertLocaleChange() = 0; 20 }; 21 ~LocaleObserver()22 virtual ~LocaleObserver() {} 23 24 virtual void OnLocaleChanged(Delegate* delegate, 25 const std::string& cur_locale, 26 const std::string& from_locale, 27 const std::string& to_locale) = 0; 28 }; 29 30 } // namespace ash 31 32 #endif // ASH_SYSTEM_LOCALE_LOCALE_OBSERVER_H_ 33