home *** CD-ROM | disk | FTP | other *** search
- #ifndef CPP_LIBRARIES_GADTOOLS_H
- #define CPP_LIBRARIES_GADTOOLS_H
-
- // GadTools Klassen
- //
- // Autor: Jochen Becher
- //
- // Historie:
- // Version 1.0, am 9. Januar 94
-
- #ifndef LIBRARIES_GADTOOLS_H
- #include <libraries/gadtools.h>
- #endif
-
- #ifndef INTUITION_INTUITION_H
- #include <intuition/intuition.h>
- #endif
-
- #ifndef INTUITION_GADGETCLASS_H
- #include <intuition/gadgetclass.h>
- #endif
-
- #ifndef CPP_DATASTRUCTURES_GENARRAYLIST_H
- #include <classes/datastructures/genarraylist.h>
- #endif
-
- #ifndef CPP_DATASTRUCTURES_STRINGARRAY_H
- #include <classes/datastructures/stringarray.h>
- #endif
-
- #ifndef CPP_INTUITION_SCREEN_H
- #include <classes/intuition/screen.h>
- #endif
-
- #ifndef CPP_INTUITION_WINDOW_H
- #include <classes/intuition/window.h>
- #endif
-
- #ifndef CPP_UTILITY_TAGITEM_H
- #include <classes/utility/tagitem.h>
- #endif
-
- #ifndef CPP_INTUITION_GADGETS_H
- #include <classes/intuition/gadgets.h>
- #endif
-
- #ifndef CPP_GRAPHICS_TEXT_H
- #include <classes/graphics/text.h>
- #endif
-
- #ifndef CPP_EXCEPTIONS_EXCEPTIONS_H
- #include <classes/exceptions/exceptions.h>
- #endif
-
- class VisualInfoC {
- public:
- VisualInfoC() throw (MemoryX);
- VisualInfoC(ScreenC &) throw (VisualInfoX, MemoryX);
- VisualInfoC(WindowC &) throw (VisualInfoX, MemoryX);
- VisualInfoC(const VisualInfoC &);
- ~VisualInfoC();
- VisualInfoC &operator= (const VisualInfoC &);
- BOOL isValid() const { return vi != NULL; };
- APTR visualInfo() const { return vi; };
- VOID getInfo(ScreenC &) throw (VisualInfoX);
- VOID getInfo(WindowC &) throw (VisualInfoX);
- VOID freeInfo();
- protected:
- APTR vi;
- };
-
- // **********************************************************
-
- class MenuC;
-
- class MenuEventC {
- friend class MenuC;
- friend class MenuPickHandlerC;
- friend class MenuHelpHandlerC;
- public:
- virtual BOOL pick(WindowC *, MenuC *, IntuiMessageC *) { return FALSE; };
- virtual VOID help(WindowC *, MenuC *, IntuiMessageC *) { };
- };
-
- class MenuItemC : public NodeC {
- friend class MenuTitleC;
- public:
- MenuItemC(STRPTR name, const MenuEventC * = NULL,
- STRPTR shortKey = NULL, BOOL disabled = FALSE,
- BOOL checkmark = FALSE, BOOL checked = FALSE);
- virtual VOID rebuild(gen_arraylist &);
- private:
- struct NewMenu newmenu;
- };
-
- class MenuSeperatorC : public MenuItemC {
- public:
- MenuSeperatorC();
- };
-
- class MenuSubtitleC : public MenuItemC, protected ListC {
- public:
- MenuSubtitleC(STRPTR name, const MenuEventC * = NULL,
- BOOL disabled = FALSE);
- VOID add(MenuItemC &);
- VOID rebuild(gen_arraylist &);
- };
-
- class MenuTitleC : public NodeC, protected ListC {
- friend class MenuC;
- public:
- MenuTitleC(STRPTR name, const MenuEventC * = NULL,
- BOOL disabled = FALSE);
- VOID add(MenuItemC &);
- virtual VOID rebuild(gen_arraylist &);
- private:
- struct NewMenu newmenu;
- };
-
- class MenuC : protected ListC {
- friend class WindowC;
- public:
- MenuC(VisualInfoC &);
- ~MenuC();
- struct Menu *menu() const { return strip };
- VOID add(MenuTitleC &);
- BOOL layout(Tag tag1type, ...);
- BOOL layout(struct TagItem *tags = NULL);
- BOOL isLayouted() const { return layouted; };
- private:
- struct Menu *strip;
- BOOL layouted;
- VisualInfoC *visualinfo;
- gen_arraylist newmenu;
- };
-
- class MenuEventHandlerC : public IDCMPEventHandlerC {
- public:
- MenuEventHandlerC(MenuC &, ULONG IDCMPclass);
- ~MenuEventHandlerC();
- protected:
- MenuC *menu;
- };
-
- class MenuPickHandlerC : public MenuEventHandlerC {
- public:
- MenuPickHandlerC(MenuC &);
- ~MenuPickHandlerC();
- BOOL exit() { return _exit; };
- protected:
- BOOL _handle(IntuiMessageC &);
- BOOL _exit;
- };
-
- class MenuHelpHandlerC : public MenuEventHandlerC {
- public:
- MenuHelpHandlerC(MenuC &);
- ~MenuHelpHandlerC();
- protected:
- BOOL _handle(IntuiMessageC &);
- };
-
- // ***********************************************************
-
- class GTIDCMPortC : public IDCMPortC {
- public:
- GTIDCMPortC() throw (PortX, MemoryX)
- : IDCMPortC() { };
- GTIDCMPortC(STRPTR name, BYTE pri = 0) throw (PortX, MemoryX)
- : IDCMPortC(name,pri) { };
- GTIDCMPortC(struct MsgPort *port) throw (PortX, MemoryX)
- : IDCMPortC(port) { };
- BOOL handle(ULONG);
- protected:
- BOOL handleMsg(MessageC &);
- };
-
- class GTWindowC : public WindowC {
- public:
- GTWindowC(GTIDCMPortC &, Tag tag1Type, ...) throw (MemoryX);
- GTWindowC(GTIDCMPortC &, struct TagItem *tags = NULL) throw (MemoryX);
- ~GTWindowC();
- VOID open(Tag tag1Type, ...) throw (WindowX, MemoryX)
- { GTWindowC::open((struct TagItem *) &tag1Type); };
- VOID open(struct TagItem *tagList = NULL) throw (WindowX, MemoryX);
- VOID refreshGadgets();
- VOID beginRefresh();
- VOID endRefresh(BOOL Complete = TRUE);
- VOID refreshFrame();
- protected:
- VOID freeIDCMP();
- };
-
- class GTWindowRefreshHandlerChainC : public WindowRefreshHandlerChainC {
- public:
- GTWindowRefreshHandlerChainC(GTWindowC &w);
- BOOL handle(MessageC &);
- protected:
- GTWindowC *gtwindow;
- };
-
- // ************************************************************
-
- class GTGadgetC : public GadgetC {
- friend class GTGadgetListC;
- public:
- GTGadgetC(GadgetEventC *, ULONG kind,
- WORD LeftEdge, WORD TopEdge, WORD Width, WORD Height,
- STRPTR label, ULONG flags, ULONG defaultplace,
- const TextAttrC *, UWORD id, struct TagItem *taglist);
- GTGadgetC(GadgetEventC *, ULONG kind,
- WORD LeftEdge, WORD TopEdge, WORD Width, WORD Height,
- STRPTR label, ULONG flags, ULONG defaultplace,
- const TextAttrC *, UWORD id, Tag tag1type, ...);
- ~GTGadgetC();
- struct Gadget *rebuild(struct Gadget *prev);
- VOID erase(WindowC *);
- VOID setLeft(WORD left);
- VOID setTop(WORD top);
- VOID setWidth(WORD width);
- VOID setHeight(WORD height);
- WORD left() const { return ngadget.ng_LeftEdge; };
- WORD top() const { return ngadget.ng_TopEdge; };
- WORD width() const { return ngadget.ng_Width; };
- WORD height() const { return ngadget.ng_Height; };
- WORD leftBorder() const { return leftB; };
- WORD rightBorder() const { return rightB; };
- WORD topBorder() const { return topB; };
- WORD bottomBorder() const { return bottomB; };
- BOOL disable(BOOL value);
- BOOL isDisabled();
- VOID setTextAttr(const TextAttrC *);
- VOID setDefTextAttr(const TextAttrC *);
- TextAttrC *textAttr() const { return (TextAttrC *) ngadget.ng_TextAttr; };
- VOID setAttrs(struct TagItem *taglist);
- VOID setAttrs(Tag tag1type, ...);
- LONG getAttrs(struct TagItem *taglist);
- LONG getAttrs(Tag tag1type, ...);
- STRPTR label() const { return ngadget.ng_GadgetText; };
- ULONG flags() const { return ngadget.ng_Flags; };
- ULONG labelPlace();
- protected:
- TagItemC *taglist() { return &tags; };
- struct NewGadget *newgadget() { return &ngadget; };
- virtual VOID calcBorders();
- VisualInfoC *vinfo() const { return vi; };
- WORD leftB;
- WORD rightB;
- WORD topB;
- WORD bottomB;
- WORD labelWidth;
- GTWindowC *window;
- private:
- ULONG gadgetkind;
- VisualInfoC *vi;
- struct NewGadget ngadget;
- TagItemC tags;
- BOOL privtattr;
- };
-
- class GTGadgetListC : public GadgetListC {
- public:
- GTGadgetListC(const TextAttrC &, VisualInfoC &, GTWindowC &);
- ~GTGadgetListC();
- VOID add(GTGadgetC &);
- struct Gadget *rebuild(struct Gadget *prev);
- VOID setTextAttr(const TextAttrC *);
- private:
- TextAttrC *textattr;
- VisualInfoC *vi;
- struct Gadget *lastGadget;
- GTWindowC *window;
- };
-
- class GTAnchorGadgetListC : public GTGadgetListC {
- public:
- GTAnchorGadgetListC(const TextAttrC &, VisualInfoC &, GTWindowC &);
- ~GTAnchorGadgetListC();
- BOOL deepfollow() { return FALSE; };
- };
-
- class GTRootGadgetListC {
- public:
- GTRootGadgetListC(GTWindowC &, const TextAttrC &, VisualInfoC &);
- ~GTRootGadgetListC();
- VOID add(GTGadgetC &);
- VOID rebuild(BOOL refresh = TRUE);
- VOID erase();
- VOID refresh();
- VOID setTextAttr(const TextAttrC *);
- private:
- GTGadgetListC glist;
- GTWindowC *window;
- };
-
- // *************************************************************
-
- class GTButtonC : public GTGadgetC, public GButtonC {
- public:
- GTButtonC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTButtonC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return BUTTONIDCMP; };
- };
-
- class GTStringC : public GTGadgetC, public GStringC {
- public:
- GTStringC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTStringC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- BOOL activate(BOOL value) { return FALSE; };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return STRINGIDCMP; };
- VOID set(STRPTR);
- STRPTR get();
- private:
- String str;
- };
-
- class GTIntegerC : public GTGadgetC, public GIntegerC {
- public:
- GTIntegerC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTIntegerC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- BOOL activate(BOOL value) { return FALSE; };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return STRINGIDCMP; };
- VOID set(LONG);
- LONG get();
- };
-
- class GTCheckboxC : public GTGadgetC, public GCheckboxC {
- public:
- GTCheckboxC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTCheckboxC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return CHECKBOXIDCMP; };
- VOID check(BOOL);
- BOOL checked();
- };
-
- class GTRadioEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- // Achtung: Das Tag GTMX_Labels MUSS mit einem Parameter NULL angegeben
- // werden (CreateGadgetA benutzt offensichtlich nicht die utility.library)
-
- class GTRadioC : public GTGadgetC, public GRadioC {
- public:
- GTRadioC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height, stringarray &buttonLabels,
- STRPTR label = NULL, ULONG flags = 0, ULONG place = 0,
- const TextAttrC * = NULL, UWORD id = 0, struct TagItem *taglist = NULL);
- GTRadioC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height, stringarray &buttonLabels,
- STRPTR label, ULONG flags, ULONG place, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev);
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return MXIDCMP; };
- VOID select(ULONG);
- ULONG selected();
- protected:
- VOID calcBorders();
- private:
- ULONG labelsplace;
- stringarray labels;
- };
-
- class GTCycleEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- // Achtung: Das Tag GTCY_Labels MUSS mit einem Parameter NULL angegeben
- // werden (CreateGadgetA benutzt offensichtlich nicht die utility.library)
-
- class GTCycleC : public GTGadgetC, public GCycleC {
- public:
- GTCycleC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height, stringarray &cyclelabels,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTCycleC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height, stringarray &cyclelabels,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev);
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return CYCLEIDCMP; };
- VOID select(ULONG);
- ULONG selected();
- VOID setLabels(STRPTR *);
- VOID setLabels(STRPTR label1, ...);
- STRPTR *getLabels();
- ULONG labelsCount();
- UWORD addLabel(STRPTR label);
- VOID remLabel(UWORD count);
- private:
- stringarray labels;
- };
-
- class GTSliderEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- class GTSliderC : public GTGadgetC, public GSliderC {
- public:
- GTSliderC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label = NULL, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTSliderC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return SLIDERIDCMP; };
- VOID calcBorders();
- VOID setMin(UWORD);
- VOID setMax(UWORD);
- VOID setLevel(UWORD);
- UWORD min();
- UWORD max();
- UWORD level();
- };
-
- class GTScrollerEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- class GTScrollerC : public GTGadgetC, public GScrollerC {
- public:
- GTScrollerC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label = NULL, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTScrollerC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return SCROLLERIDCMP; };
- VOID setPot(UWORD);
- VOID setTotal(UWORD);
- VOID setVisible(UWORD);
- UWORD pot();
- UWORD total();
- UWORD visible();
- };
-
- class GTListviewEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- class GTListviewC : public GTGadgetC, public GListviewC {
- public:
- GTListviewC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTListviewC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return LISTVIEWIDCMP; };
- VOID select(ULONG);
- ULONG selected();
- VOID clearSelection();
- VOID setList(EListC *header = NULL);
- EListC *getList();
- VOID detachList();
- VOID attachList();
- private:
- EListC *list;
- };
-
- class GTPaletteEventC : public GadgetEventC {
- public:
- VOID up(WindowC *, GadgetC *, IntuiMessageC *);
- };
-
- class GTPaletteC : public GTGadgetC, public GPaletteC {
- public:
- GTPaletteC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label = NULL, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTPaletteC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- VOID free();
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return PALETTEIDCMP; };
- VOID select(ULONG);
- ULONG selected();
- };
-
- class GTTextC : public GTGadgetC, public GTextC {
- public:
- GTTextC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTTextC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return TEXTIDCMP; };
- VOID set(STRPTR);
- STRPTR get();
- };
-
- class GTNumberC : public GTGadgetC, public GNumberC {
- public:
- GTNumberC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags = 0, const TextAttrC * = NULL,
- UWORD id = 0, struct TagItem *taglist = NULL);
- GTNumberC(GadgetEventC *, WORD LeftEdge, WORD TopEdge,
- WORD Width, WORD Height,
- STRPTR label, ULONG flags, const TextAttrC *, UWORD id,
- Tag tag1Type, ...);
- struct Gadget *rebuild(struct Gadget *prev) { return GTGadgetC::rebuild(prev); };
- VOID erase(WindowC *w) { GTGadgetC::erase(w); };
- VOID setLeft(WORD leftEdge) { GTGadgetC::setLeft(leftEdge); };
- VOID setTop(WORD topEdge) { GTGadgetC::setTop(topEdge); };
- VOID setWidth(WORD width) { GTGadgetC::setWidth(width); };
- VOID setHeight(WORD height) { GTGadgetC::setHeight(height); };
- WORD left() const { return GTGadgetC::left(); };
- WORD top() const { return GTGadgetC::top(); };
- WORD width() const { return GTGadgetC::width(); };
- WORD height() const { return GTGadgetC::height(); };
- WORD leftBorder() const { return GTGadgetC::leftBorder(); };
- WORD rightBorder() const { return GTGadgetC::rightBorder(); };
- WORD topBorder() const { return GTGadgetC::topBorder(); };
- WORD bottomBorder() const { return GTGadgetC::bottomBorder(); };
- BOOL disable(BOOL value) { return GTGadgetC::disable(value); };
- BOOL isDisabled() { return GTGadgetC::isDisabled(); };
- VOID setTextAttr(const TextAttrC *t) { GTGadgetC::setTextAttr(t); };
- VOID setDefTextAttr(const TextAttrC *t) { GTGadgetC::setDefTextAttr(t); };
- TextAttrC *textAttr() const { return GTGadgetC::textAttr(); };
- ULONG idcmp() const { return NUMBERIDCMP; };
- VOID set(LONG);
- LONG get();
- };
-
- #endif
-