//*****************************************************************************
//*  TutInter.hpp                                                             *
//*****************************************************************************
//*                                                                           *
//* This file contains the declaration of the TUT_Interface class,            *
//* the interface of the TUT dll.                                             *
//*                                                                           *
//*****************************************************************************
//* Author : Alexis Vaisse                                                    *
//*****************************************************************************


#ifndef __TUTINTER_HPP__
#define __TUTINTER_HPP__

#define DLL_ONLY_ONE_INSTANCE


//-----------------------------------------------------------------------------

class TUT_Interface : public CPA_ToolDLLBase
{
public:
    TUT_Interface ();    // Constructor;

    void fn_vConstruct	(void);
	long OnQueryAction	(CPA_EditorBase * _pCallingDll , WPARAM , LPARAM);
	BOOL _OnKeyDown     (UINT nChar , UINT nRepCnt , UINT nFlags);
  //Menus
    BOOL fn_bDefineSubMenu      (EDT_SubMenu *_p_oEDTSubMenu);
	void _OnSubMenuCommand	    (EDT_SubMenu *_p_oEDTSubMenu,UINT uiMsgID);
private:
	BOOL	m_bAutoRun;				// TRUE if the Script must be run in the fn_vConstruct
	BOOL	m_bBackGroundActive;	// TRUE if the "CTRL+SHIFT" is actived
	CString m_csScriptFileName;		// Name of the Script File to execute
	CString m_csScriptPathName;		// Name of the Script File to execute
	BOOL	m_bScriptRecursive;
	BOOL	m_bRecording;
private:
	void	m_fn_vLoadPreferences	(void);
	void	m_fn_vWritePreferences	(void);
	void	m_fn_vStartStopRecord	(void);
};

//-----------------------------------------------------------------------------


extern tdstDLLIdentity g_stTUT_Identity;


#endif // __TUTINTER_HPP__
