//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // // $NoKeywords: $ //=============================================================================// #ifndef IPAINTHTML_H #define IPAINTHTML_H class IPaintHTML { public: enum EPaintTarget { ePaintBrowser, ePaintPopup, ePaintMAX }; // returns the texture id used, pass in -1 to create a new texture virtual int DrawSubTextureRGBA(EPaintTarget eTarget, int textureID, int x, int y, const unsigned char *pRGBA, int wide, int tall) = 0; virtual void DeleteTexture(EPaintTarget eTarget, int textureID) = 0; }; class IInputEventHTML { public: enum EMouseButton { eButtonLeft, eButtonMiddle, eButtonRight }; virtual bool ChromeHandleMouseClick(EMouseButton eButton, bool bUp, int nClickCount) = 0; virtual bool ChromeHandleMouseMove(int x, int y) = 0; virtual bool ChromeHandleMouseWheel(int delta) = 0; enum EKeyType { KeyDown, KeyUp, Char }; enum EKeyModifier { AltDown = 1, CrtlDown = 2, ShiftDown = 4, }; virtual bool ChromeHandleKeyEvent(EKeyType type, int key, int modifiers, bool bKeyUp) = 0; }; #endif // IPAINTHTML_H