////////////////////////////////////////////////////////////////////////////
// CXimMgr クラスのインタフェース宣言
//
// XIM管理オブジェクト
////////////////////////////////////////////////////////////////////////////

#if !defined( XIMMGR_H_INCLUDED_ )
#define XIMMGR_H_INCLUDED_

#include <Xm/XmAll.h>

#include "TaEdit_std.h"
#include "ConfigInfo.h"

class CXimMgr : public NNabikiVClsPtr::CCPInterface
{
public:
	CXimMgr();
	~CXimMgr();

	// 初期化
	bool Initialize( Widget argWgt, VClsPtr< CConfigInfo > argpConf );

	// フォーカスが入った
	void OnForcus();

	// フォーカスがでていった
	void ExitForcus();

	// 入力位置の設定
	void SetPosition( int x, int y ) const;

	// 入力テキストの取得
	void GetInputText( XKeyPressedEvent *event, wstring *pStr, KeySym *pKeySym, bool *pOnShift, bool *pCtrl );

	// 破棄
	void Clear();

	// ビューの左側にあける領域の幅を設定
	void SetLeftColumnWidth( int LCW );

protected:
	Widget m_Wgt;

	// 変換中の文字列で使用するフォント
	XFontSet m_FontSet;
	XmFontListEntry m_FontListEntry;
	XmFontList m_FontList;

	// ビューの左側に空ける領域の幅
	int LeftColumnWidth;
};

#endif // XIMMGR_H_INCLUDED_

