1// Copyright (c) 2012 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_TAB_MODAL_CONFIRM_DIALOG_H_
6#define CHROME_BROWSER_UI_TAB_MODAL_CONFIRM_DIALOG_H_
7
8#include "chrome/browser/ui/tab_modal_confirm_dialog_delegate.h"
9
10namespace content {
11class WebContents;
12}
13
14// Base class for the tab modal confirm dialog.
15class TabModalConfirmDialog : public TabModalConfirmDialogCloseDelegate {
16 public:
17  // Platform specific factory function. This function will automatically show
18  // the dialog.
19  static TabModalConfirmDialog* Create(TabModalConfirmDialogDelegate* delegate,
20                                       content::WebContents* web_contents);
21  // Accepts the dialog.
22  virtual void AcceptTabModalDialog() = 0;
23
24  // Cancels the dialog.
25  virtual void CancelTabModalDialog() = 0;
26
27  // TabModalConfirmDialogCloseDelegate:
28  // Closes the dialog.
29  virtual void CloseDialog() = 0;
30
31 protected:
32  virtual ~TabModalConfirmDialog() {}
33};
34
35#endif  // CHROME_BROWSER_UI_TAB_MODAL_CONFIRM_DIALOG_H_
36