// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CHROME_BROWSER_REMOTING_REMOTING_OPTIONS_HANDLER_H_ #define CHROME_BROWSER_REMOTING_REMOTING_OPTIONS_HANDLER_H_ #include "base/basictypes.h" #include "chrome/browser/service/service_process_control.h" class WebUI; namespace remoting { // Remoting options handler is responsinble for showing correct status // of the chromoting host in the preferences. It listens to the // messages from the service process (by registering MessageHandler // callback in the ServiceProcessControl) and updates current status // as neccessary. class RemotingOptionsHandler : public ServiceProcessControl::MessageHandler { public: RemotingOptionsHandler(); virtual ~RemotingOptionsHandler(); void Init(WebUI* web_ui); // ServiceProcessControl::MessageHandler interface. virtual void OnRemotingHostInfo( const remoting::ChromotingHostInfo& host_info); private: void SetStatus(bool enabled, const std::string& login); WebUI* web_ui_; ServiceProcessControl* process_control_; DISALLOW_COPY_AND_ASSIGN(RemotingOptionsHandler); }; } // namespace remoting #endif // CHROME_BROWSER_REMOTING_REMOTING_OPTIONS_HANDLER_H_