OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/views/bookmarks/bookmark_menu_controller_views.h" | 5 #include "chrome/browser/ui/views/bookmarks/bookmark_menu_controller_views.h" |
6 | 6 |
7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/bookmarks/bookmark_model.h" | 9 #include "chrome/browser/bookmarks/bookmark_model.h" |
10 #include "chrome/browser/bookmarks/bookmark_node_data.h" | 10 #include "chrome/browser/bookmarks/bookmark_node_data.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "grit/ui_resources.h" | 23 #include "grit/ui_resources.h" |
24 #include "ui/base/dragdrop/os_exchange_data.h" | 24 #include "ui/base/dragdrop/os_exchange_data.h" |
25 #include "ui/base/resource/resource_bundle.h" | 25 #include "ui/base/resource/resource_bundle.h" |
26 #include "views/controls/button/menu_button.h" | 26 #include "views/controls/button/menu_button.h" |
27 #include "views/controls/menu/menu_runner.h" | 27 #include "views/controls/menu/menu_runner.h" |
28 #include "views/widget/widget.h" | 28 #include "views/widget/widget.h" |
29 | 29 |
30 using views::MenuItemView; | 30 using views::MenuItemView; |
31 | 31 |
32 BookmarkMenuController::BookmarkMenuController(Profile* profile, | 32 BookmarkMenuController::BookmarkMenuController(Profile* profile, |
33 PageNavigator* navigator, | 33 PageNavigator* page_navigator, |
34 views::Widget* parent, | 34 views::Widget* parent, |
35 const BookmarkNode* node, | 35 const BookmarkNode* node, |
36 int start_child_index) | 36 int start_child_index) |
37 : menu_delegate_(new BookmarkMenuDelegate(profile, navigator, parent, 1)), | 37 : menu_delegate_( |
| 38 new BookmarkMenuDelegate(profile, page_navigator, parent, 1)), |
38 node_(node), | 39 node_(node), |
39 observer_(NULL), | 40 observer_(NULL), |
40 for_drop_(false), | 41 for_drop_(false), |
41 bookmark_bar_(NULL) { | 42 bookmark_bar_(NULL) { |
42 menu_delegate_->Init(this, NULL, node, start_child_index, | 43 menu_delegate_->Init(this, NULL, node, start_child_index, |
43 BookmarkMenuDelegate::HIDE_OTHER_FOLDER); | 44 BookmarkMenuDelegate::HIDE_OTHER_FOLDER); |
44 menu_runner_.reset(new views::MenuRunner(menu_delegate_->menu())); | 45 menu_runner_.reset(new views::MenuRunner(menu_delegate_->menu())); |
45 } | 46 } |
46 | 47 |
47 void BookmarkMenuController::RunMenuAt(BookmarkBarView* bookmark_bar, | 48 void BookmarkMenuController::RunMenuAt(BookmarkBarView* bookmark_bar, |
(...skipping 23 matching lines...) Expand all Loading... |
71 } | 72 } |
72 | 73 |
73 MenuItemView* BookmarkMenuController::menu() const { | 74 MenuItemView* BookmarkMenuController::menu() const { |
74 return menu_delegate_->menu(); | 75 return menu_delegate_->menu(); |
75 } | 76 } |
76 | 77 |
77 MenuItemView* BookmarkMenuController::context_menu() const { | 78 MenuItemView* BookmarkMenuController::context_menu() const { |
78 return menu_delegate_->context_menu(); | 79 return menu_delegate_->context_menu(); |
79 } | 80 } |
80 | 81 |
| 82 void BookmarkMenuController::SetPageNavigator(PageNavigator* navigator) { |
| 83 menu_delegate_->SetPageNavigator(navigator); |
| 84 } |
| 85 |
81 std::wstring BookmarkMenuController::GetTooltipText(int id, | 86 std::wstring BookmarkMenuController::GetTooltipText(int id, |
82 const gfx::Point& p) { | 87 const gfx::Point& p) { |
83 return menu_delegate_->GetTooltipText(id, p); | 88 return menu_delegate_->GetTooltipText(id, p); |
84 } | 89 } |
85 | 90 |
86 bool BookmarkMenuController::IsTriggerableEvent(views::MenuItemView* menu, | 91 bool BookmarkMenuController::IsTriggerableEvent(views::MenuItemView* menu, |
87 const views::MouseEvent& e) { | 92 const views::MouseEvent& e) { |
88 return menu_delegate_->IsTriggerableEvent(menu, e); | 93 return menu_delegate_->IsTriggerableEvent(menu, e); |
89 } | 94 } |
90 | 95 |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 void BookmarkMenuController::BookmarkModelChanged() { | 183 void BookmarkMenuController::BookmarkModelChanged() { |
179 if (!menu_delegate_->is_mutating_model()) | 184 if (!menu_delegate_->is_mutating_model()) |
180 menu()->Cancel(); | 185 menu()->Cancel(); |
181 } | 186 } |
182 | 187 |
183 BookmarkMenuController::~BookmarkMenuController() { | 188 BookmarkMenuController::~BookmarkMenuController() { |
184 menu_delegate_->profile()->GetBookmarkModel()->RemoveObserver(this); | 189 menu_delegate_->profile()->GetBookmarkModel()->RemoveObserver(this); |
185 if (observer_) | 190 if (observer_) |
186 observer_->BookmarkMenuDeleted(this); | 191 observer_->BookmarkMenuDeleted(this); |
187 } | 192 } |
OLD | NEW |