summaryrefslogtreecommitdiffstats
path: root/views
diff options
context:
space:
mode:
authortfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-20 00:43:17 +0000
committertfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-20 00:43:17 +0000
commit4cad742a03d30387a9ac9886b54671728b7664c4 (patch)
tree6cea5001249ae90bfb59a446c2d7aeec896219ad /views
parent08b043736c1b650ab171178696fdcdd055525b5c (diff)
downloadchromium_src-4cad742a03d30387a9ac9886b54671728b7664c4.zip
chromium_src-4cad742a03d30387a9ac9886b54671728b7664c4.tar.gz
chromium_src-4cad742a03d30387a9ac9886b54671728b7664c4.tar.bz2
views: Change MenuItemView API to string16.
BUG=68267 R=sky@chromium.org Review URL: http://codereview.chromium.org/8352015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106421 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views')
-rw-r--r--views/controls/combobox/native_combobox_views.cc3
-rw-r--r--views/controls/menu/menu_item_view.cc61
-rw-r--r--views/controls/menu/menu_item_view.h43
-rw-r--r--views/controls/menu/native_menu_views.cc2
4 files changed, 66 insertions, 43 deletions
diff --git a/views/controls/combobox/native_combobox_views.cc b/views/controls/combobox/native_combobox_views.cc
index e1f436d..44c6838 100644
--- a/views/controls/combobox/native_combobox_views.cc
+++ b/views/controls/combobox/native_combobox_views.cc
@@ -177,8 +177,7 @@ void NativeComboboxViews::UpdateFromModel() {
// text is displayed correctly in right-to-left UIs.
base::i18n::AdjustStringForLocaleDirection(&text);
- menu->AppendMenuItem(i + kFirstMenuItemId, UTF16ToWideHack(text),
- MenuItemView::NORMAL);
+ menu->AppendMenuItem(i + kFirstMenuItemId, text, MenuItemView::NORMAL);
max_width = std::max(max_width, font.GetStringWidth(text));
}
diff --git a/views/controls/menu/menu_item_view.cc b/views/controls/menu/menu_item_view.cc
index 67674fc..fec96ab 100644
--- a/views/controls/menu/menu_item_view.cc
+++ b/views/controls/menu/menu_item_view.cc
@@ -35,8 +35,7 @@ class EmptyMenuMenuItem : public MenuItemView {
: MenuItemView(parent, 0, EMPTY) {
// Set this so that we're not identified as a normal menu item.
set_id(kEmptyMenuItemViewID);
- SetTitle(UTF16ToWide(
- l10n_util::GetStringUTF16(IDS_APP_MENU_EMPTY_SUBMENU)));
+ SetTitle(l10n_util::GetStringUTF16(IDS_APP_MENU_EMPTY_SUBMENU));
SetEnabled(false);
}
@@ -191,7 +190,7 @@ void MenuItemView::Cancel() {
MenuItemView* MenuItemView::AddMenuItemAt(int index,
int item_id,
- const std::wstring& label,
+ const string16& label,
const SkBitmap& icon,
Type type) {
DCHECK_NE(type, EMPTY);
@@ -205,7 +204,7 @@ MenuItemView* MenuItemView::AddMenuItemAt(int index,
}
MenuItemView* item = new MenuItemView(this, item_id, type);
if (label.empty() && GetDelegate())
- item->SetTitle(UTF16ToWideHack(GetDelegate()->GetLabel(item_id)));
+ item->SetTitle(GetDelegate()->GetLabel(item_id));
else
item->SetTitle(label);
item->SetIcon(icon);
@@ -230,26 +229,62 @@ void MenuItemView::RemoveMenuItemAt(int index) {
removed_items_.push_back(item);
}
+MenuItemView* MenuItemView::AppendMenuItem(int item_id,
+ const string16& label,
+ Type type) {
+ return AppendMenuItemImpl(item_id, label, SkBitmap(), type);
+}
+
+MenuItemView* MenuItemView::AppendSubMenu(int item_id,
+ const string16& label) {
+ return AppendMenuItemImpl(item_id, label, SkBitmap(), SUBMENU);
+}
+
+MenuItemView* MenuItemView::AppendSubMenuWithIcon(int item_id,
+ const string16& label,
+ const SkBitmap& icon) {
+ return AppendMenuItemImpl(item_id, label, icon, SUBMENU);
+}
+
+MenuItemView* MenuItemView::AppendMenuItemWithLabel(int item_id,
+ const string16& label) {
+ return AppendMenuItem(item_id, label, NORMAL);
+}
+
+MenuItemView* MenuItemView::AppendDelegateMenuItem(int item_id) {
+ return AppendMenuItem(item_id, string16(), NORMAL);
+}
+
+void MenuItemView::AppendSeparator() {
+ AppendMenuItemImpl(0, string16(), SkBitmap(), SEPARATOR);
+}
+
+MenuItemView* MenuItemView::AppendMenuItemWithIcon(int item_id,
+ const string16& label,
+ const SkBitmap& icon) {
+ return AppendMenuItemImpl(item_id, label, icon, NORMAL);
+}
+
MenuItemView* MenuItemView::AppendMenuItemFromModel(ui::MenuModel* model,
int index,
int id) {
SkBitmap icon;
- std::wstring label;
+ string16 label;
MenuItemView::Type type;
ui::MenuModel::ItemType menu_type = model->GetTypeAt(index);
switch (menu_type) {
case ui::MenuModel::TYPE_COMMAND:
model->GetIconAt(index, &icon);
type = MenuItemView::NORMAL;
- label = UTF16ToWide(model->GetLabelAt(index));
+ label = model->GetLabelAt(index);
break;
case ui::MenuModel::TYPE_CHECK:
type = MenuItemView::CHECKBOX;
- label = UTF16ToWide(model->GetLabelAt(index));
+ label = model->GetLabelAt(index);
break;
case ui::MenuModel::TYPE_RADIO:
type = MenuItemView::RADIO;
- label = UTF16ToWide(model->GetLabelAt(index));
+ label = model->GetLabelAt(index);
break;
case ui::MenuModel::TYPE_SEPARATOR:
type = MenuItemView::SEPARATOR;
@@ -257,7 +292,7 @@ MenuItemView* MenuItemView::AppendMenuItemFromModel(ui::MenuModel* model,
case ui::MenuModel::TYPE_SUBMENU:
model->GetIconAt(index, &icon);
type = MenuItemView::SUBMENU;
- label = UTF16ToWide(model->GetLabelAt(index));
+ label = model->GetLabelAt(index);
break;
default:
NOTREACHED();
@@ -269,7 +304,7 @@ MenuItemView* MenuItemView::AppendMenuItemFromModel(ui::MenuModel* model,
}
MenuItemView* MenuItemView::AppendMenuItemImpl(int item_id,
- const std::wstring& label,
+ const string16& label,
const SkBitmap& icon,
Type type) {
const int index = submenu_ ? submenu_->child_count() : 0;
@@ -290,8 +325,8 @@ SubmenuView* MenuItemView::GetSubmenu() const {
return submenu_;
}
-void MenuItemView::SetTitle(const std::wstring& title) {
- title_ = WideToUTF16Hack(title);
+void MenuItemView::SetTitle(const string16& title) {
+ title_ = title;
accessible_name_ = GetAccessibleNameForMenuItem(title_, GetAcceleratorText());
pref_size_.SetSize(0, 0); // Triggers preferred size recalculation.
}
@@ -498,7 +533,7 @@ void MenuItemView::UpdateMenuPartSizes(bool has_icons) {
label_start_ += config.gutter_width + config.gutter_to_label;
MenuItemView menu_item(NULL);
- menu_item.SetTitle(L"blah"); // Text doesn't matter here.
+ menu_item.SetTitle(ASCIIToUTF16("blah")); // Text doesn't matter here.
pref_menu_height_ = menu_item.GetPreferredSize().height();
}
diff --git a/views/controls/menu/menu_item_view.h b/views/controls/menu/menu_item_view.h
index bb8add9..68d35ea 100644
--- a/views/controls/menu/menu_item_view.h
+++ b/views/controls/menu/menu_item_view.h
@@ -9,11 +9,14 @@
#include <string>
#include <vector>
+#include "build/build_config.h"
+
#if defined(OS_WIN)
#include <windows.h>
#endif
#include "base/logging.h"
+#include "base/string16.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "views/view.h"
@@ -131,7 +134,7 @@ class VIEWS_EXPORT MenuItemView : public View {
// called after adding menu items if the menu may be active.
MenuItemView* AddMenuItemAt(int index,
int item_id,
- const std::wstring& label,
+ const string16& label,
const SkBitmap& icon,
Type type);
@@ -149,52 +152,38 @@ class VIEWS_EXPORT MenuItemView : public View {
// label The text label shown.
// type The type of item.
MenuItemView* AppendMenuItem(int item_id,
- const std::wstring& label,
- Type type) {
- return AppendMenuItemImpl(item_id, label, SkBitmap(), type);
- }
+ const string16& label,
+ Type type);
// Append a submenu to this menu.
// The returned pointer is owned by this menu.
MenuItemView* AppendSubMenu(int item_id,
- const std::wstring& label) {
- return AppendMenuItemImpl(item_id, label, SkBitmap(), SUBMENU);
- }
+ const string16& label);
// Append a submenu with an icon to this menu.
// The returned pointer is owned by this menu.
MenuItemView* AppendSubMenuWithIcon(int item_id,
- const std::wstring& label,
- const SkBitmap& icon) {
- return AppendMenuItemImpl(item_id, label, icon, SUBMENU);
- }
+ const string16& label,
+ const SkBitmap& icon);
// This is a convenience for standard text label menu items where the label
// is provided with this call.
MenuItemView* AppendMenuItemWithLabel(int item_id,
- const std::wstring& label) {
- return AppendMenuItem(item_id, label, NORMAL);
- }
+ const string16& label);
// This is a convenience for text label menu items where the label is
// provided by the delegate.
- MenuItemView* AppendDelegateMenuItem(int item_id) {
- return AppendMenuItem(item_id, std::wstring(), NORMAL);
- }
+ MenuItemView* AppendDelegateMenuItem(int item_id);
// Adds a separator to this menu
- void AppendSeparator() {
- AppendMenuItemImpl(0, std::wstring(), SkBitmap(), SEPARATOR);
- }
+ void AppendSeparator();
// Appends a menu item with an icon. This is for the menu item which
// needs an icon. Calling this function forces the Menu class to draw
// the menu, instead of relying on Windows.
MenuItemView* AppendMenuItemWithIcon(int item_id,
- const std::wstring& label,
- const SkBitmap& icon) {
- return AppendMenuItemImpl(item_id, label, icon, NORMAL);
- }
+ const string16& label,
+ const SkBitmap& icon);
// Creates a menu item for the specified entry in the model and appends it as
// a child. |index| should be offset by GetFirstItemIndex() before calling
@@ -205,7 +194,7 @@ class VIEWS_EXPORT MenuItemView : public View {
// All the AppendXXX methods funnel into this.
MenuItemView* AppendMenuItemImpl(int item_id,
- const std::wstring& label,
+ const string16& label,
const SkBitmap& icon,
Type type);
@@ -223,7 +212,7 @@ class VIEWS_EXPORT MenuItemView : public View {
MenuItemView* GetParentMenuItem() const { return parent_menu_item_; }
// Sets/Gets the title.
- void SetTitle(const std::wstring& title);
+ void SetTitle(const string16& title);
const string16& title() const { return title_; }
// Returns the type of this menu.
diff --git a/views/controls/menu/native_menu_views.cc b/views/controls/menu/native_menu_views.cc
index 9fe5ee8..10d3ccf 100644
--- a/views/controls/menu/native_menu_views.cc
+++ b/views/controls/menu/native_menu_views.cc
@@ -144,7 +144,7 @@ void NativeMenuViews::UpdateMenuFromModel(SubmenuView* menu,
mitem->SetVisible(model->IsVisibleAt(index));
mitem->SetEnabled(model->IsEnabledAt(index));
if (model->IsItemDynamicAt(index)) {
- mitem->SetTitle(UTF16ToWide(model->GetLabelAt(index)));
+ mitem->SetTitle(model->GetLabelAt(index));
}
SkBitmap icon;