]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/proxguiqt.h
fixed bug in CmdHF14ACmdRaw: if we cant select we send command anyway...
[proxmark3-svn] / client / proxguiqt.h
index 794db2d7a673b0ce6f5107514660c07bdbf0d730..45a65b040c5702dc922644c8deb18bbbbe6206a0 100644 (file)
@@ -8,6 +8,12 @@
 // GUI (QT)
 //-----------------------------------------------------------------------------
 
 // GUI (QT)
 //-----------------------------------------------------------------------------
 
+#ifndef PROXGUI_QT
+#define PROXGUI_QT
+
+#include <stdint.h>
+#include <string.h>
+
 #include <QApplication>
 #include <QPushButton>
 #include <QObject>
 #include <QApplication>
 #include <QPushButton>
 #include <QObject>
@@ -32,6 +38,7 @@ private:
        int xCoordOf(int i, QRect r );
        int yCoordOf(int v, QRect r, int maxVal);
        int valueOf_yCoord(int y, QRect r, int maxVal);
        int xCoordOf(int i, QRect r );
        int yCoordOf(int v, QRect r, int maxVal);
        int valueOf_yCoord(int y, QRect r, int maxVal);
+       void setMaxAndStart(int *buffer, int len, QRect plotRect);
        QColor getColor(int graphNum);
 public:
        Plot(QWidget *parent = 0);
        QColor getColor(int graphNum);
 public:
        Plot(QWidget *parent = 0);
@@ -51,19 +58,24 @@ class ProxGuiQT;
  */
 class ProxWidget : public QWidget
 {
  */
 class ProxWidget : public QWidget
 {
-       Q_OBJECT;
+       Q_OBJECT; //needed for slot/signal classes
 
        private:
 
        private:
+               ProxGuiQT *master;
                Plot *plot;
                Ui::Form *opsController;
                Plot *plot;
                Ui::Form *opsController;
-               ProxGuiQT *master;
-       
+               QWidget* controlWidget;
+
        public:
                ProxWidget(QWidget *parent = 0, ProxGuiQT *master = NULL);
        public:
                ProxWidget(QWidget *parent = 0, ProxGuiQT *master = NULL);
+               ~ProxWidget(void);
+               //OpsShow(void);
 
 
-       //protected:
+       protected:
        //      void paintEvent(QPaintEvent *event);
        //      void paintEvent(QPaintEvent *event);
-       //      void closeEvent(QCloseEvent *event);
+               void closeEvent(QCloseEvent *event);
+               void showEvent(QShowEvent *event);
+               void hideEvent(QHideEvent *event);
        //      void mouseMoveEvent(QMouseEvent *event);
        //      void mousePressEvent(QMouseEvent *event) { mouseMoveEvent(event); }
        //      void keyPressEvent(QKeyEvent *event);
        //      void mouseMoveEvent(QMouseEvent *event);
        //      void mousePressEvent(QMouseEvent *event) { mouseMoveEvent(event); }
        //      void keyPressEvent(QKeyEvent *event);
@@ -71,10 +83,23 @@ class ProxWidget : public QWidget
                void applyOperation();
                void stickOperation();
                void vchange_autocorr(int v);
                void applyOperation();
                void stickOperation();
                void vchange_autocorr(int v);
+               void vchange_askedge(int v);
                void vchange_dthr_up(int v);
                void vchange_dthr_down(int v);
 };
 
                void vchange_dthr_up(int v);
                void vchange_dthr_down(int v);
 };
 
+class WorkerThread : public QThread {
+               Q_OBJECT;
+       public:
+               WorkerThread(char*, char*, bool);
+               ~WorkerThread();
+               void run();
+       private:
+               char *script_cmds_file = NULL;
+               char *script_cmd = NULL;
+               bool usb_present;
+};
+
 class ProxGuiQT : public QObject
 {
        Q_OBJECT;
 class ProxGuiQT : public QObject
 {
        Q_OBJECT;
@@ -85,22 +110,27 @@ class ProxGuiQT : public QObject
                int argc;
                char **argv;
                void (*main_func)(void);
                int argc;
                char **argv;
                void (*main_func)(void);
+               WorkerThread *proxmarkThread;
        
        public:
        
        public:
-               ProxGuiQT(int argc, char **argv);
+               ProxGuiQT(int argc, char **argv, WorkerThread *wthread);
                ~ProxGuiQT(void);
                void ShowGraphWindow(void);
                void RepaintGraphWindow(void);
                void HideGraphWindow(void);
                void MainLoop(void);
                ~ProxGuiQT(void);
                void ShowGraphWindow(void);
                void RepaintGraphWindow(void);
                void HideGraphWindow(void);
                void MainLoop(void);
-       
+               void Exit(void);
        private slots:
                void _ShowGraphWindow(void);
                void _RepaintGraphWindow(void);
                void _HideGraphWindow(void);
        private slots:
                void _ShowGraphWindow(void);
                void _RepaintGraphWindow(void);
                void _HideGraphWindow(void);
-
+               void _Exit(void);
+               void _StartProxmarkThread(void);
        signals:
                void ShowGraphWindowSignal(void);
                void RepaintGraphWindowSignal(void);
                void HideGraphWindowSignal(void);
        signals:
                void ShowGraphWindowSignal(void);
                void RepaintGraphWindowSignal(void);
                void HideGraphWindowSignal(void);
+               void ExitSignal(void);
 };
 };
+
+#endif // PROXGUI_QT
Impressum, Datenschutz