summaryrefslogtreecommitdiffstats
path: root/chrome/browser/download/download_shelf.cc
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-19 21:47:34 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-19 21:47:34 +0000
commit84e5cdd9131a484d650b43f23d915bc72f881003 (patch)
tree60109d5fde827c103e068b03967944a952724b1d /chrome/browser/download/download_shelf.cc
parent42470cd3676de5d6a2c7659a6ccc8a05736d1d9f (diff)
downloadchromium_src-84e5cdd9131a484d650b43f23d915bc72f881003.zip
chromium_src-84e5cdd9131a484d650b43f23d915bc72f881003.tar.gz
chromium_src-84e5cdd9131a484d650b43f23d915bc72f881003.tar.bz2
Make use of SimpleMenuModel in DownloadShelfContextMenuWin and DownloadShelfContextMenuGtk.
BUG=31365 TEST=manually patch by Thiago Farina original review at http://codereview.chromium.org/552251/show Review URL: http://codereview.chromium.org/647059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39496 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/download/download_shelf.cc')
-rw-r--r--chrome/browser/download/download_shelf.cc44
1 files changed, 44 insertions, 0 deletions
diff --git a/chrome/browser/download/download_shelf.cc b/chrome/browser/download/download_shelf.cc
index 1ab4e77..1cb94b0 100644
--- a/chrome/browser/download/download_shelf.cc
+++ b/chrome/browser/download/download_shelf.cc
@@ -113,3 +113,47 @@ void DownloadShelfContextMenu::ExecuteItemCommand(int id) {
NOTREACHED();
}
}
+
+menus::SimpleMenuModel* DownloadShelfContextMenu::GetInProgressMenuModel(
+ menus::SimpleMenuModel::Delegate* delegate) {
+ if (in_progress_download_menu_model_.get())
+ return in_progress_download_menu_model_.get();
+
+ in_progress_download_menu_model_.reset(new menus::SimpleMenuModel(delegate));
+
+ in_progress_download_menu_model_->AddCheckItemWithStringId(
+ OPEN_WHEN_COMPLETE, IDS_DOWNLOAD_MENU_OPEN_WHEN_COMPLETE);
+ in_progress_download_menu_model_->AddCheckItemWithStringId(
+ ALWAYS_OPEN_TYPE, IDS_DOWNLOAD_MENU_ALWAYS_OPEN_TYPE);
+ in_progress_download_menu_model_->AddSeparator();
+ in_progress_download_menu_model_->AddCheckItemWithStringId(
+ TOGGLE_PAUSE, IDS_DOWNLOAD_MENU_PAUSE_ITEM);
+ in_progress_download_menu_model_->AddItemWithStringId(
+ SHOW_IN_FOLDER, IDS_DOWNLOAD_MENU_SHOW);
+ in_progress_download_menu_model_->AddSeparator();
+ in_progress_download_menu_model_->AddItemWithStringId(
+ CANCEL, IDS_DOWNLOAD_MENU_CANCEL);
+
+ return in_progress_download_menu_model_.get();
+}
+
+menus::SimpleMenuModel* DownloadShelfContextMenu::GetFinishedMenuModel(
+ menus::SimpleMenuModel::Delegate* delegate) {
+ if (finished_download_menu_model_.get())
+ return finished_download_menu_model_.get();
+
+ finished_download_menu_model_.reset(new menus::SimpleMenuModel(delegate));
+
+ finished_download_menu_model_->AddItemWithStringId(
+ OPEN_WHEN_COMPLETE, IDS_DOWNLOAD_MENU_OPEN);
+ finished_download_menu_model_->AddCheckItemWithStringId(
+ ALWAYS_OPEN_TYPE, IDS_DOWNLOAD_MENU_ALWAYS_OPEN_TYPE);
+ finished_download_menu_model_->AddSeparator();
+ finished_download_menu_model_->AddItemWithStringId(
+ SHOW_IN_FOLDER, IDS_DOWNLOAD_MENU_SHOW);
+ finished_download_menu_model_->AddSeparator();
+ finished_download_menu_model_->AddItemWithStringId(
+ CANCEL, IDS_DOWNLOAD_MENU_CANCEL);
+
+ return finished_download_menu_model_.get();
+}