| // Copyright 2014 PDFium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| |
| #ifndef _FWL_ADAPTER_CLIPBOARDMGR_H |
| #define _FWL_ADAPTER_CLIPBOARDMGR_H |
| |
| enum FWL_CLIPBOARDFORMAT { |
| FWL_CLIPBOARDFORMAT_Dib, |
| FWL_CLIPBOARDFORMAT_Text, |
| FWL_CLIPBOARDFORMAT_UncodeText, |
| }; |
| typedef struct _FWL_HCLIPBOARDDATA { void* pData; } * FWL_HCLIPBOARDDATA; |
| |
| class IFWL_AdapterClipboardMgr { |
| public: |
| virtual ~IFWL_AdapterClipboardMgr() {} |
| virtual FWL_ERR Empty() = 0; |
| virtual FX_BOOL IsDataAvailable(FX_DWORD dwFormat) = 0; |
| virtual FWL_HCLIPBOARDDATA GetData(FX_DWORD dwFormat) = 0; |
| virtual FWL_ERR SetData(FX_DWORD dwFormat, uint8_t* pBuf, int32_t iSize) = 0; |
| virtual int32_t GetDataSize(FWL_HCLIPBOARDDATA hData) = 0; |
| virtual void* LockDataBuffer(FWL_HCLIPBOARDDATA hData) = 0; |
| virtual FX_BOOL UnLockDataBuffer(FWL_HCLIPBOARDDATA hData) = 0; |
| virtual FWL_ERR SetStringData(const CFX_WideStringC& ws) = 0; |
| virtual FWL_ERR SetStringData(const CFX_ByteStringC& bs) = 0; |
| virtual FWL_ERR GetStringData(CFX_WideString& ws) = 0; |
| virtual FWL_ERR GetStringData(CFX_ByteString& bs) = 0; |
| virtual FWL_ERR EnumFormats(CFX_DWordArray& formats) = 0; |
| virtual FX_DWORD RegisterFormat(const CFX_WideStringC& wsFormat) = 0; |
| }; |
| #endif |