1 // Copyright 2014 PDFium 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 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef _FWL_ADAPTER_CURSORMGR_H 8 #define _FWL_ADAPTER_CURSORMGR_H 9 class CFX_DIBitmap; 10 class IFWL_AdapterCursorMgr; 11 enum FWL_CURSORTYPE { 12 FWL_CURSORTYPE_Arrow = 0, 13 FWL_CURSORTYPE_Cross, 14 FWL_CURSORTYPE_Hand, 15 FWL_CURSORTYPE_InputBeam, 16 FWL_CURSORTYPE_Wait, 17 FWL_CURSORTYPE_SizeAll, 18 FWL_CURSORTYPE_SizeNWSE, 19 FWL_CURSORTYPE_SizeNESW, 20 FWL_CURSORTYPE_SizeWE, 21 FWL_CURSORTYPE_SizeNS, 22 FWL_CURSORTYPE_Prohibition, 23 FWL_CURSORTYPE_Help 24 }; 25 typedef struct _FWL_HCURSOR { void* pData; } * FWL_HCURSOR; 26 27 class IFWL_AdapterCursorMgr { 28 public: 29 virtual ~IFWL_AdapterCursorMgr() {} 30 virtual FWL_HCURSOR GetSystemCursor(FWL_CURSORTYPE eCursorType) = 0; 31 virtual FWL_HCURSOR GetCustomCursor(const CFX_DIBitmap* pBitmap, 32 FX_FLOAT xHotspot = 0, 33 FX_FLOAT yHotspot = 0) = 0; 34 virtual FWL_ERR SetCursor(FWL_HCURSOR hCursor) = 0; 35 virtual FWL_ERR ShowCursor(FX_BOOL bShow) = 0; 36 virtual FWL_ERR GetCursorPos(CFX_PointF& pt) = 0; 37 }; 38 #endif 39