#ifndef __SHAPE_H__ #define __SHAPE_H__ #include #include #include #include namespace mogltk { typedef enum { LEFT, CENTER, RIGHT } align_t; class shape : public Base { public: virtual void pixel(int x, int y, ColorP = WHITE); virtual void box(int x1, int y1, int x2, int y2, ColorP = WHITE); virtual void box3d(int x1, int y1, int x2, int y2, ColorP = DOS_WHITE, ColorP = DOS_HIGH_WHITE, ColorP = DOS_GRAY, int = 2, bool = false); virtual void box(int x1, int y1, int x2, int y2, ColorP, ColorP, ColorP, ColorP); virtual void obox(int x1, int y1, int x2, int y2, ColorP = WHITE); virtual void obox3d(int x1, int y1, int x2, int y2, ColorP = DOS_HIGH_WHITE, ColorP = DOS_GRAY, bool = false); virtual void obox(int x1, int y1, int x2, int y2, ColorP, ColorP, ColorP, ColorP); virtual void tbox(texture *, int x1, int y1, int x2, int y2, int tx = 0, int ty = 0, double = 1.0, ColorP = WHITE); virtual void tbox(texture *, int x1, int y1, int x2, int y2, int tx1, int ty1, int tx2, int ty2, ColorP = WHITE); virtual void tbox(texture *, int x1, int y1, int x2, int y2, ColorP, ColorP, ColorP, ColorP, int tx = 0, int ty = 0, double = 1.0); virtual void tbox(texture *, int x1, int y1, int x2, int y2, ColorP, ColorP, ColorP, ColorP, int tx1, int ty1, int tx2, int ty2); virtual void hline(int x1, int x2, int y, ColorP = WHITE); virtual void hline3d(int x1, int x2, int y, ColorP = DOS_HIGH_WHITE, ColorP = DOS_GRAY, bool = false); virtual void hline(int x1, int x2, int y, ColorP, ColorP); virtual void vline(int x, int y1, int y2, ColorP = WHITE); virtual void vline3d(int x, int y1, int y2, ColorP = DOS_HIGH_WHITE, ColorP = DOS_GRAY, bool = false); virtual void vline(int x, int y1, int y2, ColorP, ColorP); virtual void window(int x1, int y1, int x2, int y2, const String & title = "", ColorP titlecolor = DOS_HIGH_WHITE, ColorP titlebackcolor = DOS_MAGENTA, ColorP front = DOS_WHITE, ColorP shade1 = DOS_HIGH_WHITE, ColorP shade2 = DOS_GRAY); virtual void text(int x, int y, const String &, ColorP textcolor = DOS_HIGH_WHITE, align_t align = LEFT); virtual void text3d(int x, int y, const String &, ColorP textcolor = DOS_BLACK, ColorP shade1 = DOS_HIGH_WHITE, ColorP shade2 = DOS_GRAY, align_t align = LEFT, bool bevel = false); virtual void button(int x1, int y1, int x2, int y2, const String &, bool bevel = false, ColorP front = DOS_WHITE, ColorP shade1 = DOS_HIGH_WHITE, ColorP shade2 = DOS_GRAY, ColorP round = DOS_BLACK, ColorP textcolor = DOS_BLACK, ColorP tshade1 = DOS_HIGH_WHITE, ColorP tshade2 = DOS_GRAY); private: virtual bool Enter(); virtual void Leave(bool); }; }; #endif