Updraft  1.0
Open source glider flight visualisation tool.
infotexts.h
Go to the documentation of this file.
00001 #ifndef UPDRAFT_SRC_PLUGINS_IGCVIEWER_INFOTEXTS_H_
00002 #define UPDRAFT_SRC_PLUGINS_IGCVIEWER_INFOTEXTS_H_
00003 
00004 #include <QTextEdit>
00005 #include <QTime>
00006 #include "graphlabels.h"
00007 
00008 namespace Updraft {
00009 namespace IgcViewer {
00010 
00012 class PickedLabel : public Label {
00013  public:
00016   Qt::Orientations expandingDirections() const;
00017   QSize maximumSize() const;
00018   QSize minimumSize() const;
00019   QSize sizeHint() const;
00021   void draw(QPainter* painter);
00022 
00023   PickedLabel(QList<int>* p, QList<QString>* t):
00024     pickedPositions(p), texts(t) {}
00025 
00026  private:
00027   QList<int>* pickedPositions;
00028   QList<QString>* texts;
00029 
00030   static const int MIN_WIDTH = 100;
00031   static const int MIN_HEIGHT = 70;
00032 
00033   static const int TEXT_WIDTH = 67;
00034   static const int SPACE = 2;
00035 
00036   static const QPen LABEL_PEN;
00037 };
00038 
00040 class IgcTextWidget : public QTextEdit {
00041   Q_OBJECT
00042 
00043  public:
00044   IgcTextWidget() : segmentsTexts(NULL), pointsTexts(NULL) {}
00045   IgcTextWidget(QList<QString>* s, QList<QString>* p)
00046     : segmentsTexts(s), pointsTexts(p) {updateText();}
00047 
00048   QSize sizeHint() const;
00049 
00050  public slots:
00051   void setSegmentsTexts(QList<QString>* texts);
00052   void setPointsTexts(QList<QString>* texts);
00053   void setMouseOverText(const QString& text);
00054   void updateText();
00055 
00056  private:
00057   QString mouseOverText;
00058   QList<QString>* segmentsTexts;
00059   QList<QString>* pointsTexts;
00060 };
00061 }
00062 }
00063 
00064 #endif  // UPDRAFT_SRC_PLUGINS_IGCVIEWER_INFOTEXTS_H_
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines