pt.h
00001 #ifndef __QT_PT_H__
00002 #define __QT_PT_H__
00003
00004 #include <QApplication>
00005 #include <QWidget>
00006 #include <QImage>
00007 #include <QPainter>
00008 #include <QPaintEvent>
00009
00010 #include "../include/Curve.h"
00011 #include "../experimental/pngmanip/plot_funcs.h"
00012 #include "mainwindow.h"
00013
00014 class PTPlotWindow: public QWidget {
00015 Q_OBJECT
00016 public:
00017 PTPlotWindow(MainWindow* mainWin, QWidget *parent=0, const char *name=0, Qt::WindowFlags wFlags=0);
00018 ~PTPlotWindow();
00019 protected:
00020 void paintEvent( QPaintEvent * );
00021 void resizeEvent( QResizeEvent * );
00022 void mousePressEvent( QMouseEvent * );
00023 void mouseReleaseEvent( QMouseEvent * );
00024 void mouseMoveEvent( QMouseEvent * );
00025 void keyPressEvent( QKeyEvent * );
00026 private:
00027 MainWindow* mainwin;
00028 bool PRESSED, UNION;
00029 bool convertEvent(QMouseEvent* e, int& x, int& y);
00030 QImage image, orig, bkp;
00031
00032 int e1,e2,e3,oe1,oe2;
00033
00034 int pickx, picky;
00035 int clickx, clicky;
00036 int releasex, releasey;
00037 private slots:
00038 void popcoords();
00039 void recompute();
00040 signals:
00041 void pos_changed(float,float,float,float,bool);
00042 };
00043
00044 #endif // __QT_PT_H__