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