• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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