#ifndef KOTTUI_H #define KOTTUI_H #include "../materialsystem/imaterialsystem.h" #include "../materialsystem/igamewindow.h" #include "tier2/iappsystem.h" abstract_class IRenderFont { public: virtual IImage *GetAtlas(); virtual bool IsLetterPresent( uint32_t letter ); virtual float GetLetterX( uint32_t letter ); virtual float GetLetterY( uint32_t letter ); virtual float GetWidthX( uint32_t letter ); virtual float GetWidthY( uint32_t letter ); }; abstract_class IKotUIBuffer { public: virtual void SetPosition( int iY, int iX ) = 0; virtual void Move( int iY, int iX ) = 0; virtual void SetColor( char c ) = 0; virtual void Clear( char c ) = 0; virtual void PutChar( char c ) = 0; virtual void Printf(const char *szFormat, ...) = 0; virtual void Draw( IRenderContext *pRenderContext ); virtual void SetTextSize( int iY, int iX ) = 0; virtual void SetTextFont( IRenderFont *pFont ) = 0; }; abstract_class IKotUIManager: public IAppSystem { public: virtual void CreateBuffer( int iWidth, int iHeight ) = 0; }; IKotUIManager *KotUIManager(); #define KOT_UI_INTEFACE_VERSION "KotUI001" #endif