Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef QXGRAPH_PRS_H
00024 #define QXGRAPH_PRS_H
00025
00026 #include "QxGraph.h"
00027
00028 #include <qcanvas.h>
00029 #include <map>
00030 #include <list>
00031
00032 class QxGraph_Canvas;
00033
00034 class QXGRAPH_EXPORT QxGraph_Prs
00035 {
00036 public:
00037 QxGraph_Prs(QxGraph_Canvas*);
00038 virtual ~QxGraph_Prs();
00039
00040 QxGraph_Canvas* getCanvas() const { return myCanvas; }
00041
00042 void addItem(QCanvasItem* theItem, int theDMode = -1);
00043 void removeItem(QCanvasItem* theItem, int theDMode = -1);
00044
00045
00046
00047 QCanvasItem* addRectangleItem(QRect theRect, int theDMode = -1);
00048 QCanvasItem* addPolygonItem(QPointArray thePA, int theDMode = -1);
00049 QCanvasItem* addLineItem(QPoint theStart, QPoint theEnd, int theDMode = -1);
00050 QCanvasItem* addEllipseItem(int theW, int theH, int theStartAngle, int theAngle, int theDMode = -1);
00051 QCanvasItem* addTextItem(QString theText, int theDMode = -1);
00052
00053 typedef std::map< int, std::list<QCanvasItem*> > DMode2ItemList;
00054
00055 const DMode2ItemList& getDisplayMap() const { return myDisplayMap; }
00056 const std::list<QCanvasItem*>& getItems(int theDMode) { return myDisplayMap[theDMode]; }
00057
00058 void setDMode(int theDMode) { myDMode = theDMode; }
00059 int getDMode() const { return myDMode; }
00060
00061 virtual void show();
00062 virtual void hide();
00063 virtual void setToUpdate( const bool );
00064 bool isToUpdate() { return needUpdate; }
00065
00066 protected:
00067 virtual void update();
00068
00069 private:
00070 QxGraph_Canvas* myCanvas;
00071 DMode2ItemList myDisplayMap;
00072
00073 int myDMode;
00074 bool needUpdate;
00075 };
00076
00077 #endif