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_DRAG_UTILS_H_ | 5 #ifndef UI_BASE_DRAGDROP_DRAG_UTILS_H_ |
6 #define UI_BASE_DRAGDROP_DRAG_UTILS_H_ | 6 #define UI_BASE_DRAGDROP_DRAG_UTILS_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
11 #include "ui/base/ui_base_export.h" | 11 #include "ui/base/ui_base_export.h" |
12 | 12 |
13 namespace gfx { | 13 namespace gfx { |
14 class Canvas; | 14 class Canvas; |
15 class ImageSkia; | 15 class ImageSkia; |
16 class Vector2d; | 16 class Vector2d; |
17 } | 17 } |
18 | 18 |
19 namespace ui { | 19 namespace ui { |
20 class OSExchangeData; | 20 class OSExchangeData; |
21 } | 21 } |
22 using ui::OSExchangeData; | |
23 | 22 |
24 namespace drag_utils { | 23 namespace drag_utils { |
25 | 24 |
26 // Creates a dragging image to be displayed when the user drags a file from | |
27 // Chrome (via the download manager, for example). The drag image is set into | |
28 // the supplied data_object. |file_name| can be a full path, but the directory | |
29 // portion will be truncated in the drag image. |icon| can be empty. | |
30 UI_BASE_EXPORT void CreateDragImageForFile(const base::FilePath& file_name, | |
31 const gfx::ImageSkia& icon, | |
32 ui::OSExchangeData* data_object); | |
33 | |
34 // Sets the drag image on data_object from the supplied canvas. | 25 // Sets the drag image on data_object from the supplied canvas. |
35 // |cursor_offset| gives the location of the hotspot for the drag image. | 26 // |cursor_offset| gives the location of the hotspot for the drag image. |
36 UI_BASE_EXPORT void SetDragImageOnDataObject(const gfx::Canvas& canvas, | 27 UI_BASE_EXPORT void SetDragImageOnDataObject(const gfx::Canvas& canvas, |
37 const gfx::Vector2d& cursor_offset, | 28 const gfx::Vector2d& cursor_offset, |
38 ui::OSExchangeData* data_object); | 29 ui::OSExchangeData* data_object); |
39 | 30 |
40 // Sets the drag image on data_object from the supplied ImageSkia. | 31 // Sets the drag image on data_object from the supplied ImageSkia. |
41 // |cursor_offset| gives the location of the hotspot for the drag image. | 32 // |cursor_offset| gives the location of the hotspot for the drag image. |
42 UI_BASE_EXPORT void SetDragImageOnDataObject(const gfx::ImageSkia& image_skia, | 33 UI_BASE_EXPORT void SetDragImageOnDataObject(const gfx::ImageSkia& image_skia, |
43 const gfx::Vector2d& cursor_offset, | 34 const gfx::Vector2d& cursor_offset, |
44 ui::OSExchangeData* data_object); | 35 ui::OSExchangeData* data_object); |
45 | 36 |
46 } // namespace drag_utils | 37 } // namespace drag_utils |
47 | 38 |
48 #endif // UI_BASE_DRAGDROP_DRAG_UTILS_H_ | 39 #endif // UI_BASE_DRAGDROP_DRAG_UTILS_H_ |
OLD | NEW |