use QSerialPort for IO
This commit is contained in:
parent
9f6968c915
commit
d68c37fa82
@ -25,6 +25,32 @@
|
|||||||
|
|
||||||
DmxWidget::DmxWidget(QObject *parent)
|
DmxWidget::DmxWidget(QObject *parent)
|
||||||
: QObject{parent}
|
: QObject{parent}
|
||||||
|
, port_(new QSerialPort(this))
|
||||||
|
, connected_(false)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
DmxWidget::~DmxWidget()
|
||||||
|
{
|
||||||
|
DmxWidget::disconnect();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DmxWidget::connect()
|
||||||
|
{
|
||||||
|
ENTTEC::Widget::connect();
|
||||||
|
|
||||||
|
connected_ = true;
|
||||||
|
emit connectedChanged(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DmxWidget::disconnect()
|
||||||
|
{
|
||||||
|
ENTTEC::Widget::disconnect();
|
||||||
|
|
||||||
|
connected_ = false;
|
||||||
|
emit connectedChanged(false);
|
||||||
|
}
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
|
#include <QSerialPort>
|
||||||
|
#include <QSerialPortInfo>
|
||||||
#include <widget.h>
|
#include <widget.h>
|
||||||
|
|
||||||
class DmxWidget
|
class DmxWidget
|
||||||
@ -33,7 +35,24 @@ class DmxWidget
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit DmxWidget(QObject *parent = nullptr);
|
explicit DmxWidget(QObject *parent = nullptr);
|
||||||
|
virtual ~DmxWidget();
|
||||||
|
|
||||||
|
virtual void connect() override;
|
||||||
|
virtual void disconnect() override;
|
||||||
|
|
||||||
|
bool isConnected() const { return connected_; }
|
||||||
|
|
||||||
|
void setPort(const QSerialPortInfo &port) { port_->setPort(port); emit portNameChanged(); }
|
||||||
|
void setPortName(const QString &name) { port_->setPortName(name); emit portNameChanged(); }
|
||||||
|
const QString portName() const { return port_->portName(); }
|
||||||
|
|
||||||
|
Q_PROPERTY(bool isConnected READ isConnected NOTIFY connectedChanged)
|
||||||
|
Q_PROPERTY(QString portName READ portName NOTIFY portNameChanged)
|
||||||
signals:
|
signals:
|
||||||
|
void connectedChanged(bool);
|
||||||
|
void portNameChanged();
|
||||||
|
|
||||||
|
private:
|
||||||
|
QSerialPort *port_;
|
||||||
|
bool connected_;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user