home *** CD-ROM | disk | FTP | other *** search
- #ifndef CPP_BOOPSI_DECORGADGETS_H
- #define CPP_BOOPSI_DECORGADGETS_H
-
- // Einige Schmuckelemente für die Oberfläche als BOOPSI Gadget Klassen
- //
- // BevelboxClass : ein Rahmen mit einem (optionalen) Titel
- // BevellineClass : eine senkrechte oder waagrechte Line mit Titel
- //
- // Autor: Jochen Becher
- //
- // Historie:
- // Version 1.0 am 26. Februar 94
-
- #ifndef CPP_BOOPSI_BOOPSICLASS_H
- #include <classes/boopsi/boopsiclass.h>
- #endif
-
- #ifndef CPP_BOOPSI_GADGETCLASS_H
- #include <classes/boopsi/gadgetclass.h>
- #endif
-
- #ifndef CPP_BOOPSI_IMAGECLASS_H
- #include <classes/boopsi/imageclass.h>
- #endif
-
- #ifndef CPP_BOOPSI_IMAGES_H
- #include <classes/boopsi/images.h>
- #endif
-
- #define BB_LabelAbove 0
- #define BB_LabelLine 1
-
- #define BBA_Font (TAG_USER+ 1) // (ISG), struct TextAttr *
- #define BBA_Highlighted (TAG_USER+ 2) // (I.G), BOOL
- #define BBA_TopBorder (TAG_USER+ 3) // (..G), LONG
- #define BBA_LeftBorder (TAG_USER+ 4) // (..G), LONG
- #define BBA_RightBorder (TAG_USER+ 5) // (..G), LONG
- #define BBA_BottomBorder (TAG_USER+ 6) // (..G), LONG
- #define BBA_InnerTopBorder (TAG_USER+ 7) // (..G), LONG
- #define BBA_InnerLeftBorder (TAG_USER+ 8) // (..G), LONG
- #define BBA_InnerRightBorder (TAG_USER+ 9) // (..G), LONG
- #define BBA_InnerBottomBorder (TAG_USER+10) // (..G), LONG
- #define BBA_LabelPlace (TAG_USER+11) // (I.G), ULONG
- #define BBA_Pattern (TAG_USER+12) // (I.G), Object *
- #define BBA_Frame (TAG_USER+13) // (I.G), BOOL
-
- class BevelboxClass : public BoopsiClass {
- public:
- BevelboxClass();
- private:
- static ULONG dispatcher(Class *cl, Object *o, Msg msg);
- static ULONG renderBevelbox(Class *cl, struct Gadget *g,
- struct gpRender *msg, struct BevelboxData *);
- static VOID calcBorders(Class *cl, struct Gadget *g,
- struct BevelboxData *);
- };
-
- class BBevelboxC : public BGadgetC {
- public:
- BBevelboxC(WindowC &w, Tag tag1type, ...)
- : BGadgetC(NULL,bbgc.boopsiclass(),NULL,w,(struct TagItem *) &tag1type) { };
- BBevelboxC(WindowC &w, struct TagItem *tags)
- : BGadgetC(NULL,bbgc.boopsiclass(),NULL,w,tags) { };
- VOID erase(WindowC *);
- WORD leftBorder() const { return getAttr(BBA_LeftBorder); };
- WORD topBorder() const { return getAttr(BBA_TopBorder); };
- WORD rightBorder() const { return getAttr(BBA_RightBorder); };
- WORD bottomBorder() const { return getAttr(BBA_BottomBorder); };
- VOID setTextAttr(const TextAttrC *f) { setAttrs(BBA_Font,f,TAG_END); };
- TextAttrC *textAttr() const { return (TextAttrC *) getAttr(BBA_Font); };
- protected:
- BBevelboxC(GadgetEventC *ev, struct IClass *c, STRPTR pubclass,
- WindowC &w, struct TagItem *tags)
- : BGadgetC(ev,NULL,pubclass,w,tags) { };
- private:
- static BevelboxClass bbgc;
- };
-
- // *************************************************************
-
- #define BL_LabelAbove 0
- #define BL_LabelLine 1
-
- #define BLA_Font (TAG_USER+ 1) // (ISG), struct TextAttr *
- #define BLA_Highlighted (TAG_USER+ 2) // (I.G), BOOL
- #define BLA_Vertical (TAG_USER+ 3) // (I.G), BOOL
- #define BLA_TopBorder (TAG_USER+ 4) // (..G)
- #define BLA_LeftBorder (TAG_USER+ 5) // (..G)
- #define BLA_RightBorder (TAG_USER+ 6) // (..G)
- #define BLA_BottomBorder (TAG_USER+ 7) // (..G)
- #define BLA_LabelPlace (TAG_USER+ 8) // (I.G), ULONG
-
- class BevellineClass : public BoopsiClass {
- public:
- BevellineClass();
- private:
- static ULONG dispatcher(Class *cl, Object *o, Msg msg);
- static ULONG renderBevelline(Class *cl, struct Gadget *g,
- struct gpRender *msg, struct BevellineData *);
- static VOID calcBorders(Class *cl, struct Gadget *g,
- struct BevellineData *);
- };
-
- class BBevellineC : public BGadgetC {
- public:
- BBevellineC(WindowC &w, Tag tag1type, ...)
- : BGadgetC(NULL,blgc.boopsiclass(),NULL,w,(struct TagItem *) &tag1type) { };
- BBevellineC(WindowC &w, struct TagItem *tags)
- : BGadgetC(NULL,blgc.boopsiclass(),NULL,w,tags) { };
- VOID erase(WindowC *);
- WORD leftBorder() const { return getAttr(BLA_LeftBorder); };
- WORD topBorder() const { return getAttr(BLA_TopBorder); };
- WORD rightBorder() const { return getAttr(BLA_RightBorder); };
- WORD bottomBorder() const { return getAttr(BLA_BottomBorder); };
- VOID setTextAttr(const TextAttrC *f) { setAttrs(BLA_Font,f,TAG_END); };
- TextAttrC *textAttr() const { return (TextAttrC *) getAttr(BLA_Font); };
- protected:
- BBevellineC(GadgetEventC *ev, struct IClass *c, STRPTR pubclass,
- WindowC &w, struct TagItem *tags)
- : BGadgetC(ev,NULL,pubclass,w,tags) { };
- private:
- static BevellineClass blgc;
- };
-
- #endif
-