////////////////////////////////////////////////////////////////////////////
// CTxtColorMgr_txt クラスのインタフェース宣言
//
////////////////////////////////////////////////////////////////////////////

#if !defined( TXTCOLORMGR_TXT_H_INCLUDED_ )
#define TXTCOLORMGR_TXT_H_INCLUDED_

#include "../TxtColorMgr.h"

namespace NLangExt {

namespace NLangExt_txt {

class CTxtColorMgr_txt : public CTxtColorMgr
{
public:
	CTxtColorMgr_txt();
	~CTxtColorMgr_txt();

	// 初期化
	bool Initialize( VClsPtr< CConfigInfo > pConf );

	// 使用する色の数を取得
	int GetColorCount() const;

	// 色を取得
	Pixel GetColor( int idx ) const;

	// 色情報から色のインデックスへ変換
	int TranseToIdx( unsigned char c ) const;

	// 初期状態で更新
	void InitiUpdate( T_LineData &rData ) const;

	// 文字列の更新に伴う色の更新
	void Update( T_LineData &rData, const T_SelRange &range ) const;

	// 言語種類コードを取得
	enumLANGTYPE GetLangType() const
	{
		return LANGTYPE_TEXT;
	}

protected:
	Pixel Color; 	// 色
};

} // namespace NLangExt_txt

} // namespace NLangExt;

#endif // TXTCOLORMGR_TXT_H_INCLUDED_

