Home | History | Annotate | Download | only in pdfwindow
      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 _PWL_SIGNATURE_H_
      8 #define _PWL_SIGNATURE_H_
      9 
     10 class CPWL_Signature;
     11 class CPWL_Label;
     12 class CPWL_Signature_Image;
     13 
     14 class CPWL_Signature_Image : public CPWL_Image
     15 {
     16 public:
     17 	CPWL_Signature_Image();
     18 	virtual ~CPWL_Signature_Image();
     19 
     20 	void								SetImage(CFX_DIBSource* pImage);
     21 	CFX_DIBSource*						GetImage();
     22 
     23 protected:
     24 	virtual void						DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device);
     25 	virtual void						GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream);
     26 
     27 	virtual void						GetScale(FX_FLOAT & fHScale,FX_FLOAT & fVScale);
     28 
     29 private:
     30 	CFX_DIBSource*						m_pImage;
     31 };
     32 
     33 class PWL_CLASS CPWL_Signature : public CPWL_Wnd
     34 {
     35 public:
     36 	CPWL_Signature();
     37 	virtual ~CPWL_Signature();
     38 
     39 	void								SetText(FX_LPCWSTR sText);
     40 	void								SetDescription(FX_LPCWSTR string);
     41 	void								SetImage(CFX_DIBSource* pImage);
     42 	void								SetImageStream(CPDF_Stream * pStream, FX_LPCSTR sImageAlias);
     43 
     44 	void								SetTextFlag(FX_BOOL bTextExist);
     45 	void								SetImageFlag(FX_BOOL bImageExist);
     46 	void								SetFoxitFlag(FX_BOOL bFlagExist);
     47 
     48 protected:
     49 	virtual void						RePosChildWnd();
     50 	virtual void						CreateChildWnd(const PWL_CREATEPARAM & cp);
     51 
     52 	virtual void						DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device);
     53 	virtual void						GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream);
     54 
     55 private:
     56 	CPWL_Label*							m_pText;
     57 	CPWL_Label*							m_pDescription;
     58 	CPWL_Signature_Image*				m_pImage;
     59 
     60 	FX_BOOL								m_bTextExist;
     61 	FX_BOOL								m_bImageExist;
     62 	FX_BOOL								m_bFlagExist;
     63 };
     64 
     65 #endif // _PWL_SIGNATURE_H_
     66 
     67 
     68