14a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch// Copyright (c) 2010 The Chromium Authors. All rights reserved.
24a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch// Use of this source code is governed by a BSD-style license that can be
34a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch// found in the LICENSE file.
44a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
54a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#ifndef CHROME_BROWSER_UI_VIEWS_INSTANT_CONFIRM_VIEW_H_
64a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#define CHROME_BROWSER_UI_VIEWS_INSTANT_CONFIRM_VIEW_H_
74a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#pragma once
84a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
94a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#include "views/controls/label.h"
104a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#include "views/controls/link.h"
114a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#include "views/view.h"
124a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#include "views/window/dialog_delegate.h"
134a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
144a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdochclass Profile;
154a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
164a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch// The view shown in the instant confirm dialog.
174a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdochclass InstantConfirmView : public views::View,
184a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch                           public views::DialogDelegate,
194a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch                           public views::LinkController {
204a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch public:
214a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  explicit InstantConfirmView(Profile* profile);
224a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
234a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  // DialogDelegate overrides:
244a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual bool Accept(bool window_closing);
254a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual bool Accept();
264a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual bool Cancel();
274a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual views::View* GetContentsView();
284a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual std::wstring GetWindowTitle() const;
294a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual gfx::Size GetPreferredSize();
304a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual bool IsModal() const;
314a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
324a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  // LinkController overrides:
334a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  virtual void LinkActivated(views::Link* source, int event_flags);
344a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
354a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch private:
364a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  Profile* profile_;
374a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
384a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch  DISALLOW_COPY_AND_ASSIGN(InstantConfirmView);
394a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch};
404a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch
414a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch#endif  // CHROME_BROWSER_UI_VIEWS_INSTANT_CONFIRM_VIEW_H_
42