author | paule <paule> | 2007-01-28 06:41:22 (UTC) |
---|---|---|
committer | paule <paule> | 2007-01-28 06:41:22 (UTC) |
commit | b17ca0982b26c0f18ccd3113906206f8fb49df2a (patch) (side-by-side diff) | |
tree | c6e98cc4bdab06ed9b1c198badc185abbfe58088 /noncore | |
parent | ec2309cb69365847762db542c41951629cd06cbe (diff) | |
download | opie-b17ca0982b26c0f18ccd3113906206f8fb49df2a.zip opie-b17ca0982b26c0f18ccd3113906206f8fb49df2a.tar.gz opie-b17ca0982b26c0f18ccd3113906206f8fb49df2a.tar.bz2 |
Load in current button action on opening
-rw-r--r-- | noncore/tools/remote/buttondialog.cpp | 45 | ||||
-rw-r--r-- | noncore/tools/remote/buttondialog.h | 6 |
2 files changed, 34 insertions, 17 deletions
diff --git a/noncore/tools/remote/buttondialog.cpp b/noncore/tools/remote/buttondialog.cpp index 56738d1..7d03f27 100644 --- a/noncore/tools/remote/buttondialog.cpp +++ b/noncore/tools/remote/buttondialog.cpp @@ -17,5 +17,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "buttondialog.h" -ButtonDialog::ButtonDialog(QString buttonName, QWidget *parent, const char*name, bool modal, WFlags f):QDialog(parent, name, modal, f) +ButtonDialog::ButtonDialog(QString buttonName, QString action, QWidget *parent, const char*name, bool modal, WFlags f) +: QDialog(parent, name, modal, f) { setCaption(tr(buttonName)); @@ -44,5 +45,4 @@ ButtonDialog::ButtonDialog(QString buttonName, QWidget *parent, const char*name, hlayout1->addWidget(remote); hlayout1->addSpacing(5); - remote->insertItem("Remote "); remote->insertStringList(lh->getRemotes()); connect(remote, SIGNAL(activated(const QString&)), this, SLOT(remoteSelected(const QString&)) ); @@ -55,6 +55,4 @@ ButtonDialog::ButtonDialog(QString buttonName, QWidget *parent, const char*name, hlayout2->addWidget(button); hlayout2->addSpacing(5); - button->insertItem("Button "); - connect(button, SIGNAL(activated(const QString&)), this, SLOT(buttonSelected(const QString&)) ); label = new QLineEdit(this, "label"); @@ -66,4 +64,30 @@ ButtonDialog::ButtonDialog(QString buttonName, QWidget *parent, const char*name, hlayout3->addWidget(label); hlayout3->addSpacing(5); + + QStringList actionArgs = QStringList::split(' ', action); + if(actionArgs.count() > 1) { + // Remote + for(int i=0;i<remote->count();i++) { + if(remote->text(i) == actionArgs[1]) { + remote->setCurrentItem(i); + break; + } + } + } + // Populate the list of buttons + remoteSelected(remote->currentText()); + + if(actionArgs.count() > 2) { + // Button + for(int i=0;i<button->count();i++) { + if(button->text(i) == actionArgs[2]) { + button->setCurrentItem(i); + break; + } + } + } + else { + button->setCurrentItem(-1); + } } @@ -75,17 +99,12 @@ ButtonDialog::~ButtonDialog() void ButtonDialog::remoteSelected(const QString &string) { + button->clear(); button->insertStringList(lh->getButtons(string.latin1()) ); - list="SEND_ONCE"; - list+=string; -} - -void ButtonDialog::buttonSelected(const QString &string) -{ - list+=string; } -QStringList ButtonDialog::getList() +QString ButtonDialog::getAction() { - return list; + QString action("SEND_ONCE " + remote->currentText() + " " + button->currentText()); + return action; } diff --git a/noncore/tools/remote/buttondialog.h b/noncore/tools/remote/buttondialog.h index cc697b5..f66903f 100644 --- a/noncore/tools/remote/buttondialog.h +++ b/noncore/tools/remote/buttondialog.h @@ -38,15 +38,13 @@ class ButtonDialog : public QDialog Q_OBJECT public: - ButtonDialog(QString buttonName, QWidget *parent=0, const char*name=0, bool modal=FALSE, WFlags f=0); + ButtonDialog(QString buttonName, QString action, QWidget *parent=0, const char*name=0, bool modal=FALSE, WFlags f=0); ~ButtonDialog(); - QStringList getList(); + QString getAction(); QString getLabel(); public slots: void remoteSelected(const QString &string); - void buttonSelected(const QString &string); private: QComboBox *remote; QComboBox *button; - QStringList list; QLineEdit *label; LircHandler *lh; |