Home | History | Annotate | Download | only in options
      1 // Copyright (c) 2011 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 CHROME_BROWSER_UI_WEBUI_OPTIONS_SYNC_SETUP_HANDLER_H_
      6 #define CHROME_BROWSER_UI_WEBUI_OPTIONS_SYNC_SETUP_HANDLER_H_
      7 
      8 #include "chrome/browser/sync/sync_setup_flow_handler.h"
      9 #include "chrome/browser/ui/webui/options/options_ui.h"
     10 
     11 class SyncSetupFlow;
     12 
     13 class SyncSetupHandler : public OptionsPageUIHandler,
     14                          public SyncSetupFlowHandler {
     15  public:
     16   SyncSetupHandler();
     17   virtual ~SyncSetupHandler();
     18 
     19   // OptionsPageUIHandler implementation.
     20   virtual void GetLocalizedValues(DictionaryValue* localized_strings);
     21   virtual void Initialize();
     22   virtual void RegisterMessages();
     23 
     24   // SyncSetupFlowHandler implementation.
     25   virtual void ShowGaiaLogin(const DictionaryValue& args);
     26   virtual void ShowGaiaSuccessAndClose();
     27   virtual void ShowGaiaSuccessAndSettingUp();
     28   virtual void ShowConfigure(const DictionaryValue& args);
     29   virtual void ShowPassphraseEntry(const DictionaryValue& args);
     30   virtual void ShowFirstPassphrase(const DictionaryValue& args);
     31   virtual void ShowSettingUp();
     32   virtual void ShowSetupDone(const std::wstring& user);
     33   virtual void ShowFirstTimeDone(const std::wstring& user);
     34 
     35   virtual void SetFlow(SyncSetupFlow* flow) {
     36     flow_ = flow;
     37   }
     38 
     39  private:
     40   // Callbacks from the page.
     41   void OnDidShowPage(const ListValue* args);
     42   void OnDidClosePage(const ListValue* args);
     43   void HandleSubmitAuth(const ListValue* args);
     44   void HandleConfigure(const ListValue* args);
     45   void HandlePassphraseEntry(const ListValue* args);
     46   void HandlePassphraseCancel(const ListValue* args);
     47   void HandleFirstPassphrase(const ListValue* args);
     48   void HandleGoToDashboard(const ListValue* args);
     49 
     50   // Weak reference.
     51   SyncSetupFlow* flow_;
     52 
     53   DISALLOW_COPY_AND_ASSIGN(SyncSetupHandler);
     54 };
     55 
     56 #endif  // CHROME_BROWSER_UI_WEBUI_OPTIONS_SYNC_SETUP_HANDLER_H_
     57