Fixed some bugs. Now it compiles.
[irwi] / src / irctrl.cpp
index 15ccc48..92b4942 100644 (file)
@@ -1,5 +1,3 @@
-#include "irctrl.h"
-
 #include <cstdlib>
 
 #include <QTcpSocket>
@@ -8,60 +6,67 @@
 #include <QIODevice>
 #include <QHostAddress>
 #include <QAbstractSocket>
+#include <QSettings>
+
+#include "irctrl.h"
 
 IrCtrl::IrCtrl()
+    : settings(NULL)
 {
+    settings = new QSettings(this);
     std::system("lircctl start");
 }
 
 IrCtrl::~IrCtrl()
 {
+    delete settings;
+    settings = NULL;
     std::system("lircctl stop");
 }
 
 void IrCtrl::genericSendCmd(const QString &commandName)
 {
-    QSettings settings(this);
     QTcpSocket sock(this);
 //    sock.setSocketOption(QAbstractSocket::LowDelayOption, 1);
     sock.connectToHost(QHostAddress::LocalHost, 
-            settings.value("lircPort", LIRC_PORT).toInt(),
+            settings->value("lircPort", LIRC_PORT).toInt(),
             QIODevice::WriteOnly|QIODevice::Unbuffered);
     sock.waitForConnected();
-    QString remoteName = settings.value("remoteName", "REMOTE_NAME_MISSING").toString();
+    QString remoteName =
+        settings->value("remoteName", "REMOTE_NAME_MISSING").toString();
     QString cmd = "SEND_ONCE " + remoteName + " " + commandName + "\n";
     sock.write(cmd.toAscii());
     sock.waitForBytesWritten();
     sock.close();
 }
 
-void IrCtrl::sendCmd0(bool)
+void IrCtrl::sendCmd0()
 {
-    genericSendCmd(settings.value("cmd0", "VOL+").toString());
+    genericSendCmd(settings->value("cmd0", "VOL+").toString());
 }
 
-void IrCtrl::sendCmd1(bool)
+void IrCtrl::sendCmd1()
 {
-    genericSendCmd(settings.value("cmd1", "VOL-"));
+    genericSendCmd(settings->value("cmd1", "VOL-").toString());
 }
 
-void IrCtrl::sendCmd2(bool)
+void IrCtrl::sendCmd2()
 {
-    genericSendCmd(settings.value("cmd2", "P+"));
+    genericSendCmd(settings->value("cmd2", "P+").toString());
 }
 
-void IrCtrl::sendCmd3(bool)
+void IrCtrl::sendCmd3()
 {
-    genericSendCmd(settings.value("cmd3", "P-"));
+    genericSendCmd(settings->value("cmd3", "P-").toString());
 }
 
-void IrCtrl::sendCmd4(bool)
+void IrCtrl::sendCmd4()
 {
-    genericSendCmd(settings.value("cmd4", "ON/OFF"));
+    genericSendCmd(settings->value("cmd4", "ON/OFF").toString());
 }
 
-void IrCtrl::sendCmd5(bool)
+void IrCtrl::sendCmd5()
 {
-    genericSendCmd(settings.value("cmd5", "MUTE"));
+    genericSendCmd(settings->value("cmd5", "MUTE").toString());
 }