Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(134)

Unified Diff: ui/views/controls/menu/native_menu_win.cc

Issue 2445513002: Remove stl_util's deletion function use from ui/views/. (Closed)
Patch Set: drop Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/views/controls/menu/native_menu_win.h ('k') | ui/views/layout/grid_layout.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/controls/menu/native_menu_win.cc
diff --git a/ui/views/controls/menu/native_menu_win.cc b/ui/views/controls/menu/native_menu_win.cc
index b737cbf974a5c61d80398df8e86cf257dbff78a6..0c81dd6978141d0ac34bda590e8b494c26c05ee1 100644
--- a/ui/views/controls/menu/native_menu_win.cc
+++ b/ui/views/controls/menu/native_menu_win.cc
@@ -5,7 +5,7 @@
#include "ui/views/controls/menu/native_menu_win.h"
#include "base/logging.h"
-#include "base/stl_util.h"
+#include "base/memory/ptr_util.h"
#include "base/strings/string_util.h"
#include "ui/base/accelerators/accelerator.h"
#include "ui/base/l10n/l10n_util.h"
@@ -45,19 +45,18 @@ static NativeMenuWin* GetNativeMenuWinFromHMENU(HMENU hmenu) {
NativeMenuWin::NativeMenuWin(ui::MenuModel* model, HWND system_menu_for)
: model_(model),
- menu_(NULL),
- owner_draw_(l10n_util::NeedOverrideDefaultUIFont(NULL, NULL) &&
+ menu_(nullptr),
+ owner_draw_(l10n_util::NeedOverrideDefaultUIFont(nullptr, nullptr) &&
!system_menu_for),
system_menu_for_(system_menu_for),
first_item_index_(0),
- parent_(NULL),
- destroyed_flag_(NULL) {
-}
+ parent_(nullptr),
+ destroyed_flag_(nullptr) {}
NativeMenuWin::~NativeMenuWin() {
if (destroyed_flag_)
*destroyed_flag_ = true;
- base::STLDeleteContainerPointers(items_.begin(), items_.end());
+ items_.clear();
DestroyMenu(menu_);
}
@@ -84,7 +83,7 @@ void NativeMenuWin::UpdateStates() {
// A depth-first walk of the menu items, updating states.
int model_index = 0;
std::vector<ItemData*>::const_iterator it;
- for (it = items_.begin(); it != items_.end(); ++it, ++model_index) {
+ for (auto it = items_.begin(); it != items_.end(); ++it, ++model_index) {
int menu_index = model_index + first_item_index_;
SetMenuItemState(menu_index, model_->IsEnabledAt(model_index),
model_->IsItemCheckedAt(model_index), false);
@@ -119,12 +118,12 @@ void NativeMenuWin::AddMenuItemAt(int menu_index, int model_index) {
else
mii.fType = MFT_OWNERDRAW;
- ItemData* item_data = new ItemData;
+ std::unique_ptr<ItemData> item_data = base::MakeUnique<ItemData>();
item_data->label = base::string16();
ui::MenuModel::ItemType type = model_->GetTypeAt(model_index);
if (type == ui::MenuModel::TYPE_SUBMENU) {
- item_data->submenu.reset(
- new NativeMenuWin(model_->GetSubmenuModelAt(model_index), nullptr));
+ item_data->submenu = base::MakeUnique<NativeMenuWin>(
+ model_->GetSubmenuModelAt(model_index), nullptr);
item_data->submenu->Rebuild(nullptr);
mii.fMask |= MIIM_SUBMENU;
mii.hSubMenu = item_data->submenu->menu_;
@@ -136,8 +135,8 @@ void NativeMenuWin::AddMenuItemAt(int menu_index, int model_index) {
}
item_data->native_menu_win = this;
item_data->model_index = model_index;
- items_.insert(items_.begin() + model_index, item_data);
- mii.dwItemData = reinterpret_cast<ULONG_PTR>(item_data);
+ mii.dwItemData = reinterpret_cast<ULONG_PTR>(item_data.get());
+ items_.insert(items_.begin() + model_index, std::move(item_data));
UpdateMenuItemInfoForString(&mii, model_index,
model_->GetLabelAt(model_index));
InsertMenuItem(menu_, menu_index, TRUE, &mii);
@@ -150,7 +149,7 @@ void NativeMenuWin::AddSeparatorItemAt(int menu_index, int model_index) {
mii.fType = MFT_SEPARATOR;
// Insert a dummy entry into our label list so we can index directly into it
// using item indices if need be.
- items_.insert(items_.begin() + model_index, new ItemData);
+ items_.insert(items_.begin() + model_index, base::MakeUnique<ItemData>());
InsertMenuItem(menu_, menu_index, TRUE, &mii);
}
« no previous file with comments | « ui/views/controls/menu/native_menu_win.h ('k') | ui/views/layout/grid_layout.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698