// 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 _PWL_LABEL_H_
#define _PWL_LABEL_H_

class IFX_Edit;

class PWL_CLASS CPWL_Label : public CPWL_Wnd
{
public:
	CPWL_Label();
	virtual ~CPWL_Label();

public:
	virtual CFX_ByteString			GetClassName() const;	
	virtual void					SetFontSize(FX_FLOAT fFontSize);
	virtual FX_FLOAT				GetFontSize() const;

public:		
	void							SetText(FX_LPCWSTR csText);
	CFX_WideString					GetText() const;

	void							SetLimitChar(FX_INT32 nLimitChar);
	void							SetHorzScale(FX_INT32 nHorzScale);
	void							SetCharSpace(FX_FLOAT fCharSpace);

	CPDF_Rect						GetContentRect() const;	
	FX_INT32						GetTotalWords();

	CFX_ByteString					GetTextAppearanceStream(const CPDF_Point & ptOffset) const;

protected:
	virtual void					OnCreated();
	virtual void					DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device);
	virtual void					GetThisAppearanceStream(CFX_ByteTextBuf & sAppStream);
	virtual void					RePosChildWnd();	

private:
	void							SetParamByFlag();

private:
	IFX_Edit*						m_pEdit;
};

#endif