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#include "../../include/pdfwindow/PDFWindow.h"
8ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "../../include/pdfwindow/PWL_Wnd.h"
9ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "../../include/pdfwindow/PWL_Icon.h"
10ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "../../include/pdfwindow/PWL_Signature.h"
11ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "../../include/pdfwindow/PWL_Label.h"
12ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "../../include/pdfwindow/PWL_Utils.h"
13ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
14ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/* --------------------------------- CPWL_Signature_Image --------------------------------- */
15ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
16ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovCPWL_Signature_Image::CPWL_Signature_Image() : m_pImage(NULL)
17ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
18ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
19ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
20ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovCPWL_Signature_Image::~CPWL_Signature_Image()
21ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
22ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
23ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
24ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature_Image::SetImage(CFX_DIBSource* pImage)
25ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
26ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage = pImage;
27ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
28ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
29ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovCFX_DIBSource* CPWL_Signature_Image::GetImage()
30ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
31ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	return m_pImage;
32ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
33ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
34ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature_Image::DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device)
35ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
36ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPWL_Wnd::DrawThisAppearance(pDevice, pUser2Device);
37ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
38ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	if (m_pImage)
39ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	{
40ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		CPDF_Rect rcClient = GetClientRect();
41ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
42ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		FX_FLOAT x, y;
43ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		pUser2Device->Transform(rcClient.left, rcClient.top, x, y);
44ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
45ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		pDevice->StretchDIBits(m_pImage, (FX_INT32)x, (FX_INT32)y,
46ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			(FX_INT32)rcClient.Width(), (FX_INT32)rcClient.Height());
47ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	}
48ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
49ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
50ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature_Image::GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream)
51ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
52ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	sAppStream << CPWL_Image::GetImageAppStream();
53ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
54ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
55ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature_Image::GetScale(FX_FLOAT & fHScale,FX_FLOAT & fVScale)
56ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
57ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	FX_FLOAT fImageW, fImageH;
58ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
59ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	GetImageSize(fImageW, fImageH);
60ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
61ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPDF_Rect rcClient = GetClientRect();
62ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
63ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	fHScale = rcClient.Width() / fImageW;
64ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	fVScale = rcClient.Height() / fImageH;
65ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
66ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
67ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/* --------------------------------- CPWL_Signature --------------------------------- */
68ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
69ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovCPWL_Signature::CPWL_Signature() :
70ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText(NULL),
71ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pDescription(NULL),
72ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage(NULL),
73ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bTextExist(TRUE),
74ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bImageExist(FALSE),
75ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bFlagExist(TRUE)
76ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
77ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
78ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
79ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovCPWL_Signature::~CPWL_Signature()
80ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
81ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
82ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
83ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetTextFlag(FX_BOOL bTextExist)
84ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
85ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bTextExist = bTextExist;
86ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
87ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
88ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
89ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
90ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetImageFlag(FX_BOOL bImageExist)
91ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
92ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bImageExist = bImageExist;
93ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
94ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
95ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
96ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
97ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetFoxitFlag(FX_BOOL bFlagExist)
98ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
99ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_bFlagExist = bFlagExist;
100ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
101ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
102ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetText(FX_LPCWSTR sText)
103ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
104ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText->SetText(sText);
105ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
106ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
107ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
108ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
109ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetDescription(FX_LPCWSTR string)
110ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
111ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pDescription->SetText(string);
112ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
113ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
114ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
115ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
116ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetImage(CFX_DIBSource* pImage)
117ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
118ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->SetImage(pImage);
119ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
120ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
121ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
122ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
123ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::SetImageStream(CPDF_Stream * pStream, FX_LPCSTR sImageAlias)
124ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
125ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->SetPDFStream(pStream);
126ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->SetImageAlias(sImageAlias);
127ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
128ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	RePosChildWnd();
129ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
130ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
131ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::RePosChildWnd()
132ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
133ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPDF_Rect rcClient = GetClientRect();
134ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
135ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPDF_Rect rcText = rcClient;
136ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPDF_Rect rcDescription = rcClient;
137ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
138ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	FX_BOOL bTextVisible = m_bTextExist && m_pText->GetText().GetLength() > 0;
139ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
140ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	if ((bTextVisible || m_bImageExist) &&
141ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		m_pDescription->GetText().GetLength() > 0)
142ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	{
143ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		if (rcClient.Width() >= rcClient.Height())
144ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		{
145ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			rcText.right = rcText.left + rcClient.Width() / 2.0f;
146ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			rcDescription.left = rcDescription.right - rcClient.Width() / 2.0f;
147ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		}
148ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		else
149ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		{
150ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			rcText.bottom = rcText.top - rcClient.Height() / 2.0f;
151ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			rcDescription.top = rcDescription.bottom + rcClient.Height() / 2.0f;
152ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		}
153ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	}
154ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
155ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText->SetVisible(bTextVisible);
156ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->SetVisible(m_bImageExist);
157ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
158ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText->Move(rcText, TRUE, FALSE);
159ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->Move(rcText, TRUE, FALSE);
160ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pDescription->Move(rcDescription, TRUE, FALSE);
161ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
162ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
163ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::CreateChildWnd(const PWL_CREATEPARAM & cp)
164ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
165ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage = new CPWL_Signature_Image;
166ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	PWL_CREATEPARAM icp = cp;
167ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	icp.pParentWnd = this;
168ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	icp.dwFlags = PWS_CHILD | PWS_VISIBLE;
169ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	icp.sTextColor = CPWL_Color(COLORTYPE_GRAY, 0);
170ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pImage->Create(icp);
171ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
172ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText = new CPWL_Label;
173ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	PWL_CREATEPARAM acp = cp;
174ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	acp.pParentWnd = this;
175ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	acp.dwFlags = PWS_CHILD | PWS_VISIBLE | PWS_AUTOFONTSIZE | PES_MULTILINE | PES_AUTORETURN | PES_MIDDLE | PES_CENTER;
176ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	acp.sTextColor = CPWL_Color(COLORTYPE_GRAY, 0);
177ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pText->Create(acp);
178ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
179ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pDescription = new CPWL_Label;
180ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	PWL_CREATEPARAM dcp = cp;
181ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	dcp.pParentWnd = this;
182ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	dcp.dwFlags = PWS_CHILD | PWS_VISIBLE | PWS_AUTOFONTSIZE | PES_MULTILINE | PES_AUTORETURN | PES_LEFT | PES_CENTER;
183ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	dcp.sTextColor = CPWL_Color(COLORTYPE_GRAY, 0);
184ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	m_pDescription->Create(dcp);
185ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
186ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
187ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device)
188ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
189ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPWL_Wnd::DrawThisAppearance(pDevice, pUser2Device);
190ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
191ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	if (m_bFlagExist)
192ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov		CPWL_Utils::DrawIconAppStream(pDevice, pUser2Device, PWL_ICONTYPE_FOXIT, CPWL_Utils::GetCenterSquare(GetClientRect()),
193ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov			CPWL_Color(COLORTYPE_RGB,0.91f,0.855f,0.92f), CPWL_Color(COLORTYPE_TRANSPARENT), 255);
194ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
195ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	/*
196ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPDF_Rect rcClient = GetClientRect();
197ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
198ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CFX_PathData path;
199ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
200ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	path.SetPointCount(2);
201ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	path.SetPoint(0, rcClient.left, (rcClient.top + rcClient.bottom) * 0.5f, FXPT_MOVETO);
202ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	path.SetPoint(1, rcClient.right, (rcClient.top + rcClient.bottom) * 0.5f, FXPT_LINETO);
203ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
204ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CFX_GraphStateData gsd;
205ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	gsd.SetDashCount(2);
206ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	gsd.m_DashArray[0] = 6.0f;
207ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	gsd.m_DashArray[1] = 6.0f;
208ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	gsd.m_DashPhase = 0;
209ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
210ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	gsd.m_LineWidth = 10.0f;
211ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	pDevice->DrawPath(&path, pUser2Device, &gsd, 0, ArgbEncode(255,255,0,0), FXFILL_ALTERNATE);
212ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	*/
213ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
214ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
215ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid CPWL_Signature::GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream)
216ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{
217ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov	CPWL_Wnd::GetThisAppearanceStream(sAppStream);
218ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}
219ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
220ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
221