Subversion Repositories Code-Repo

Rev

Blame | Last modification | View Log | RSS feed

#ifndef SERIALWIDGET_H
#define SERIALWIDGET_H

#include "GlobalDefines.h"
#include "SerialHelper.h"

class SerialWidget : public QWidget
{
        Q_OBJECT
    public:
        SerialWidget(QWidget *parent = 0);
        ~SerialWidget();

    public slots:
        // Inbound from SerialHelper
        void Serial_UpdateParameters(QStringList ports, QStringList speeds, QStringList dataBits,
                                     QStringList stopBits, QStringList parity, QStringList flowControl);

        // Local GUI processing
        void Serial_ConnectToggleBtn(void);
        void Serial_LocalConnected(void);
        void Serial_LocalDisconnected(void);

    signals:
        // Outbound to SerialHelper
        void Serial_QueryParameters(void);
        void Serial_Connect(QString port, QString speed, QString dataBits,
                            QString stopBits, QString parity, QString flowControl);
        void Serial_Disconnect(void);
        void Serial_TransmitByteArray(QByteArray data);

        // Outbound to MainWindow
        void Serial_ReceivedByte(char byte);
        void Serial_Connected(void);
        void Serial_Disconnected(void);
        void UpdateStatus(QString string);

    private:
        SerialHelper *serialHelper;
        QThread *serialThread;

        QPushButton *btnSerialConnect;
        QPushButton *btnSerialRefresh;
        QLabel *labelSerialPort;
        QLabel *labelSerialSpeed;
        QLabel *labelSerialDataBits;
        QLabel *labelSerialStopBits;
        QLabel *labelSerialParity;
        QLabel *labelSerialFlowControl;
        QComboBox *cboxSerialPort;
        QComboBox *cboxSerialSpeed;
        QComboBox *cboxSerialDataBits;
        QComboBox *cboxSerialStopBits;
        QComboBox *cboxSerialParity;
        QComboBox *cboxSerialFlowControl;
};

#endif // SERIALWIDGET_H