| 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 #ifndef CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ | 5 #ifndef CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ |
| 6 #define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ | 6 #define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include "chrome/browser/ui/select_file_dialog.h" | 9 #include "chrome/browser/ui/select_file_dialog.h" |
| 10 #include "content/public/browser/download_manager.h" | 10 #include "content/public/browser/download_manager.h" |
| 11 | 11 |
| 12 class FilePath; | 12 class FilePath; |
| 13 class TabContents; | 13 |
| 14 namespace content { |
| 15 class WebContents; |
| 16 } |
| 14 | 17 |
| 15 // Handles showing a dialog to the user to ask for the filename for a download. | 18 // Handles showing a dialog to the user to ask for the filename for a download. |
| 16 class DownloadFilePicker : public content::DownloadManager::Observer, | 19 class DownloadFilePicker : public content::DownloadManager::Observer, |
| 17 public SelectFileDialog::Listener { | 20 public SelectFileDialog::Listener { |
| 18 public: | 21 public: |
| 19 DownloadFilePicker(content::DownloadManager* download_manager, | 22 DownloadFilePicker(content::DownloadManager* download_manager, |
| 20 TabContents* tab_contents, | 23 content::WebContents* web_contents, |
| 21 const FilePath& suggested_path, | 24 const FilePath& suggested_path, |
| 22 void* params); | 25 void* params); |
| 23 virtual ~DownloadFilePicker(); | 26 virtual ~DownloadFilePicker(); |
| 24 | 27 |
| 25 private: | 28 private: |
| 26 // content::DownloadManager::Observer implementation. | 29 // content::DownloadManager::Observer implementation. |
| 27 virtual void ModelChanged() OVERRIDE; | 30 virtual void ModelChanged() OVERRIDE; |
| 28 virtual void ManagerGoingDown() OVERRIDE; | 31 virtual void ManagerGoingDown() OVERRIDE; |
| 29 | 32 |
| 30 // SelectFileDialog::Listener implementation. | 33 // SelectFileDialog::Listener implementation. |
| 31 virtual void FileSelected(const FilePath& path, | 34 virtual void FileSelected(const FilePath& path, |
| 32 int index, | 35 int index, |
| 33 void* params) OVERRIDE; | 36 void* params) OVERRIDE; |
| 34 virtual void FileSelectionCanceled(void* params) OVERRIDE; | 37 virtual void FileSelectionCanceled(void* params) OVERRIDE; |
| 35 | 38 |
| 36 content::DownloadManager* download_manager_; | 39 content::DownloadManager* download_manager_; |
| 37 | 40 |
| 38 // For managing select file dialogs. | 41 // For managing select file dialogs. |
| 39 scoped_refptr<SelectFileDialog> select_file_dialog_; | 42 scoped_refptr<SelectFileDialog> select_file_dialog_; |
| 40 | 43 |
| 41 DISALLOW_COPY_AND_ASSIGN(DownloadFilePicker); | 44 DISALLOW_COPY_AND_ASSIGN(DownloadFilePicker); |
| 42 }; | 45 }; |
| 43 | 46 |
| 44 #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ | 47 #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_FILE_PICKER_H_ |
| OLD | NEW |