// ShitarabianPlugInHTMLSim.h: CShitarabianPlugInHTMLSim クラスのインターフェイス
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SHITARABIANPLUGINHTMLSIM_H__4BA1A1CC_898D_4C02_B97C_FA0BC4C6F630__INCLUDED_)
#define AFX_SHITARABIANPLUGINHTMLSIM_H__4BA1A1CC_898D_4C02_B97C_FA0BC4C6F630__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "ShitarabianPlugIn.h"
#include "afxtempl.h"

class CDocumentIF;

enum EHTMLMode
{
	HTMLMode2Ch,
	HTMLModeShitaraba,
};

class CShitarabianPlugInHTMLSim : public CShitarabianPlugIn  
{
public:
	CShitarabianPlugInHTMLSim();
	virtual ~CShitarabianPlugInHTMLSim();


	virtual void		OnLoad(CDocumentIF*	pDocIF);
	virtual void		OnSave(CDocumentIF*	pDocIF);

	virtual const char*		GetPlugInName();

	// ドキュメントの内容が編集されたときのフック
	virtual void		OnEdit(
		CDocumentIF*	pDoc
	);

	virtual void		OnSetting(
		CDocumentIF*	pDoc
	);

	void RefreshCore(
		CDocumentIF*	pDoc,
		BOOL			bForceUpdate = FALSE
	);

	static BOOL	Simulate(
		EHTMLMode		eMode,
		CStringList*	plistStrz
	);

	static BOOL	RemakeHTMLShitaraba(
		CStringList*	plistStrz
	);
	static BOOL	RemakeHTML2Ch(
		CStringList*	plistStrz
	);

	static BOOL GenerateHead(
		CStdioFile*	pStdFile,
		CString	strTitle
	);

	void OnToolButton(
		CDocumentIF*	pDocIF,
		int				idxButton
	);

	void OnToolButtonUI(
		CDocumentIF*	pDocIF,
		int				idxButton,
		CCmdUI*			pCmdUI
	);

	void	Load( CDocumentIF*	pDocIF );
	void	Save( CDocumentIF*	pDocIF );

protected:
	EHTMLMode	m_eHTMLMode;
	BOOL		m_bAutoUpdate;
	BOOL		m_bToolBar;
	BOOL		m_bInitialized;
};

#endif // !defined(AFX_SHITARABIANPLUGINHTMLSIM_H__4BA1A1CC_898D_4C02_B97C_FA0BC4C6F630__INCLUDED_)
