#ifndef MarkerItem_First #define MarkerItem_First #ifdef __GNUG__ #pragma interface #endif #include "TextMarks.h" #include "Command.h" //---- MarkerItem -------------------------------------------------------------- class MarkerItem : public VisualMark { public: MetaDef(MarkerItem); MarkerItem(const char *name, const char *type); ~MarkerItem(); void Draw(const Point &p, const Rectangle &clip, const Rectangle &lr, bool border); const char *Name() { return name; } const char *Type() { return type; } void SetName(const char *name); void SetType(const char *type); //---- printing OStream& PrintOn(OStream&); IStream& ReadFrom(IStream&); private: char *name, *type; }; //---- ChangeMarkerCommand ----------------------------------------------------- class ChangeMarkerCommand: public Command { MarkerItem *item; char *newName, *oldName; char *newType, *oldType; public: ChangeMarkerCommand(const char *cmd, int cmdNo, MarkerItem *item, const char *newName, const char *newType); ~ChangeMarkerCommand(); void DoIt(); void UndoIt(); }; #endif