Home | History | Annotate | Download | only in views
      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_VIEWS_UPDATE_RECOMMENDED_MESSAGE_BOX_H_
      6 #define CHROME_BROWSER_UI_VIEWS_UPDATE_RECOMMENDED_MESSAGE_BOX_H_
      7 #pragma once
      8 
      9 #include "base/basictypes.h"
     10 #include "ui/gfx/native_widget_types.h"
     11 #include "views/window/dialog_delegate.h"
     12 
     13 namespace views {
     14 class MessageBoxView;
     15 }
     16 
     17 // A dialog box that tells the user that an update is recommended in order for
     18 // the latest version to be put to use.
     19 class UpdateRecommendedMessageBox : public views::DialogDelegate {
     20  public:
     21   // This box is modal to |parent_window|.
     22   static void ShowMessageBox(gfx::NativeWindow parent_window);
     23 
     24   // Overridden from views::DialogDelegate:
     25   virtual bool Accept() OVERRIDE;
     26 
     27  protected:
     28   // Overridden from views::DialogDelegate:
     29   virtual int GetDialogButtons() const OVERRIDE;
     30   virtual std::wstring GetDialogButtonLabel(
     31       MessageBoxFlags::DialogButton button) const OVERRIDE;
     32 
     33   // Overridden from views::WindowDelegate:
     34   virtual bool ShouldShowWindowTitle() const OVERRIDE;
     35   virtual std::wstring GetWindowTitle() const OVERRIDE;
     36   virtual void DeleteDelegate() OVERRIDE;
     37   virtual bool IsModal() const OVERRIDE;
     38   virtual views::View* GetContentsView() OVERRIDE;
     39 
     40  private:
     41   explicit UpdateRecommendedMessageBox(gfx::NativeWindow parent_window);
     42   virtual ~UpdateRecommendedMessageBox();
     43 
     44   views::MessageBoxView* message_box_view_;
     45 
     46   DISALLOW_COPY_AND_ASSIGN(UpdateRecommendedMessageBox);
     47 };
     48 
     49 #endif  // CHROME_BROWSER_UI_VIEWS_UPDATE_RECOMMENDED_MESSAGE_BOX_H_
     50