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_GTK_IMPORTER_IMPORT_LOCK_DIALOG_GTK_H_
6#define CHROME_BROWSER_UI_GTK_IMPORTER_IMPORT_LOCK_DIALOG_GTK_H_
7#pragma once
8
9#include "base/basictypes.h"
10#include "base/memory/ref_counted.h"
11#include "ui/base/gtk/gtk_signal.h"
12
13class ImporterHost;
14
15typedef struct _GtkWidget GtkWidget;
16typedef struct _GtkWindow GtkWindow;
17
18// ImportLockDialogGtk presents the dialog which asks the user to shut down
19// Firefox before starting the profile import.
20class ImportLockDialogGtk {
21 public:
22  static void Show(GtkWindow* parent, ImporterHost* importer_host);
23
24 private:
25  ImportLockDialogGtk(GtkWindow* parent, ImporterHost* importer_host);
26  ~ImportLockDialogGtk();
27
28  CHROMEGTK_CALLBACK_1(ImportLockDialogGtk, void, OnResponse, int);
29
30  // Import lock dialog.
31  GtkWidget* dialog_;
32
33  // Utility class that does the actual import.
34  scoped_refptr<ImporterHost> importer_host_;
35
36  DISALLOW_COPY_AND_ASSIGN(ImportLockDialogGtk);
37};
38
39#endif  // CHROME_BROWSER_UI_GTK_IMPORTER_IMPORT_LOCK_DIALOG_GTK_H_
40