OLD | NEW |
(Empty) | |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef CHROME_BROWSER_DOWNLOAD_DOWNLOAD_COMMANDS_H_ |
| 6 #define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_COMMANDS_H_ |
| 7 |
| 8 #include "base/strings/string16.h" |
| 9 |
| 10 #include "chrome/browser/ui/browser.h" |
| 11 #include "content/public/browser/download_item.h" |
| 12 #include "content/public/browser/page_navigator.h" |
| 13 #include "ui/gfx/image/image.h" |
| 14 |
| 15 class DownloadCommands { |
| 16 public: |
| 17 enum Command { |
| 18 SHOW_IN_FOLDER = 1, // Open a folder view window with the item selected. |
| 19 OPEN_WHEN_COMPLETE, // Open the download when it's finished. |
| 20 ALWAYS_OPEN_TYPE, // Default this file extension to always open. |
| 21 PLATFORM_OPEN, // Open using platform handler. |
| 22 CANCEL, // Cancel the download. |
| 23 PAUSE, // Pause a download. |
| 24 RESUME, // Resume a download. |
| 25 DISCARD, // Discard the malicious download. |
| 26 KEEP, // Keep the malicious download. |
| 27 RETRY, // Retry the download. |
| 28 LEARN_MORE_SCANNING, // Show information about download scanning. |
| 29 LEARN_MORE_INTERRUPTED, // Show information about interrupted downloads. |
| 30 }; |
| 31 |
| 32 // |download_item| must outlive DownloadCommands. |
| 33 explicit DownloadCommands(content::DownloadItem* download_item); |
| 34 virtual ~DownloadCommands() {} |
| 35 |
| 36 gfx::Image GetCommandIcon(Command command); |
| 37 |
| 38 bool IsCommandEnabled(Command command) const; |
| 39 bool IsCommandChecked(Command command) const; |
| 40 bool IsCommandVisible(Command command) const; |
| 41 void ExecuteCommand(Command command); |
| 42 |
| 43 #if defined(OS_WIN) || defined(OS_LINUX) || \ |
| 44 (defined(OS_MACOSX) && !defined(OS_IOS)) |
| 45 bool IsDownloadPdf() const; |
| 46 bool CanOpenPdfInSystemViewer() const; |
| 47 #endif |
| 48 |
| 49 private: |
| 50 Browser* GetBrowser() const; |
| 51 |
| 52 int GetCommandIconId(Command command); |
| 53 |
| 54 int GetAlwaysOpenStringId() const; |
| 55 |
| 56 content::DownloadItem* const download_item_; |
| 57 }; |
| 58 |
| 59 #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_COMMANDS_H_ |
OLD | NEW |