Subversion Repositories spk

Rev

Rev 185 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#ifndef __X3OVERLAY_H__
#define __X3OVERLAY_H__

#include "Overlay.h"
#include "StringList.h"

class CDisplay;

typedef struct SMessages
{
        CyString        sHeader;
        CyString        sText;
        long    iTimeout;
        int             iHeight;
} SMessages;

class CX3Overlay : public COverlay
{
public:
        CX3Overlay () : COverlay ()
        {
                m_lDisplays = NULL;
                m_lPermDisplays = NULL;
                m_pDisplay = NULL;
                m_bGetKeyboard = true;
                m_lCurrentTime = 0;
                m_sLang = "44";
                m_sTextfile = "9006";
            CoInitialize (NULL);

                Init();
        }

        void SetLogDir(const char *logDir) { m_sLogDir = logDir; }
        void SetGameDir(const char *dir) { m_sGameDir = dir; }

        void Init();

        ~CX3Overlay ();

        virtual void Send ( CyString data );
        virtual bool KeyDown ( int key );
        virtual void render (MyDirect3DDevice9 *);
        virtual void init (MyDirect3DDevice9 *);
        virtual bool MouseClick   ( int but );
        virtual void MouseRelease ( int but );

        virtual bool HaltMouse ();

        void WriteTextFile ();

        CDisplay *FindDisplay(const CyString &name);

private:
        CDisplay *m_pDisplay;

        CLinkList<CDisplay> *m_lDisplays;
        CLinkList<CDisplay> *m_lPermDisplays;

        size_t  m_lCurrentTime;

        CyStringList m_lSend;

        CyString m_sLang;
        CyString m_sTextfile;
        Utils::String m_sLogDir;
        CyString m_sGameDir;
        CyString m_sGameExe;
};

#endif //__X3OVERLAY_H__