no message
parent
4114dc8c70
commit
3e514bb131
|
@ -31,95 +31,96 @@ Item {
|
||||||
height: parent.height
|
height: parent.height
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 5
|
spacing: 5
|
||||||
Label {
|
Row{
|
||||||
id: label6
|
|
||||||
Layout.leftMargin: 20
|
Layout.leftMargin: 20
|
||||||
Layout.topMargin: 20
|
Label {
|
||||||
text: qsTr("打开端口: ")
|
id: label6
|
||||||
Layout.preferredHeight: 40
|
Layout.leftMargin: 20
|
||||||
renderType: Text.QtRendering
|
Layout.topMargin: 20
|
||||||
Layout.preferredWidth: 125
|
text: qsTr("打开端口: ")
|
||||||
wrapMode: Text.NoWrap
|
Layout.preferredHeight: 40
|
||||||
font.pointSize: 20
|
renderType: Text.QtRendering
|
||||||
}
|
Layout.preferredWidth: 125
|
||||||
TextEdit {
|
wrapMode: Text.NoWrap
|
||||||
id: port
|
font.pointSize: 20
|
||||||
Layout.leftMargin: 20
|
}
|
||||||
Layout.topMargin: 20
|
TextEdit {
|
||||||
width: 80
|
id: port
|
||||||
height: 40
|
Layout.leftMargin: 20
|
||||||
text: qsTr("9001")
|
Layout.topMargin: 30
|
||||||
font.italic: false
|
width: 80
|
||||||
font.bold: true
|
height: 40
|
||||||
Layout.columnSpan: 2
|
text: qsTr("9001")
|
||||||
Layout.preferredHeight: 33
|
selectionColor: "#f0f0f1"
|
||||||
Layout.preferredWidth: 50
|
cursorVisible: true
|
||||||
selectionColor: "#f0f0f1"
|
font.pixelSize: 18
|
||||||
cursorVisible: true
|
}
|
||||||
font.pixelSize: 20
|
RadioButton {
|
||||||
}
|
id: isServer
|
||||||
|
Layout.leftMargin: 20
|
||||||
|
Layout.topMargin: 20
|
||||||
|
width: 138
|
||||||
|
height: 41
|
||||||
|
text: qsTr("服务端")
|
||||||
|
checked: true
|
||||||
|
|
||||||
RadioButton {
|
onClicked:{
|
||||||
id: isServer
|
if(isServer.checked == true){
|
||||||
Layout.leftMargin: 20
|
isServer.checked = false
|
||||||
Layout.topMargin: 20
|
isServer.checkable = false
|
||||||
width: 138
|
}else{
|
||||||
height: 41
|
isServer.checked = true
|
||||||
text: qsTr("服务端")
|
isServer.checkable = true
|
||||||
checked: true
|
}
|
||||||
|
|
||||||
onClicked:{
|
|
||||||
if(isServer.checked == true){
|
|
||||||
isServer.checked = false
|
|
||||||
isServer.checkable = false
|
|
||||||
}else{
|
|
||||||
isServer.checked = true
|
|
||||||
isServer.checkable = true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
RowLayout{
|
RowLayout{
|
||||||
spacing: 5
|
spacing: 5
|
||||||
Label {
|
Row{
|
||||||
id: label7
|
|
||||||
Layout.leftMargin: 20
|
Layout.leftMargin: 20
|
||||||
Layout.topMargin: 20
|
Label {
|
||||||
text: qsTr("协议选择: ")
|
id: label7
|
||||||
Layout.preferredHeight: 40
|
Layout.leftMargin: 20
|
||||||
renderType: Text.QtRendering
|
Layout.topMargin: 20
|
||||||
Layout.preferredWidth: 125
|
text: qsTr("协议选择: ")
|
||||||
wrapMode: Text.NoWrap
|
Layout.preferredHeight: 40
|
||||||
font.pointSize: 20
|
renderType: Text.QtRendering
|
||||||
}
|
Layout.preferredWidth: 125
|
||||||
ComboBox {
|
wrapMode: Text.NoWrap
|
||||||
id: proto_combox
|
font.pointSize: 20
|
||||||
Layout.leftMargin: 20
|
}
|
||||||
Layout.topMargin: 20
|
ComboBox {
|
||||||
width: 143
|
id: proto_combox
|
||||||
height: 40
|
Layout.leftMargin: 20
|
||||||
|
Layout.topMargin: 20
|
||||||
|
width: 143
|
||||||
|
height: 40
|
||||||
|
|
||||||
model:[
|
model:[
|
||||||
"udp",
|
"udp",
|
||||||
"tcp"
|
"tcp"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
RadioButton {
|
|
||||||
id: radioSelectWebsocket
|
RadioButton {
|
||||||
Layout.leftMargin: 20
|
id: radioSelectWebsocket
|
||||||
Layout.topMargin: 20
|
Layout.leftMargin: 20
|
||||||
width: 138
|
Layout.topMargin: 20
|
||||||
height: 41
|
width: 138
|
||||||
text: qsTr("websocket")
|
height: 41
|
||||||
checkable: true
|
text: qsTr("websocket")
|
||||||
checked: true
|
checkable: true
|
||||||
onClicked:{
|
checked: true
|
||||||
if(radioSelectWebsocket.checked == true){
|
onClicked:{
|
||||||
radioSelectWebsocket.checked = false
|
if(radioSelectWebsocket.checked == true){
|
||||||
radioSelectWebsocket.checkable = false
|
radioSelectWebsocket.checked = false
|
||||||
}else{
|
radioSelectWebsocket.checkable = false
|
||||||
radioSelectWebsocket.checked = true
|
}else{
|
||||||
radioSelectWebsocket.checkable = true
|
radioSelectWebsocket.checked = true
|
||||||
|
radioSelectWebsocket.checkable = true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -166,14 +167,6 @@ Item {
|
||||||
text: qsTr("打开网口")
|
text: qsTr("打开网口")
|
||||||
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
console.log(hostEdit.text)
|
|
||||||
// TYPE_UDP_SERVER = 0,
|
|
||||||
// TYPE_TCP_SERVER = 1,
|
|
||||||
// TYPE_UDP_CLIENT = 2,
|
|
||||||
// TYPE_TCP_CLIENT = 3,
|
|
||||||
// Q_INVOKABLE int openNetwork(QString ip,uint32_t port,bool is_ws,int type);
|
|
||||||
console.log(proto_combox.currentText)
|
|
||||||
|
|
||||||
let type_network = -1
|
let type_network = -1
|
||||||
if(proto_combox.currentText == "udp" && isServer.checked){
|
if(proto_combox.currentText == "udp" && isServer.checked){
|
||||||
type_network = 0
|
type_network = 0
|
||||||
|
@ -196,12 +189,11 @@ Item {
|
||||||
radioSelectWebsocket.checked,
|
radioSelectWebsocket.checked,
|
||||||
type_network)
|
type_network)
|
||||||
if(ret != 0){
|
if(ret != 0){
|
||||||
tip.text = "网络连接失败"
|
tip.fail("网络连接失败")
|
||||||
tip.visible = true
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
tip.text = "网络连接成功"
|
tip.success("网络连接成功")
|
||||||
tip.visible = true
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -210,14 +202,31 @@ Item {
|
||||||
id: tip
|
id: tip
|
||||||
text: qsTr("")
|
text: qsTr("")
|
||||||
visible: false
|
visible: false
|
||||||
|
font.pixelSize: 25
|
||||||
|
width: 220
|
||||||
|
|
||||||
contentItem: Text {
|
contentItem: Text {
|
||||||
|
id : tip_item
|
||||||
text: tip.text
|
text: tip.text
|
||||||
font: tip.font
|
font: tip.font
|
||||||
color: "#21be2b"
|
color: "#21be2b"
|
||||||
}
|
}
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
|
id: tip_background
|
||||||
border.color: "#21be2b"
|
border.color: "#21be2b"
|
||||||
|
width: 220
|
||||||
|
height: 40
|
||||||
|
}
|
||||||
|
function success(str){
|
||||||
|
tip_item.color = "#21be2b"
|
||||||
|
tip.text = str
|
||||||
|
tip.visible = true
|
||||||
|
}
|
||||||
|
function fail(str){
|
||||||
|
tip_item.color = "#ff0000"
|
||||||
|
tip.text = str
|
||||||
|
tip.visible = true
|
||||||
}
|
}
|
||||||
delay: 100
|
delay: 100
|
||||||
timeout: 1000
|
timeout: 1000
|
||||||
|
|
|
@ -150,13 +150,6 @@ Item {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TextEdit {
|
|
||||||
id: send_data
|
|
||||||
width: parent.width - 60
|
|
||||||
height: 30
|
|
||||||
text: qsTr("Text Edit")
|
|
||||||
font.pixelSize: 16
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -201,8 +201,6 @@ Item {
|
||||||
uart_open = false
|
uart_open = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,13 +23,6 @@ int main(int argc, char *argv[])
|
||||||
QApplication app(argc, argv);
|
QApplication app(argc, argv);
|
||||||
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||||
|
|
||||||
// QQuickView view;
|
|
||||||
// view.setResizeMode(QQuickView::SizeRootObjectToView);
|
|
||||||
// view.setSource(QUrl("qrc:/main.qml"));
|
|
||||||
// view.setTitle ("多用途通信协议调试器,基于lua");
|
|
||||||
// view.rootContext()->setContextProperty("DataWrap",&gGlobal);
|
|
||||||
// view.show();
|
|
||||||
|
|
||||||
QQuickWidget *m_quickWidget=new QQuickWidget();
|
QQuickWidget *m_quickWidget=new QQuickWidget();
|
||||||
QUrl source("qrc:/main.qml");
|
QUrl source("qrc:/main.qml");
|
||||||
m_quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView );
|
m_quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView );
|
||||||
|
@ -38,6 +31,5 @@ int main(int argc, char *argv[])
|
||||||
m_quickWidget->show();
|
m_quickWidget->show();
|
||||||
gGlobal.SetQuickView(m_quickWidget);
|
gGlobal.SetQuickView(m_quickWidget);
|
||||||
|
|
||||||
|
|
||||||
return app.exec();
|
return app.exec();
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,6 +93,13 @@ Rectangle {
|
||||||
color: "white"
|
color: "white"
|
||||||
font.pointSize: 10
|
font.pointSize: 10
|
||||||
}
|
}
|
||||||
|
Text {
|
||||||
|
text: qsTr("协议调试")
|
||||||
|
width: parent.width
|
||||||
|
anchors.centerIn: parent.Center
|
||||||
|
color: "white"
|
||||||
|
font.pointSize: 10
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SerialSelect{
|
SerialSelect{
|
||||||
|
|
|
@ -3,6 +3,10 @@
|
||||||
|
|
||||||
NetworkController::NetworkController(NetworkController::NetWorkType type, QString ip, uint16_t port)
|
NetworkController::NetworkController(NetworkController::NetWorkType type, QString ip, uint16_t port)
|
||||||
{
|
{
|
||||||
|
mType = type;
|
||||||
|
if(_checkType(type) == TYPE_UNKOWN){
|
||||||
|
|
||||||
|
}
|
||||||
if(type == NetWorkType::TYPE_TCP_CLIENT){
|
if(type == NetWorkType::TYPE_TCP_CLIENT){
|
||||||
mTcp = new QTcpSocket();
|
mTcp = new QTcpSocket();
|
||||||
mCnn = mTcp;
|
mCnn = mTcp;
|
||||||
|
@ -12,6 +16,21 @@ NetworkController::NetworkController(NetworkController::NetWorkType type, QStrin
|
||||||
|
|
||||||
mTcp->connectToHost(ip,port,QIODevice::ReadWrite);
|
mTcp->connectToHost(ip,port,QIODevice::ReadWrite);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(type == NetWorkType::TYPE_TCP_SERVER){
|
||||||
|
|
||||||
|
mTcpServer = new QTcpServer();
|
||||||
|
connect(mTcpServer,SIGNAL(newConnection()),
|
||||||
|
this,SLOT(on_server_accept()));
|
||||||
|
connect(mTcpServer, SIGNAL(acceptError(QAbstractSocket::SocketError socketError)),
|
||||||
|
this, SLOT(displayError()));
|
||||||
|
|
||||||
|
if (!mTcpServer->listen(QHostAddress::Any, port))
|
||||||
|
{
|
||||||
|
qDebug() << "m_pTcpServer->listen() error";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int NetworkController::SendData(int8_t *data, uint32_t len)
|
int NetworkController::SendData(int8_t *data, uint32_t len)
|
||||||
|
@ -38,9 +57,36 @@ NetworkController::~NetworkController()
|
||||||
void NetworkController::on_ready_read()
|
void NetworkController::on_ready_read()
|
||||||
{
|
{
|
||||||
qDebug()<<QString::fromStdString(mTcp->readAll().toStdString());
|
qDebug()<<QString::fromStdString(mTcp->readAll().toStdString());
|
||||||
|
emit(on_data_recv());
|
||||||
}
|
}
|
||||||
|
|
||||||
void NetworkController::on_disconect()
|
void NetworkController::on_disconect()
|
||||||
{
|
{
|
||||||
qDebug()<<"close";
|
qDebug()<<"close";
|
||||||
|
if(nullptr != mCnn){
|
||||||
|
emit(this->on_conection_close());
|
||||||
|
mCnn->close();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NetworkController::on_server_accept()
|
||||||
|
{
|
||||||
|
if(mType == TYPE_TCP_SERVER){
|
||||||
|
mTcpServer->pauseAccepting();
|
||||||
|
QTcpSocket* pClientConnection = mTcpServer->nextPendingConnection();
|
||||||
|
if(nullptr != pClientConnection){
|
||||||
|
QObject::connect(pClientConnection, SIGNAL(readyRead()), this, SLOT(on_ready_read()));
|
||||||
|
QObject::connect(pClientConnection, SIGNAL(disconnected()), this, SLOT(on_disconect()));
|
||||||
|
}
|
||||||
|
mTcp = pClientConnection;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkController::NetWorkType NetworkController::_checkType(NetWorkType type){
|
||||||
|
if(type < TYPE_UNKOWN){
|
||||||
|
return type;
|
||||||
|
}else{
|
||||||
|
return TYPE_UNKOWN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
#include <QUdpSocket>
|
#include <QUdpSocket>
|
||||||
#include <QTcpSocket>
|
#include <QTcpSocket>
|
||||||
#include <QThread>
|
#include <QThread>
|
||||||
|
#include <QTcpServer>
|
||||||
|
|
||||||
class NetworkController : public QObject
|
class NetworkController : public QObject
|
||||||
{
|
{
|
||||||
|
@ -17,6 +17,7 @@ public:
|
||||||
TYPE_TCP_SERVER = 1,
|
TYPE_TCP_SERVER = 1,
|
||||||
TYPE_UDP_CLIENT = 2,
|
TYPE_UDP_CLIENT = 2,
|
||||||
TYPE_TCP_CLIENT = 3,
|
TYPE_TCP_CLIENT = 3,
|
||||||
|
TYPE_UNKOWN = 4,
|
||||||
}NetWorkType;
|
}NetWorkType;
|
||||||
|
|
||||||
NetworkController(NetWorkType type,QString ip,uint16_t port);
|
NetworkController(NetWorkType type,QString ip,uint16_t port);
|
||||||
|
@ -28,16 +29,19 @@ public:
|
||||||
public slots:
|
public slots:
|
||||||
void on_ready_read();
|
void on_ready_read();
|
||||||
void on_disconect();
|
void on_disconect();
|
||||||
|
void on_server_accept();
|
||||||
signals:
|
signals:
|
||||||
void on_data_recv();
|
void on_data_recv();
|
||||||
void on_conection_ok();
|
void on_conection_ok();
|
||||||
void on_conection_close();
|
void on_conection_close();
|
||||||
void on_send_data(QByteArray);
|
void on_send_data(QByteArray);
|
||||||
private:
|
private:
|
||||||
NetWorkType type;
|
NetWorkType _checkType(NetWorkType);
|
||||||
|
|
||||||
|
NetWorkType mType;
|
||||||
QUdpSocket *mUDP;
|
QUdpSocket *mUDP;
|
||||||
QTcpSocket *mTcp;
|
QTcpSocket *mTcp;
|
||||||
|
QTcpServer *mTcpServer;
|
||||||
QIODevice *mCnn;
|
QIODevice *mCnn;
|
||||||
QThread mThread;
|
QThread mThread;
|
||||||
};
|
};
|
||||||
|
|
|
@ -92,7 +92,6 @@ void SerialController::GetSetting(QString baudRate, QString dataBits, QString st
|
||||||
mBaudrate = baudRate.toUInt();
|
mBaudrate = baudRate.toUInt();
|
||||||
mDataBits = (QSerialPort::DataBits)dataBits.toUInt();
|
mDataBits = (QSerialPort::DataBits)dataBits.toUInt();
|
||||||
mParity = QSerialPort::Parity::NoParity;
|
mParity = QSerialPort::Parity::NoParity;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SerialController::ReadyRead()
|
void SerialController::ReadyRead()
|
||||||
|
|
|
@ -17,7 +17,6 @@ ShareData::ShareData(QObject *parent) : QObject(parent),
|
||||||
|
|
||||||
QTextStream in(&file);
|
QTextStream in(&file);
|
||||||
m_lua_string = in.readAll();
|
m_lua_string = in.readAll();
|
||||||
qDebug()<< m_lua_string;
|
|
||||||
int ret = m_lua_.DoString(m_lua_string);
|
int ret = m_lua_.DoString(m_lua_string);
|
||||||
if(ret < 0){
|
if(ret < 0){
|
||||||
qDebug()<<"默认lua脚本加载错误";
|
qDebug()<<"默认lua脚本加载错误";
|
||||||
|
@ -90,6 +89,11 @@ int ShareData::openNetwork(QString ip, unsigned int port, bool is_ws,int type)
|
||||||
if(type == NetworkController::TYPE_UDP_CLIENT){
|
if(type == NetworkController::TYPE_UDP_CLIENT){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
if(type == NetworkController::TYPE_TCP_SERVER){
|
||||||
|
m_network_ = new NetworkController(NetworkController::TYPE_TCP_SERVER,ip,port);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -145,7 +149,6 @@ int ShareData::saveLuaScript(QString s)
|
||||||
}
|
}
|
||||||
file.close();
|
file.close();
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ShareData::luaStatus()
|
bool ShareData::luaStatus()
|
||||||
|
|
Loading…
Reference in New Issue