]>
cvs.zerfleddert.de Git - proxmark3-svn/blob - client/proxguiqt.h
b3a3e85a3bf4bfec1c6dd764be78972358e4a847
   1 //----------------------------------------------------------------------------- 
   2 // Copyright (C) 2009 Michael Gernoth <michael at gernoth.net> 
   4 // This code is licensed to you under the terms of the GNU GPL, version 2 or, 
   5 // at your option, any later version. See the LICENSE.txt file for the text of 
   7 //----------------------------------------------------------------------------- 
   9 //----------------------------------------------------------------------------- 
  17 #include <QApplication> 
  18 #include <QPushButton> 
  24 #include "ui/ui_overlays.h" 
  26  * @brief The actual plot, black area were we paint the graph 
  28 class Plot
: public QWidget
 
  32         double GraphPixelsPerPoint
; 
  35         void PlotGraph(int *buffer
, int len
, QRect r
,QRect r2
, QPainter
* painter
, int graphNum
); 
  36         void PlotDemod(uint8_t *buffer
, size_t len
, QRect r
,QRect r2
, QPainter
* painter
, int graphNum
, int plotOffset
); 
  37         void plotGridLines(QPainter
* painter
,QRect r
); 
  38         int xCoordOf(int i
, QRect r 
); 
  39         int yCoordOf(int v
, QRect r
, int maxVal
); 
  40         int valueOf_yCoord(int y
, QRect r
, int maxVal
); 
  41         void setMaxAndStart(int *buffer
, int len
, QRect plotRect
); 
  42         QColor 
getColor(int graphNum
); 
  44         Plot(QWidget 
*parent 
= 0); 
  47         void paintEvent(QPaintEvent 
*event
); 
  48         void closeEvent(QCloseEvent 
*event
); 
  49         void mouseMoveEvent(QMouseEvent 
*event
); 
  50         void mousePressEvent(QMouseEvent 
*event
) { mouseMoveEvent(event
); } 
  51         void keyPressEvent(QKeyEvent 
*event
); 
  57  * The window with plot and controls 
  59 class ProxWidget 
: public QWidget
 
  61         Q_OBJECT
; //needed for slot/signal classes 
  66                 Ui::Form 
*opsController
; 
  67                 QWidget
* controlWidget
; 
  70                 ProxWidget(QWidget 
*parent 
= 0, ProxGuiQT 
*master 
= NULL
); 
  75         //      void paintEvent(QPaintEvent *event); 
  76                 void closeEvent(QCloseEvent 
*event
); 
  77                 void showEvent(QShowEvent 
*event
); 
  78                 void hideEvent(QHideEvent 
*event
); 
  79         //      void mouseMoveEvent(QMouseEvent *event); 
  80         //      void mousePressEvent(QMouseEvent *event) { mouseMoveEvent(event); } 
  81         //      void keyPressEvent(QKeyEvent *event); 
  83                 void applyOperation(); 
  84                 void stickOperation(); 
  85                 void vchange_autocorr(int v
); 
  86                 void vchange_askedge(int v
); 
  87                 void vchange_dthr_up(int v
); 
  88                 void vchange_dthr_down(int v
); 
  91 class ProxGuiQT 
: public QObject
 
  96                 QApplication 
*plotapp
; 
  97                 ProxWidget 
*plotwidget
; 
 100                 void (*main_func
)(void); 
 103                 ProxGuiQT(int argc
, char **argv
); 
 105                 void ShowGraphWindow(void); 
 106                 void RepaintGraphWindow(void); 
 107                 void HideGraphWindow(void); 
 111                 void _ShowGraphWindow(void); 
 112                 void _RepaintGraphWindow(void); 
 113                 void _HideGraphWindow(void); 
 116                 void ShowGraphWindowSignal(void); 
 117                 void RepaintGraphWindowSignal(void); 
 118                 void HideGraphWindowSignal(void); 
 119                 void ExitSignal(void);