| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "chrome/browser/ui/simple_message_box.h" | 5 #include "chrome/browser/ui/simple_message_box.h" | 
| 6 | 6 | 
| 7 #import <Cocoa/Cocoa.h> | 7 #import <Cocoa/Cocoa.h> | 
| 8 | 8 | 
| 9 #include "base/strings/sys_string_conversions.h" | 9 #include "base/strings/sys_string_conversions.h" | 
|  | 10 #include "chrome/browser/ui/simple_message_box_internal.h" | 
| 10 #include "chrome/grit/generated_resources.h" | 11 #include "chrome/grit/generated_resources.h" | 
| 11 #include "components/startup_metric_utils/startup_metric_utils.h" | 12 #include "components/startup_metric_utils/startup_metric_utils.h" | 
| 12 #include "ui/base/l10n/l10n_util_mac.h" | 13 #include "ui/base/l10n/l10n_util_mac.h" | 
| 13 | 14 | 
| 14 namespace chrome { | 15 namespace chrome { | 
| 15 | 16 | 
| 16 MessageBoxResult ShowMessageBox(gfx::NativeWindow parent, | 17 MessageBoxResult ShowMessageBox(gfx::NativeWindow parent, | 
| 17                                 const base::string16& title, | 18                                 const base::string16& title, | 
| 18                                 const base::string16& message, | 19                                 const base::string16& message, | 
| 19                                 MessageBoxType type) { | 20                                 MessageBoxType type) { | 
| 20   if (type == MESSAGE_BOX_TYPE_OK_CANCEL) | 21   if (type == MESSAGE_BOX_TYPE_OK_CANCEL) | 
| 21     NOTIMPLEMENTED(); | 22     NOTIMPLEMENTED(); | 
| 22 | 23 | 
| 23   startup_metric_utils::SetNonBrowserUIDisplayed(); | 24   startup_metric_utils::SetNonBrowserUIDisplayed(); | 
|  | 25   if (internal::g_should_skip_message_box_for_test) | 
|  | 26     return MESSAGE_BOX_RESULT_YES; | 
| 24 | 27 | 
| 25   // Ignore the title; it's the window title on other platforms and ignorable. | 28   // Ignore the title; it's the window title on other platforms and ignorable. | 
| 26   NSAlert* alert = [[[NSAlert alloc] init] autorelease]; | 29   NSAlert* alert = [[[NSAlert alloc] init] autorelease]; | 
| 27   [alert setMessageText:base::SysUTF16ToNSString(message)]; | 30   [alert setMessageText:base::SysUTF16ToNSString(message)]; | 
| 28   NSAlertStyle style = (type == MESSAGE_BOX_TYPE_INFORMATION) ? | 31   NSAlertStyle style = (type == MESSAGE_BOX_TYPE_INFORMATION) ? | 
| 29       NSInformationalAlertStyle : NSWarningAlertStyle; | 32       NSInformationalAlertStyle : NSWarningAlertStyle; | 
| 30   [alert setAlertStyle:style]; | 33   [alert setAlertStyle:style]; | 
| 31   if (type == MESSAGE_BOX_TYPE_QUESTION) { | 34   if (type == MESSAGE_BOX_TYPE_QUESTION) { | 
| 32     [alert addButtonWithTitle: | 35     [alert addButtonWithTitle: | 
| 33         l10n_util::GetNSString(IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL)]; | 36         l10n_util::GetNSString(IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL)]; | 
| 34     [alert addButtonWithTitle: | 37     [alert addButtonWithTitle: | 
| 35         l10n_util::GetNSString(IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL)]; | 38         l10n_util::GetNSString(IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL)]; | 
| 36   } else { | 39   } else { | 
| 37     [alert addButtonWithTitle:l10n_util::GetNSString(IDS_OK)]; | 40     [alert addButtonWithTitle:l10n_util::GetNSString(IDS_OK)]; | 
| 38   } | 41   } | 
| 39   NSInteger result = [alert runModal]; | 42   NSInteger result = [alert runModal]; | 
| 40   return (result == NSAlertSecondButtonReturn) ? | 43   return (result == NSAlertSecondButtonReturn) ? | 
| 41       MESSAGE_BOX_RESULT_NO : MESSAGE_BOX_RESULT_YES; | 44       MESSAGE_BOX_RESULT_NO : MESSAGE_BOX_RESULT_YES; | 
| 42 } | 45 } | 
| 43 | 46 | 
| 44 }  // namespace chrome | 47 }  // namespace chrome | 
| OLD | NEW | 
|---|