• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_export.h"
10 
11 namespace ui {
12 
13 class UI_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   };
26 
27 #if defined(OS_WIN)
28   static uint32 DragOperationToDropEffect(int drag_operation);
29   static int DropEffectToDragOperation(uint32 effect);
30 #elif defined(TOOLKIT_GTK)
31   static int DragOperationToGdkDragAction(int drag_operation);
32   static int GdkDragActionToDragOperation(int gdk_drag_action);
33 #endif
34 };
35 
36 }  // namespace ui
37 
38 #endif  // UI_BASE_DRAGDROP_DRAG_DROP_TYPES_H_
39