X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Firctrl.cpp;h=4f400279703033c3b858b44a6da6eb6ce1e21e5f;hb=af55637d27c287425a091ae482acff97c7f0e382;hp=5a647d08f8d8df0867d3bb7003d0627ad5f45377;hpb=a2a3cd7ff10e25a54676bf17b25b93eb90c365c6;p=irwi diff --git a/src/irctrl.cpp b/src/irctrl.cpp index 5a647d0..4f40027 100644 --- a/src/irctrl.cpp +++ b/src/irctrl.cpp @@ -1,62 +1,51 @@ +#include + #include +#include + #include "irctrl.h" -#include "irctrl_p.h" IrCtrl::IrCtrl(QObject *parent) : QObject(parent) - , d_ptr(new IrCtrlPrivate()) { - Q_D(IrCtrl); - d->q_ptr = this; } - -IrCtrl::IrCtrl(IrCtrlPrivate &dd, QObject *parent) - : QObject(parent) - , d_ptr(&dd) -{ - Q_D(IrCtrl); - d->q_ptr = this; -} - + IrCtrl::~IrCtrl() { - delete d_ptr; } -void IrCtrl::sendCmd0() +void IrCtrl::sendCmd(const QString &remoteName, const QString &cmd) { - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd0", "VOLUP").toString()); -} + if (!killLircTimer->isActive()) { + startLirc(); + } else { + killLircTimer->stop(); + } -void IrCtrl::sendCmd1() -{ - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd1", "VOLDOWN-").toString()); -} +// QTcpSocket sock; +// QSettings settings(this); +// sock.setSocketOption(QAbstractSocket::LowDelayOption, 1); +// sock.connectToHost(QHostAddress::LocalHost, +// settings.value("lircPort", LIRC_PORT).toInt(), +// QIODevice::WriteOnly|QIODevice::Unbuffered); +// sock.waitForConnected(); +// QString cmdStr = "SEND_ONCE " + cmd.remoteName + " " + cmd.cmd + "\n"; +// sock.write(cmdStr.toAscii()); +// sock.waitForBytesWritten(); +// sock.close(); -void IrCtrl::sendCmd2() -{ - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd2", "CHUP").toString()); + killLircTimer->start(); } -void IrCtrl::sendCmd3() -{ - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd3", "CHDOWN").toString()); -} -void IrCtrl::sendCmd4() +void IrCtrl::stopLirc() { - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd4", "POWER").toString()); + std::system("sudo /etc/init.d/lirc stop"); } -void IrCtrl::sendCmd5() +void IrCtrl::startLirc() { - Q_D(IrCtrl); - d->genericSendCmd(d->settings->value("cmd5", "MUTE").toString()); + std::system("sudo /etc/init.d/lirc start"); }