summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/tools/remote/remotetab.cpp12
-rw-r--r--noncore/tools/remote/topgroup.cpp13
2 files changed, 25 insertions, 0 deletions
diff --git a/noncore/tools/remote/remotetab.cpp b/noncore/tools/remote/remotetab.cpp
index 45995fd..c89d8c2 100644
--- a/noncore/tools/remote/remotetab.cpp
+++ b/noncore/tools/remote/remotetab.cpp
@@ -51,6 +51,14 @@ RemoteTab::RemoteTab(QWidget *parent, const char *name):QWidget(parent,name)
51 51
52int RemoteTab::sendIR() 52int RemoteTab::sendIR()
53{ 53{
54 QString curr_remote = topGroup->getRemotesText();
55 if(curr_remote != "")
56 cfg->setGroup(curr_remote);
57 else {
58 QMessageBox::warning(this, tr("Error"), tr("Please select or create\na remote layout"), QMessageBox::Ok, QMessageBox::NoButton);
59 return 0;
60 }
61
54 const QObject *button = sender(); 62 const QObject *button = sender();
55 QString string = cfg->readEntry(button->name()); 63 QString string = cfg->readEntry(button->name());
56 if(string != "") { 64 if(string != "") {
@@ -157,4 +165,8 @@ void RemoteTab::remoteSelected(const QString &string)
157void RemoteTab::updateRemotesList() 165void RemoteTab::updateRemotesList()
158{ 166{
159 topGroup->updateRemotes(cfg); 167 topGroup->updateRemotes(cfg);
168
169 QString curr_remote = topGroup->getRemotesText();
170 if(curr_remote != "")
171 remoteSelected(curr_remote);
160} 172}
diff --git a/noncore/tools/remote/topgroup.cpp b/noncore/tools/remote/topgroup.cpp
index 7f2366b..d4eb6e2 100644
--- a/noncore/tools/remote/topgroup.cpp
+++ b/noncore/tools/remote/topgroup.cpp
@@ -47,9 +47,22 @@ TopGroup::TopGroup(QWidget *parent, const char *name):QWidget(parent,name)
47 47
48void TopGroup::updateRemotes(Config *cfg) 48void TopGroup::updateRemotes(Config *cfg)
49{ 49{
50 // Save currently selected item if any
51 QString curr_remote = remotes->currentText();
52
50 remotes->clear(); 53 remotes->clear();
51 cfg->setGroup("Remotes"); 54 cfg->setGroup("Remotes");
52 remotes->insertStringList(cfg->readListEntry("remoteList", ',') ); 55 remotes->insertStringList(cfg->readListEntry("remoteList", ',') );
56
57 // Select previously selected item
58 if(curr_remote != "") {
59 for(int i=0;i<remotes->count();i++) {
60 if(remotes->text(i) == curr_remote) {
61 remotes->setCurrentItem(i);
62 break;
63 }
64 }
65 }
53} 66}
54 67
55QString TopGroup::getRemotesText() 68QString TopGroup::getRemotesText()