Chromium Code Reviews| Index: chrome/browser/ui/views/first_run_dialog.h |
| diff --git a/chrome/browser/ui/views/first_run_dialog.h b/chrome/browser/ui/views/first_run_dialog.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..ab5e9040a3ffa052ff2c23fe764e59e3612c60f6 |
| --- /dev/null |
| +++ b/chrome/browser/ui/views/first_run_dialog.h |
| @@ -0,0 +1,52 @@ |
| +// Copyright 2014 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_UI_VIEWS_FIRST_RUN_DIALOG_H_ |
|
sky
2014/01/15 21:36:11
Should we name this first_run_dialog_aurax11 as th
Elliot Glaysher
2014/01/15 22:01:40
There isn't anything conceptually x11-ish about it
sky
2014/01/16 00:29:39
True. My rationale for this request is two fold:
.
|
| +#define CHROME_BROWSER_UI_VIEWS_FIRST_RUN_DIALOG_H_ |
| + |
| +#include "base/message_loop/message_loop.h" |
| +#include "ui/views/controls/link_listener.h" |
| +#include "ui/views/window/dialog_delegate.h" |
| + |
| +class Profile; |
| + |
| +namespace views { |
| +class Checkbox; |
| +class Link; |
| +} |
| + |
| +class FirstRunDialog : public views::DialogDelegateView, |
| + public views::LinkListener, |
| + public base::MessageLoop::Dispatcher { |
|
sky
2014/01/15 21:36:11
Use MessagePumpDispatcher (MessageLoop::Dispatcher
Elliot Glaysher
2014/01/15 22:01:40
Done.
|
| + public: |
| + // Displays the first run UI for reporting opt-in, import data etc. |
| + // Returns true if the dialog was shown. |
| + static bool Show(Profile* profile); |
| + |
| + private: |
| + explicit FirstRunDialog(Profile* profile); |
| + virtual ~FirstRunDialog(); |
| + |
| + // views::DialogDelegate: |
| + virtual views::View* CreateExtraView() OVERRIDE; |
| + virtual void OnClosed() OVERRIDE; |
| + virtual bool Accept() OVERRIDE; |
| + virtual int GetDialogButtons() const OVERRIDE; |
| + |
| + // views::LinkListener: |
| + virtual void LinkClicked(views::Link* source, int event_flags) OVERRIDE; |
| + |
| + // Overridden from MessageLoop::Dispatcher: |
| + virtual bool Dispatch(const base::NativeEvent& event) OVERRIDE; |
| + |
| + Profile* profile_; |
| + views::Checkbox* make_default_; |
| + views::Checkbox* report_crashes_; |
| + |
| + // Set to false as soon as the user clicks a dialog button; this tells the |
| + // dispatcher we're done. |
| + bool should_show_dialog_; |
| +}; |
| + |
| +#endif // CHROME_BROWSER_UI_VIEWS_FIRST_RUN_DIALOG_H_ |