Home | History | Annotate | Download | only in gtk
      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_REPOST_FORM_WARNING_GTK_H_
      6 #define CHROME_BROWSER_UI_GTK_REPOST_FORM_WARNING_GTK_H_
      7 #pragma once
      8 
      9 #include <gtk/gtk.h>
     10 
     11 #include "base/memory/scoped_ptr.h"
     12 #include "chrome/browser/ui/gtk/constrained_window_gtk.h"
     13 #include "ui/base/gtk/gtk_signal.h"
     14 
     15 class RepostFormWarningController;
     16 
     17 // Displays a dialog that warns the user that they are about to resubmit
     18 // a form.
     19 // To display the dialog, allocate this object on the heap. It will open the
     20 // dialog from its constructor and then delete itself when the user dismisses
     21 // the dialog.
     22 class RepostFormWarningGtk : public ConstrainedDialogDelegate {
     23  public:
     24   RepostFormWarningGtk(GtkWindow* parent, TabContents* tab_contents);
     25 
     26   // ConstrainedDialogDelegate methods
     27   virtual GtkWidget* GetWidgetRoot();
     28   virtual GtkWidget* GetFocusWidget();
     29   virtual void DeleteDelegate();
     30 
     31  private:
     32   virtual ~RepostFormWarningGtk();
     33 
     34   // Callbacks
     35   CHROMEGTK_CALLBACK_0(RepostFormWarningGtk, void, OnRefresh);
     36   CHROMEGTK_CALLBACK_0(RepostFormWarningGtk, void, OnCancel);
     37 
     38   scoped_ptr<RepostFormWarningController> controller_;
     39 
     40   GtkWidget* dialog_;
     41   GtkWidget* ok_;
     42   GtkWidget* cancel_;
     43 
     44   DISALLOW_COPY_AND_ASSIGN(RepostFormWarningGtk);
     45 };
     46 
     47 #endif  // CHROME_BROWSER_UI_GTK_REPOST_FORM_WARNING_GTK_H_
     48