DragClientAndroid.h revision 8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2
1dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat/* 2dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * Copyright 2007, The Android Open Source Project 3dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * 4dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * Redistribution and use in source and binary forms, with or without 5dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * modification, are permitted provided that the following conditions 6dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * are met: 7dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * * Redistributions of source code must retain the above copyright 8dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * notice, this list of conditions and the following disclaimer. 9dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * * Redistributions in binary form must reproduce the above copyright 10dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * notice, this list of conditions and the following disclaimer in the 11dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * documentation and/or other materials provided with the distribution. 12dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * 13dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 14dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 17dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat */ 25dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 26dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat#ifndef DragClientAndroid_h 27dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat#define DragClientAndroid_h 28dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 29dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat#include "DragClient.h" 30dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 31dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatusing namespace WebCore; 32dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 33dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatnamespace android { 34dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 35dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat class DragClientAndroid : public DragClient { 36dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat public: 37dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual void willPerformDragDestinationAction(DragDestinationAction, DragData*); 38dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual void willPerformDragSourceAction(DragSourceAction, const IntPoint&, Clipboard*); 39dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual DragDestinationAction actionMaskForDrag(DragData*); 40dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat //We work in window rather than view coordinates here 41dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual DragSourceAction dragSourceActionMaskForPoint(const IntPoint&); 42dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 43dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual void startDrag(DragImageRef dragImage, const IntPoint& dragImageOrigin, const IntPoint& eventPos, Clipboard*, Frame*, bool linkDrag = false); 44dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual DragImageRef createDragImageForLink(KURL&, const String& label, Frame*); 45dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 46dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat virtual void dragControllerDestroyed(); 47dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat }; 48dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 49dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat} 50dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 51dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat#endif 52dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat