Files
yremote/mainwindow.cpp
2018-08-01 21:52:47 +02:00

63 lines
1.5 KiB
C++

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <qnetwork.h>
#include <QtNetwork/QNetworkReply>
class QNetworkReply;
namespace yremote {
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
manager = new QNetworkAccessManager(this);
setFixedSize(size());
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::func()
{
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt-project.org")));
}
void MainWindow::on_btn_onoff_clicked()
{
qDebug() << "void MainWindow::on_btn_onoff_clicked()";
sendCommand("<YAMAHA_AV cmd=\"GET\"><Main_Zone><Input><Input_Sel>GetParam</Input_Sel></Input></Main_Zone></YAMAHA_AV>");
}
QString MainWindow::sendCommand(QString cmd)
{
QString res;
QNetworkRequest request;
request.setUrl("http://" + mAddress + ":80/YamahaRemoteControl/ctrl");
request.setRawHeader("Content-Type", "text/xml; charset=UTF-8");
request.setRawHeader("Content-Length", QByteArray::number(cmd.size()));
QNetworkReply *reply = manager->post(request, cmd.toUtf8());
QEventLoop loop;
connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));
loop.exec();
qDebug() << reply->readAll();
return res;
}
void MainWindow::on_txt_address_textEdited(const QString &arg1)
{
mAddress = arg1;
}
}