Rev 1 | Blame | Compare with Previous | Last modification | View Log | RSS feed
// LcdCustomScreen.h: interface for the CLcdCustomScreen class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_LCDCUSTOMSCREEN_H__163A2AEC_D603_4C3F_AD7F_E0C7E9A2696E__INCLUDED_)
#define AFX_LCDCUSTOMSCREEN_H__163A2AEC_D603_4C3F_AD7F_E0C7E9A2696E__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <Utils/WStringList.h>
#include "EZ_LCD.h"
typedef struct SText {
struct SText *pNext;
HANDLE hObject;
Utils::WString sText;
} SText;
typedef struct SMoveObject {
struct SMoveObject *pNext;
HANDLE hObject;
int iStartX;
int iStartY;
int iEndX;
int iEndY;
int iTotalTime;
int iTimeRemaining;
bool bRepeat;
} SMoveObject;
class CLcdCustomScreen
{
public:
void AddMoveObject ( SMoveObject * );
void AddText ( SText * );
bool loadScript (const Utils::WString &, const Utils::WString&, const Utils::WString &filename);
void Reset ();
bool Display ();
Utils::WString parseFilename(const Utils::WString &filename, const Utils::WString &dir);
void setVarible (const Utils::WString &v, size_t pos);
CLcdCustomScreen( CEzLcd * );
virtual ~CLcdCustomScreen();
private:
void IncreaseArraySize ();
int m_iCycles;
int m_iArraySize;
HANDLE *m_pHandles;
bool m_bDebug;
Utils::WStringList _lDebugLog;
Utils::WStringList _lVaribles;
CEzLcd *m_pLcd;
int m_iStartPage;
SMoveObject *m_pMoveObject, *m_pEndMoveObject;
SText *m_pText, *m_pEndText;
HINSTANCE m_hInstance;
HANDLE m_hDebug[5];
Utils::WString m_sProgDir;
Utils::WString m_sGameDir;
Utils::WString m_sScriptDir;
};
#endif // !defined(AFX_LCDCUSTOMSCREEN_H__163A2AEC_D603_4C3F_AD7F_E0C7E9A2696E__INCLUDED_)