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

Side by Side Diff: chrome/browser/download/download_item_model.h

Issue 11640007: Make the UI an observer of downloads. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Use DownloadItemModel. Address Nits. Created 8 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_ITEM_MODEL_H_ 5 #ifndef CHROME_BROWSER_DOWNLOAD_DOWNLOAD_ITEM_MODEL_H_
6 #define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_ITEM_MODEL_H_ 6 #define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_ITEM_MODEL_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 bool IsMalicious() const; 83 bool IsMalicious() const;
84 84
85 // Returns |true| if this download should be displayed in the downloads shelf. 85 // Returns |true| if this download should be displayed in the downloads shelf.
86 bool ShouldShowInShelf() const; 86 bool ShouldShowInShelf() const;
87 87
88 // Change whether the download should be displayed on the downloads 88 // Change whether the download should be displayed on the downloads
89 // shelf. Setting this is only effective if the download hasn't already been 89 // shelf. Setting this is only effective if the download hasn't already been
90 // displayed in the shelf. 90 // displayed in the shelf.
91 void SetShouldShowInShelf(bool should_show); 91 void SetShouldShowInShelf(bool should_show);
92 92
93 // Returns |true| if the UI should be notified when the download is ready to
94 // be presented in the UI. By default, this value is |false| and should be
95 // changed explicitly using SetShouldNotifyUI(). Note that this is indpendent
96 // of ShouldShowInShelf() since there might be actions other than showing in
97 // the shelf that the UI must perform.
98 bool ShouldNotifyUI() const;
99
100 // Change what's returned by ShouldNotifyUI().
101 void SetShouldNotifyUI(bool should_notify);
102
93 content::DownloadItem* download() { return download_; } 103 content::DownloadItem* download() { return download_; }
94 104
95 private: 105 private:
96 // Returns a string representations of the current download progress sizes. If 106 // Returns a string representations of the current download progress sizes. If
97 // the total size of the download is known, this string looks like: "100/200 107 // the total size of the download is known, this string looks like: "100/200
98 // MB" where the numerator is the transferred size and the denominator is the 108 // MB" where the numerator is the transferred size and the denominator is the
99 // total size. If the total isn't known, returns the transferred size as a 109 // total size. If the total isn't known, returns the transferred size as a
100 // string (e.g.: "100 MB"). 110 // string (e.g.: "100 MB").
101 string16 GetProgressSizesString() const; 111 string16 GetProgressSizesString() const;
102 112
103 // Returns a string indicating the status of an in-progress download. 113 // Returns a string indicating the status of an in-progress download.
104 string16 GetInProgressStatusString() const; 114 string16 GetInProgressStatusString() const;
105 115
106 // The DownloadItem that this model represents. Note that DownloadItemModel 116 // The DownloadItem that this model represents. Note that DownloadItemModel
107 // itself shouldn't maintain any state since there can be more than one 117 // itself shouldn't maintain any state since there can be more than one
108 // DownloadItemModel in use with the same DownloadItem. 118 // DownloadItemModel in use with the same DownloadItem.
109 content::DownloadItem* download_; 119 content::DownloadItem* download_;
110 120
111 DISALLOW_COPY_AND_ASSIGN(DownloadItemModel); 121 DISALLOW_COPY_AND_ASSIGN(DownloadItemModel);
112 }; 122 };
113 123
114 #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_ITEM_MODEL_H_ 124 #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_ITEM_MODEL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698