-rw-r--r-- | noncore/tools/remote/learntab.cpp | 51 | ||||
-rw-r--r-- | noncore/tools/remote/learntab.h | 4 |
2 files changed, 34 insertions, 21 deletions
diff --git a/noncore/tools/remote/learntab.cpp b/noncore/tools/remote/learntab.cpp index 69d2e7f..82de631 100644 --- a/noncore/tools/remote/learntab.cpp +++ b/noncore/tools/remote/learntab.cpp @@ -16,51 +16,64 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "learntab.h" /* OPIE */ #include <qpe/qpeapplication.h> LearnTab::LearnTab(QWidget *parent, const char *name):QWidget(parent,name) { - LircHandler lh; - QVBoxLayout *layout = new QVBoxLayout(this); QHBoxLayout *bottomLayout = new QHBoxLayout(this); layout->insertSpacing(0,5); remotesBox = new QListBox(this, "remotesBox"); layout->insertWidget(0, remotesBox, 1); - remotesBox->insertStringList(lh.getRemotes()); layout->insertSpacing(-1,5); layout->insertLayout(-1, bottomLayout); layout->insertSpacing(-1,5); - QPushButton *add = new QPushButton("Add", this, "add"); - bottomLayout->insertSpacing(-1, 5); - bottomLayout->insertWidget(-1, add); + QPushButton *learn = new QPushButton(tr("Learn"), this, "learn"); bottomLayout->insertSpacing(-1, 5); - QPushButton *edit = new QPushButton("Edit", this, "edit"); - bottomLayout->insertWidget(-1, edit); + bottomLayout->insertWidget(-1, learn); bottomLayout->insertSpacing(-1, 5); - QPushButton *del = new QPushButton("Delete", this, "delete"); + QPushButton *del = new QPushButton(tr("Delete"), this, "delete"); bottomLayout->insertWidget(-1, del); bottomLayout->insertSpacing(-1, 5); - connect(add, SIGNAL(clicked()), this, SLOT(add()) ); - connect(edit, SIGNAL(clicked()), this, SLOT(edit()) ); + connect(learn, SIGNAL(clicked()), this, SLOT(learn()) ); connect(del, SIGNAL(clicked()), this, SLOT(del()) ); } -void LearnTab::add() +void LearnTab::learn() { - printf("LearnTab::add: add pressed\n"); - RecordDialog *dialog = new RecordDialog(this); - QPEApplication::showDialog( dialog ); + printf("LearnTab::learn: learn pressed\n"); + RecordDialog *dialog = new RecordDialog(this); + dialog->showMaximized(); + dialog->exec(); + delete dialog; + updateRemotesList(); } -void LearnTab::edit() -{} - void LearnTab::del() -{} +{ + QString remotename = remotesBox->currentText(); + + if(remotename != "") { + if (QMessageBox::warning(this, tr("Delete"), + tr("Are you sure you want\n to delete %1?").arg(remotename), + QMessageBox::Yes, QMessageBox::No) == QMessageBox::Yes) { + LircHandler lh; + lh.removeRemote(remotename); + lh.reloadLircdConf(); + updateRemotesList(); + } + } +} +void LearnTab::updateRemotesList() +{ + LircHandler lh; + remotesBox->clear(); + if(lh.checkLircdConfValid(true)) + remotesBox->insertStringList(lh.getRemotes()); +} diff --git a/noncore/tools/remote/learntab.h b/noncore/tools/remote/learntab.h index c9d8e41..ac9568a 100644 --- a/noncore/tools/remote/learntab.h +++ b/noncore/tools/remote/learntab.h @@ -35,14 +35,14 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "lirchandler.h" class LearnTab : public QWidget { Q_OBJECT public: LearnTab(QWidget *parent=0, const char *name=0); public slots: - void add(); - void edit(); + void learn(); void del(); + void updateRemotesList(); private: QListBox *remotesBox; }; |