From 41e5a1d2f5d0ebf543f18ff8be53e8dafc3beebc Mon Sep 17 00:00:00 2001 From: "tfarina@chromium.org" Date: Tue, 22 Mar 2011 17:26:00 +0000 Subject: views: Move MessageBoxView into the namespace views. BUG=None TEST=None R=sky@chromium.org Review URL: http://codereview.chromium.org/6715020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78994 0039d316-1c4b-4281-b951-d872f2087c98 --- views/controls/message_box_view.cc | 55 ++++++++++++++++++----------------- views/controls/message_box_view.h | 30 ++++++++++--------- views/examples/message_box_example.cc | 3 +- views/examples/message_box_example.h | 7 +++-- 4 files changed, 52 insertions(+), 43 deletions(-) (limited to 'views') diff --git a/views/controls/message_box_view.cc b/views/controls/message_box_view.cc index d1a7864..32892c1 100644 --- a/views/controls/message_box_view.cc +++ b/views/controls/message_box_view.cc @@ -11,6 +11,9 @@ #include "ui/base/clipboard/scoped_clipboard_writer.h" #include "ui/base/message_box_flags.h" #include "views/controls/button/checkbox.h" +#include "views/controls/image_view.h" +#include "views/controls/label.h" +#include "views/controls/textfield/textfield.h" #include "views/layout/grid_layout.h" #include "views/layout/layout_constants.h" #include "views/views_delegate.h" @@ -18,6 +21,8 @@ static const int kDefaultMessageWidth = 320; +namespace views { + /////////////////////////////////////////////////////////////////////////////// // MessageBoxView, public: @@ -25,7 +30,7 @@ MessageBoxView::MessageBoxView(int dialog_flags, const std::wstring& message, const std::wstring& default_prompt, int message_width) - : message_label_(new views::Label(message)), + : message_label_(new Label(message)), prompt_field_(NULL), icon_(NULL), checkbox_(NULL), @@ -37,7 +42,7 @@ MessageBoxView::MessageBoxView(int dialog_flags, MessageBoxView::MessageBoxView(int dialog_flags, const std::wstring& message, const std::wstring& default_prompt) - : message_label_(new views::Label(message)), + : message_label_(new Label(message)), prompt_field_(NULL), icon_(NULL), checkbox_(NULL), @@ -60,7 +65,7 @@ bool MessageBoxView::IsCheckBoxSelected() { void MessageBoxView::SetIcon(const SkBitmap& icon) { if (!icon_) - icon_ = new views::ImageView(); + icon_ = new ImageView(); icon_->SetImage(icon); icon_->SetBounds(0, 0, icon.width(), icon.height()); ResetLayoutManager(); @@ -68,7 +73,7 @@ void MessageBoxView::SetIcon(const SkBitmap& icon) { void MessageBoxView::SetCheckBoxLabel(const std::wstring& label) { if (!checkbox_) - checkbox_ = new views::Checkbox(label); + checkbox_ = new Checkbox(label); else checkbox_->SetLabel(label); ResetLayoutManager(); @@ -81,11 +86,11 @@ void MessageBoxView::SetCheckBoxSelected(bool selected) { } /////////////////////////////////////////////////////////////////////////////// -// MessageBoxView, views::View overrides: +// MessageBoxView, View overrides: void MessageBoxView::ViewHierarchyChanged(bool is_add, - views::View* parent, - views::View* child) { + View* parent, + View* child) { if (child == this && is_add) { if (prompt_field_) prompt_field_->SelectAll(); @@ -93,7 +98,7 @@ void MessageBoxView::ViewHierarchyChanged(bool is_add, } bool MessageBoxView::AcceleratorPressed( - const views::Accelerator& accelerator) { + const Accelerator& accelerator) { // We only accepts Ctrl-C. DCHECK(accelerator.GetKeyCode() == 'C' && accelerator.IsCtrlDown()); @@ -101,11 +106,10 @@ bool MessageBoxView::AcceleratorPressed( if (prompt_field_ && prompt_field_->HasFocus()) return false; - if (!views::ViewsDelegate::views_delegate) + if (!ViewsDelegate::views_delegate) return false; - ui::Clipboard* clipboard = - views::ViewsDelegate::views_delegate->GetClipboard(); + ui::Clipboard* clipboard = ViewsDelegate::views_delegate->GetClipboard(); if (!clipboard) return false; @@ -126,22 +130,22 @@ void MessageBoxView::Init(int dialog_flags, // with strong directionality. base::i18n::TextDirection direction = base::i18n::GetFirstStrongCharacterDirection(message_label_->GetText()); - views::Label::Alignment alignment; + Label::Alignment alignment; if (direction == base::i18n::RIGHT_TO_LEFT) - alignment = views::Label::ALIGN_RIGHT; + alignment = Label::ALIGN_RIGHT; else - alignment = views::Label::ALIGN_LEFT; + alignment = Label::ALIGN_LEFT; // In addition, we should set the RTL alignment mode as // AUTO_DETECT_ALIGNMENT so that the alignment will not be flipped around // in RTL locales. - message_label_->set_rtl_alignment_mode(views::Label::AUTO_DETECT_ALIGNMENT); + message_label_->set_rtl_alignment_mode(Label::AUTO_DETECT_ALIGNMENT); message_label_->SetHorizontalAlignment(alignment); } else { - message_label_->SetHorizontalAlignment(views::Label::ALIGN_LEFT); + message_label_->SetHorizontalAlignment(Label::ALIGN_LEFT); } if (dialog_flags & ui::MessageBoxFlags::kFlagHasPromptField) { - prompt_field_ = new views::Textfield; + prompt_field_ = new Textfield; prompt_field_->SetText(WideToUTF16Hack(default_prompt)); } @@ -149,9 +153,6 @@ void MessageBoxView::Init(int dialog_flags, } void MessageBoxView::ResetLayoutManager() { - using views::GridLayout; - using views::ColumnSet; - // Initialize the Grid Layout Manager used for this dialog box. GridLayout* layout = GridLayout::CreatePanel(this); SetLayoutManager(layout); @@ -168,7 +169,7 @@ void MessageBoxView::ResetLayoutManager() { column_set->AddColumn(GridLayout::LEADING, GridLayout::LEADING, 0, GridLayout::FIXED, icon_size.width(), icon_size.height()); - column_set->AddPaddingColumn(0, views::kUnrelatedControlHorizontalSpacing); + column_set->AddPaddingColumn(0, kUnrelatedControlHorizontalSpacing); } column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, GridLayout::FIXED, message_width_, 0); @@ -179,7 +180,7 @@ void MessageBoxView::ResetLayoutManager() { column_set = layout->AddColumnSet(textfield_column_view_set_id); if (icon_) { column_set->AddPaddingColumn( - 0, icon_size.width() + views::kUnrelatedControlHorizontalSpacing); + 0, icon_size.width() + kUnrelatedControlHorizontalSpacing); } column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, GridLayout::USE_PREF, 0, 0); @@ -191,7 +192,7 @@ void MessageBoxView::ResetLayoutManager() { column_set = layout->AddColumnSet(checkbox_column_view_set_id); if (icon_) { column_set->AddPaddingColumn( - 0, icon_size.width() + views::kUnrelatedControlHorizontalSpacing); + 0, icon_size.width() + kUnrelatedControlHorizontalSpacing); } column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, GridLayout::USE_PREF, 0, 0); @@ -204,16 +205,18 @@ void MessageBoxView::ResetLayoutManager() { layout->AddView(message_label_); if (prompt_field_) { - layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing); + layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); layout->StartRow(0, textfield_column_view_set_id); layout->AddView(prompt_field_); } if (checkbox_) { - layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing); + layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); layout->StartRow(0, checkbox_column_view_set_id); layout->AddView(checkbox_); } - layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing); + layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); } + +} // namespace views diff --git a/views/controls/message_box_view.h b/views/controls/message_box_view.h index 811ad29..9734d17 100644 --- a/views/controls/message_box_view.h +++ b/views/controls/message_box_view.h @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -9,19 +9,19 @@ #include #include "base/task.h" -#include "views/controls/image_view.h" -#include "views/controls/label.h" -#include "views/controls/textfield/textfield.h" #include "views/view.h" namespace views { + class Checkbox; -} +class ImageView; +class Label; +class Textfield; // This class displays the contents of a message box. It is intended for use // within a constrained window, and has options for a message, prompt, OK // and Cancel buttons. -class MessageBoxView : public views::View { +class MessageBoxView : public View { public: MessageBoxView(int dialog_flags, const std::wstring& message, @@ -57,13 +57,13 @@ class MessageBoxView : public views::View { void SetCheckBoxSelected(bool selected); protected: - // Layout and Painting functions. + // View: virtual void ViewHierarchyChanged(bool is_add, views::View* parent, - views::View* child); - + views::View* child) OVERRIDE; // Handles Ctrl-C and writes the message in the system clipboard. - virtual bool AcceleratorPressed(const views::Accelerator& accelerator); + virtual bool AcceleratorPressed( + const views::Accelerator& accelerator) OVERRIDE; private: // Sets up the layout manager and initializes the prompt field. This should @@ -75,16 +75,16 @@ class MessageBoxView : public views::View { void ResetLayoutManager(); // Message for the message box. - views::Label* message_label_; + Label* message_label_; // Input text field for the message box. - views::Textfield* prompt_field_; + Textfield* prompt_field_; // Icon displayed in the upper left corner of the message box. - views::ImageView* icon_; + ImageView* icon_; // Checkbox for the message box. - views::Checkbox* checkbox_; + Checkbox* checkbox_; // Maximum width of the message label. int message_width_; @@ -94,4 +94,6 @@ class MessageBoxView : public views::View { DISALLOW_COPY_AND_ASSIGN(MessageBoxView); }; +} // namespace views + #endif // VIEWS_CONTROLS_MESSAGE_BOX_VIEW_H_ diff --git a/views/examples/message_box_example.cc b/views/examples/message_box_example.cc index 0fa3777..f6e8ddb 100644 --- a/views/examples/message_box_example.cc +++ b/views/examples/message_box_example.cc @@ -4,6 +4,7 @@ #include "views/examples/message_box_example.h" +#include "views/controls/message_box_view.h" #include "views/layout/grid_layout.h" #include "views/view.h" @@ -21,7 +22,7 @@ std::wstring MessageBoxExample::GetExampleTitle() { } void MessageBoxExample::CreateExampleView(views::View* container) { - message_box_view_ = new MessageBoxView( + message_box_view_ = new views::MessageBoxView( 0, L"Message Box Message", L"Default Prompt"); status_ = new views::TextButton(this, L"Show Status"); toggle_ = new views::TextButton(this, L"Toggle Checkbox"); diff --git a/views/examples/message_box_example.h b/views/examples/message_box_example.h index a8ecbb9..c43da02 100644 --- a/views/examples/message_box_example.h +++ b/views/examples/message_box_example.h @@ -11,9 +11,12 @@ #include "base/basictypes.h" #include "base/compiler_specific.h" #include "views/controls/button/text_button.h" -#include "views/controls/message_box_view.h" #include "views/examples/example_base.h" +namespace views { +class MessageBoxView; +} + namespace examples { // A MessageBoxView example. This tests some of checkbox features as well. @@ -33,7 +36,7 @@ class MessageBoxExample : public ExampleBase, const views::Event& event) OVERRIDE; // The MessageBoxView to be tested. - MessageBoxView* message_box_view_; + views::MessageBoxView* message_box_view_; // Control buttons to show the status and toggle checkbox in the // message box. -- cgit v1.1