| Index: chrome/browser/views/select_profile_dialog.h
|
| ===================================================================
|
| --- chrome/browser/views/select_profile_dialog.h (revision 0)
|
| +++ chrome/browser/views/select_profile_dialog.h (revision 0)
|
| @@ -0,0 +1,85 @@
|
| +// Copyright (c) 2006-2008 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.
|
| +//
|
| +// A dialog box that shows the user various profiles that currently exist
|
| +// and lets the user select one.
|
| +
|
| +#ifndef CHROME_BROWSER_VIEWS_SELECT_PROFILE_DIALOG_H_
|
| +#define CHROME_BROWSER_VIEWS_SELECT_PROFILE_DIALOG_H_
|
| +
|
| +#include <vector>
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "base/message_loop.h"
|
| +#include "base/ref_counted.h"
|
| +#include "chrome/browser/shell_dialogs.h"
|
| +#include "chrome/browser/user_data_manager.h"
|
| +#include "chrome/views/combo_box.h"
|
| +#include "chrome/views/dialog_delegate.h"
|
| +
|
| +class SelectProfileDialogHelper;
|
| +namespace views {
|
| +class Label;
|
| +class Window;
|
| +}
|
| +
|
| +// Dialog to allow the user to select a profile to open a new window.
|
| +class SelectProfileDialog
|
| + : public views::DialogDelegate,
|
| + public views::View,
|
| + public views::ComboBox::Model,
|
| + public GetProfilesHelper::Delegate {
|
| + public:
|
| + // Creates and runs the dialog.
|
| + static void RunDialog();
|
| +
|
| + virtual ~SelectProfileDialog();
|
| +
|
| + // Populates the list of profiles from the given vector.
|
| + void PopulateProfilesComboBox(const std::vector<std::wstring>& profiles);
|
| +
|
| + // Returns the profile name selected by the user.
|
| + std::wstring profile_name() { return profile_name_; }
|
| +
|
| + // views::View methods.
|
| + virtual gfx::Size GetPreferredSize();
|
| + virtual void Layout();
|
| +
|
| + // views::DialogDelegate Methods:
|
| + virtual bool Accept();
|
| + virtual bool Cancel();
|
| + virtual views::View* GetContentsView();
|
| + virtual int GetDialogButtons() const;
|
| + virtual views::View* GetInitiallyFocusedView() const;
|
| + virtual std::wstring GetWindowTitle() const;
|
| + virtual bool IsDialogButtonEnabled(DialogButton button) const;
|
| + virtual bool IsModal() const { return false; }
|
| +
|
| + // views::ComboBox::Model methods.
|
| + virtual int GetItemCount(views::ComboBox* source);
|
| + virtual std::wstring GetItemAt(views::ComboBox* source, int index);
|
| +
|
| + // GetProfilesHelper::Delegate method.
|
| + virtual void OnGetProfilesDone(const std::vector<std::wstring>& profiles);
|
| +
|
| + private:
|
| + SelectProfileDialog();
|
| +
|
| + // Sets up all UI controls for the dialog.
|
| + void SetupControls();
|
| +
|
| + // UI controls.
|
| + views::ComboBox* profile_combobox_;
|
| + views::Label* select_profile_label_;
|
| +
|
| + std::vector<std::wstring> profiles_;
|
| + std::wstring profile_name_;
|
| +
|
| + // Helper instance that handles all task posting activities.
|
| + scoped_refptr<GetProfilesHelper> helper_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(SelectProfileDialog);
|
| +};
|
| +
|
| +#endif // CHROME_BROWSER_VIEWS_SELECT_PROFILE_DIALOG_H_
|
|
|
| Property changes on: chrome\browser\views\select_profile_dialog.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|