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_SIMPLE_MESSAGE_BOX_H_ 6 #define CHROME_BROWSER_UI_SIMPLE_MESSAGE_BOX_H_ 7 8 #include "base/strings/string16.h" 9 #include "ui/gfx/native_widget_types.h" 10 11 namespace chrome { 12 13 enum MessageBoxResult { 14 MESSAGE_BOX_RESULT_NO = 0, // User chose NO or CANCEL. 15 MESSAGE_BOX_RESULT_YES = 1, // User chose YES or OK. 16 }; 17 18 enum MessageBoxType { 19 MESSAGE_BOX_TYPE_INFORMATION, // Shows an OK button. 20 MESSAGE_BOX_TYPE_WARNING, // Shows an OK button. 21 MESSAGE_BOX_TYPE_QUESTION, // Shows YES and NO buttons. 22 MESSAGE_BOX_TYPE_OK_CANCEL, // Shows OK and CANCEL buttons (Aura only). 23 }; 24 25 // Shows a dialog box with the given |title| and |message|. If |parent| is 26 // non-NULL, the box will be made modal to the |parent|, except on Mac, where it 27 // is always app-modal. 28 // 29 // NOTE: In general, you should avoid this since it's usually poor UI. 30 // We have a variety of other surfaces such as wrench menu notifications and 31 // infobars; consult the UI leads for a recommendation. 32 MessageBoxResult ShowMessageBox(gfx::NativeWindow parent, 33 const base::string16& title, 34 const base::string16& message, 35 MessageBoxType type); 36 37 // Shows a dialog box with the given |title| and |message|, and with two buttons 38 // labeled with |yes_text| and |no_text|. If |parent| is non-NULL, the box will 39 // be made modal to the |parent|. (Aura only.) 40 // 41 // NOTE: In general, you should avoid this since it's usually poor UI. 42 // We have a variety of other surfaces such as wrench menu notifications and 43 // infobars; consult the UI leads for a recommendation. 44 MessageBoxResult ShowMessageBoxWithButtonText(gfx::NativeWindow parent, 45 const base::string16& title, 46 const base::string16& message, 47 const base::string16& yes_text, 48 const base::string16& no_text); 49 50 } // namespace chrome 51 52 #endif // CHROME_BROWSER_UI_SIMPLE_MESSAGE_BOX_H_ 53