OLD | NEW |
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 UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ | 5 #ifndef UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ |
6 #define UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ | 6 #define UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ |
7 | 7 |
8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
9 | 9 |
10 #include <set> | 10 #include <set> |
(...skipping 11 matching lines...) Expand all Loading... |
22 #include "ui/base/dragdrop/download_file_interface.h" | 22 #include "ui/base/dragdrop/download_file_interface.h" |
23 #include "ui/base/ui_export.h" | 23 #include "ui/base/ui_export.h" |
24 | 24 |
25 #if defined(USE_AURA) | 25 #if defined(USE_AURA) |
26 #include "ui/base/clipboard/clipboard.h" | 26 #include "ui/base/clipboard/clipboard.h" |
27 #endif | 27 #endif |
28 | 28 |
29 class GURL; | 29 class GURL; |
30 class Pickle; | 30 class Pickle; |
31 | 31 |
| 32 namespace gfx { |
| 33 class ImageSkia; |
| 34 class Vector2d; |
| 35 } |
| 36 |
32 namespace ui { | 37 namespace ui { |
33 | 38 |
34 /////////////////////////////////////////////////////////////////////////////// | 39 /////////////////////////////////////////////////////////////////////////////// |
35 // | 40 // |
36 // OSExchangeData | 41 // OSExchangeData |
37 // An object that holds interchange data to be sent out to OS services like | 42 // An object that holds interchange data to be sent out to OS services like |
38 // clipboard, drag and drop, etc. This object exposes an API that clients can | 43 // clipboard, drag and drop, etc. This object exposes an API that clients can |
39 // use to specify raw data and its high level type. This object takes care of | 44 // use to specify raw data and its high level type. This object takes care of |
40 // translating that into something the OS can understand. | 45 // translating that into something the OS can understand. |
41 // | 46 // |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 std::string* file_contents) const = 0; | 135 std::string* file_contents) const = 0; |
131 virtual bool HasFileContents() const = 0; | 136 virtual bool HasFileContents() const = 0; |
132 virtual void SetDownloadFileInfo(const DownloadFileInfo& download) = 0; | 137 virtual void SetDownloadFileInfo(const DownloadFileInfo& download) = 0; |
133 #endif | 138 #endif |
134 | 139 |
135 #if defined(OS_WIN) || defined(USE_AURA) | 140 #if defined(OS_WIN) || defined(USE_AURA) |
136 virtual void SetHtml(const string16& html, const GURL& base_url) = 0; | 141 virtual void SetHtml(const string16& html, const GURL& base_url) = 0; |
137 virtual bool GetHtml(string16* html, GURL* base_url) const = 0; | 142 virtual bool GetHtml(string16* html, GURL* base_url) const = 0; |
138 virtual bool HasHtml() const = 0; | 143 virtual bool HasHtml() const = 0; |
139 #endif | 144 #endif |
| 145 |
| 146 #if defined(USE_AURA) |
| 147 virtual void SetDragImage(const gfx::ImageSkia& image, |
| 148 const gfx::Vector2d& cursor_offset) = 0; |
| 149 virtual const gfx::ImageSkia& GetDragImage() const = 0; |
| 150 virtual const gfx::Vector2d& GetDragImageOffset() const = 0; |
| 151 #endif |
140 }; | 152 }; |
141 | 153 |
142 // Creates the platform specific Provider. | 154 // Creates the platform specific Provider. |
143 static Provider* CreateProvider(); | 155 static Provider* CreateProvider(); |
144 | 156 |
145 OSExchangeData(); | 157 OSExchangeData(); |
146 // Creates an OSExchangeData with the specified provider. OSExchangeData | 158 // Creates an OSExchangeData with the specified provider. OSExchangeData |
147 // takes ownership of the supplied provider. | 159 // takes ownership of the supplied provider. |
148 explicit OSExchangeData(Provider* provider); | 160 explicit OSExchangeData(Provider* provider); |
149 | 161 |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 private: | 239 private: |
228 // Provides the actual data. | 240 // Provides the actual data. |
229 scoped_ptr<Provider> provider_; | 241 scoped_ptr<Provider> provider_; |
230 | 242 |
231 DISALLOW_COPY_AND_ASSIGN(OSExchangeData); | 243 DISALLOW_COPY_AND_ASSIGN(OSExchangeData); |
232 }; | 244 }; |
233 | 245 |
234 } // namespace ui | 246 } // namespace ui |
235 | 247 |
236 #endif // UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ | 248 #endif // UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ |
OLD | NEW |