1ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Copyright 2014 PDFium Authors. All rights reserved. 2ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Use of this source code is governed by a BSD-style license that can be 3ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// found in the LICENSE file. 4ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 5ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 7ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#ifndef _PWL_SIGNATURE_H_ 8ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#define _PWL_SIGNATURE_H_ 9ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 10ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass CPWL_Signature; 11ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass CPWL_Label; 12ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass CPWL_Signature_Image; 13ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 14ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass CPWL_Signature_Image : public CPWL_Image 15ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{ 16ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovpublic: 17ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CPWL_Signature_Image(); 18ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual ~CPWL_Signature_Image(); 19ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 20ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetImage(CFX_DIBSource* pImage); 21ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CFX_DIBSource* GetImage(); 22ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 23ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovprotected: 24ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device); 25ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream); 26ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 27ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void GetScale(FX_FLOAT & fHScale,FX_FLOAT & fVScale); 28ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 29ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovprivate: 30ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CFX_DIBSource* m_pImage; 31ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}; 32ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 33ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass PWL_CLASS CPWL_Signature : public CPWL_Wnd 34ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{ 35ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovpublic: 36ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CPWL_Signature(); 37ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual ~CPWL_Signature(); 38ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 39ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetText(FX_LPCWSTR sText); 40ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetDescription(FX_LPCWSTR string); 41ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetImage(CFX_DIBSource* pImage); 42ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetImageStream(CPDF_Stream * pStream, FX_LPCSTR sImageAlias); 43ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 44ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetTextFlag(FX_BOOL bTextExist); 45ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetImageFlag(FX_BOOL bImageExist); 46ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov void SetFoxitFlag(FX_BOOL bFlagExist); 47ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 48ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovprotected: 49ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void RePosChildWnd(); 50ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void CreateChildWnd(const PWL_CREATEPARAM & cp); 51ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 52ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device); 53ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream); 54ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 55ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovprivate: 56ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CPWL_Label* m_pText; 57ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CPWL_Label* m_pDescription; 58ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CPWL_Signature_Image* m_pImage; 59ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 60ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov FX_BOOL m_bTextExist; 61ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov FX_BOOL m_bImageExist; 62ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov FX_BOOL m_bFlagExist; 63ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}; 64ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 65ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif // _PWL_SIGNATURE_H_ 66ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 67ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 68