00001
00002
00003 #ifndef LABEL_H
00004 #define LABEL_H
00005
00006 #include <qtextstream.h>
00007 #include <qfont.h>
00008 #include <qcolor.h>
00009 #include <qsimplerichtext.h>
00010 #include <qstringlist.h>
00011 #include "Point.h"
00012
00013 class Label {
00014 public:
00015 Label(QString string = QString(""), QFont font = QFont(QString("Adobe Times"),14),QColor color = QColor("black"));
00016 QStringList Info();
00017 void save(QTextStream *ts);
00018 void open(QTextStream *ts,int version);
00019 void draw(QPainter *p,Point pos,Point size, int w, int h);
00020 void drawY(QPainter *p,Point pos,Point size, int w, int h,double phi);
00021 bool inside(int x0, int y0, Point pos, Point size, int w, int h);
00022 bool insideY(int x0, int y0, Point pos, Point size, int w, int h);
00023 bool insideZ(int x0, int y0, Point pos, Point size, int w, int h);
00024 void setPosition(double X, double Y) { x=X; y=Y; }
00025 double X() { return x;}
00026 double Y() { return y;}
00027 QString title() { return t; }
00028 void setTitle(QString title) { t = title; }
00029 void setColor(QColor color) { c = color; }
00030 QColor color() { return c; }
00031 void setFont(QFont font) { f = font; }
00032 QFont font() { return f; }
00033 void setBoxed(bool b) { boxed = b; }
00034 bool Boxed() { return boxed; }
00035 private:
00036 double x, y;
00037 QString t;
00038 QFont f;
00039 QColor c;
00040 QSimpleRichText *richtext;
00041 bool boxed;
00042 };
00043
00044 #endif //LABEL_H