Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / ui / base / dragdrop / drag_drop_types.h
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
3 // found in the LICENSE file.
4
5 #ifndef UI_BASE_DRAGDROP_DRAG_DROP_TYPES_H_
6 #define UI_BASE_DRAGDROP_DRAG_DROP_TYPES_H_
7
8 #include "base/basictypes.h"
9 #include "ui/base/ui_base_export.h"
10
11 namespace ui {
12
13 class UI_BASE_EXPORT DragDropTypes {
14  public:
15   enum DragOperation {
16     DRAG_NONE = 0,
17     DRAG_MOVE = 1 << 0,
18     DRAG_COPY = 1 << 1,
19     DRAG_LINK = 1 << 2
20   };
21
22   enum DragEventSource {
23     DRAG_EVENT_SOURCE_MOUSE,
24     DRAG_EVENT_SOURCE_TOUCH,
25     DRAG_EVENT_SOURCE_LAST = DRAG_EVENT_SOURCE_TOUCH
26   };
27
28 #if defined(OS_WIN)
29   static uint32 DragOperationToDropEffect(int drag_operation);
30   static int DropEffectToDragOperation(uint32 effect);
31 #elif defined(TOOLKIT_GTK)
32   static int DragOperationToGdkDragAction(int drag_operation);
33   static int GdkDragActionToDragOperation(int gdk_drag_action);
34 #endif
35 };
36
37 }  // namespace ui
38
39 #endif  // UI_BASE_DRAGDROP_DRAG_DROP_TYPES_H_