From 949678a4d300903b7af625dc899f00a0c864d514 Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Thu, 26 Jun 2008 11:24:08 +0000 Subject: [PATCH] - Updated download button status in search tab when switching tab --- src/searchEngine.cpp | 16 +++++++++++++++- src/searchEngine.h | 1 + 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/searchEngine.cpp b/src/searchEngine.cpp index 1eefec051..55172e878 100644 --- a/src/searchEngine.cpp +++ b/src/searchEngine.cpp @@ -56,6 +56,7 @@ SearchEngine::SearchEngine(bittorrent *BTSession, QSystemTrayIcon *myTrayIcon, b connect(searchProcess, SIGNAL(started()), this, SLOT(searchStarted())); connect(searchProcess, SIGNAL(readyReadStandardOutput()), this, SLOT(readSearchOutput())); connect(searchProcess, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(searchFinished(int,QProcess::ExitStatus))); + connect(tabWidget,SIGNAL(currentChanged(int)),this,SLOT(on_tab_changed(int))); searchTimeout = new QTimer(this); searchTimeout->setSingleShot(true); connect(searchTimeout, SIGNAL(timeout()), this, SLOT(on_stop_search_button_clicked())); @@ -77,6 +78,19 @@ SearchEngine::~SearchEngine(){ delete downloader; } +void SearchEngine::on_tab_changed(int t) +{//when we switch from a tab that is not empty to another that is empty the download button + //doesn't have to be available + if(t>-1) + {//-1 = no more tab + if(all_tab.at(tabWidget->currentIndex())->getCurrentSearchListModel()->rowCount()) { + download_button->setEnabled(true); + } else { + download_button->setEnabled(false); + } + } +} + void SearchEngine::on_enginesButton_clicked() { engineSelectDlg *dlg = new engineSelectDlg(this); connect(dlg, SIGNAL(enginesChanged()), this, SLOT(loadEngineSettings())); @@ -134,8 +148,8 @@ void SearchEngine::on_search_button_clicked(){ } // Tab Addition currentSearchTab=new SearchTab(this); - tabWidget->addTab(currentSearchTab, pattern); all_tab.append(currentSearchTab); + tabWidget->addTab(currentSearchTab, pattern); tabWidget->setCurrentWidget(currentSearchTab); closeTab_button->setEnabled(true); // if the pattern is not in the pattern diff --git a/src/searchEngine.h b/src/searchEngine.h index 0e3467f93..66010af73 100644 --- a/src/searchEngine.h +++ b/src/searchEngine.h @@ -66,6 +66,7 @@ class SearchEngine : public QWidget, public Ui::search_engine{ void downloadSelectedItem(const QModelIndex& index); protected slots: // Search slots + void on_tab_changed(int t);//to prevent the use of the download button when the tab is empty void on_search_button_clicked(); void on_stop_search_button_clicked(); void on_closeTab_button_clicked();