#ifndef VCONTEXT_H #define VCONTEXT_H #include <map> #include <list> #include <string> #include <objgfx40.h> #include <sStyle.h> class vContext : public ogSurface { protected: std::map<const std::string, sStyle *> styles; std::list<vContext *> cContexts; // child contexts vContext * pContext; // parent context ogSurface * realView; int32 curX, curY; uInt32 width, height; bool attached; public: vContext(vContext *); virtual vContext * Attach(vContext *); virtual void DeleteAllStyles(void) { styles.clear(); }; virtual bool DeleteStyle(const std::string); virtual void Draw(void); virtual vContext * Detach(vContext *); virtual sStyle * GetStyle(const std::string); virtual bool IsAttached(void) { return attached; } virtual void SetPos(int32, int32); virtual void SetSize(uInt32, uInt32); virtual void SetStyle(const std::string, sStyle *); virtual ~vContext(); }; // vContext #endif