From 715a31c475e69c2a90e62b26de2f01b1a9bfe6f2 Mon Sep 17 00:00:00 2001 From: doitux Date: Thu, 9 Feb 2012 23:29:04 +0000 Subject: [PATCH] avoid removal of current db log file --- .../gamelobbydialog/gamelobbydialogimpl.cpp | 4 ++-- src/gui/qt/gametable/log/guilog.h | 5 ++--- .../qt/settingsdialog/settingsdialogimpl.cpp | 21 +++++++++++++++++-- src/gui/qt/startwindow.ui | 4 ++-- 4 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp index 11031724..7b2ffb08 100644 --- a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp +++ b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp @@ -317,7 +317,7 @@ void gameLobbyDialogImpl::createGame() updateDialogBlinds(gameData); - label_GameTiming->setText(QString::number(gameData.playerActionTimeoutSec)); + label_GameTiming->setText(QString::number(gameData.playerActionTimeoutSec)+tr(" sec (action)")+"\n"+QString::number(gameData.delayBetweenHandsSec)+tr(" sec (hand delay)")); mySession->clientCreateGame(gameData, currentGameName.toUtf8().constData(), myCreateInternetGameDialog->lineEdit_Password->text().toUtf8().constData()); @@ -1135,7 +1135,7 @@ void gameLobbyDialogImpl::joinedGameDialogUpdate() label_SmallBlind->setText(QString("%L1").arg(info.data.firstSmallBlind)); label_StartCash->setText(QString("%L1").arg(info.data.startMoney)); updateDialogBlinds(info.data); - label_GameTiming->setText(QString::number(info.data.playerActionTimeoutSec)); + label_GameTiming->setText(QString::number(info.data.playerActionTimeoutSec)+tr(" sec (action)")+"\n"+QString::number(info.data.delayBetweenHandsSec)+tr(" sec (hand delay)")); QTreeWidgetItem *header = treeWidget_connectedPlayers->headerItem(); header->setText(0, tr("Connected players - Max. %1").arg(info.data.maxNumberOfPlayers)); diff --git a/src/gui/qt/gametable/log/guilog.h b/src/gui/qt/gametable/log/guilog.h index c3528e83..a8a55061 100644 --- a/src/gui/qt/gametable/log/guilog.h +++ b/src/gui/qt/gametable/log/guilog.h @@ -70,7 +70,6 @@ public slots: void showLog(QString fileStringPdb, QTextBrowser *tb); int exportLog(QString fileStringPdb, int modus); - public: QStringList translateCardCode(int cardCode); @@ -79,6 +78,7 @@ public: void setMySqliteLogFileName(std::string theValue) { mySqliteLogFileName = theValue; } + std::string getMySqliteLogFileName() { return mySqliteLogFileName; } signals: void signalLogPlayerActionMsg(QString playerName, int action, int setValue); @@ -116,12 +116,11 @@ private: QString logFileStreamString; QString myAppDataPath; QTextBrowser* tb; - GameTableStyleReader *myStyle; + std::string mySqliteLogFileName; friend class GuiWrapper; - std::string mySqliteLogFileName; }; #endif diff --git a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp index 5e72b8bd..08bc55c1 100644 --- a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp +++ b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp @@ -1347,6 +1347,9 @@ void settingsDialogImpl::refreshLogFileList() filters << "*.pdb"; QFileInfoList dbFilesList = logFileDir.entryInfoList(filters, QDir::Files, QDir::Time); + QFileInfo currentSqliteLogFile(QString::fromStdString(myGuiLog->getMySqliteLogFileName())); + + treeWidget_logFiles->clear(); int i; for (i=0; i < dbFilesList.size(); i++) { @@ -1354,6 +1357,11 @@ void settingsDialogImpl::refreshLogFileList() QTreeWidgetItem *item = new QTreeWidgetItem; item->setText(0, dbFilesList.at(i).fileName()); item->setData(0, Qt::UserRole, dbFilesList.at(i).absoluteFilePath()); + if(currentSqliteLogFile.fileName() == dbFilesList.at(i).fileName()) { + item->setData(0, Qt::BackgroundColorRole, QColor(Qt::red)); + item->setData(0, Qt::TextColorRole, QColor(Qt::white)); + item->setData(0, Qt::UserRole+1, "current"); + } treeWidget_logFiles->addTopLevelItem(item); } treeWidget_logFiles->sortItems(0, Qt::DescendingOrder); @@ -1370,8 +1378,10 @@ void settingsDialogImpl::deleteLogFile() if(ret == QMessageBox::Yes) { for (int i = 0; i < selectedItemsList.size(); ++i) { - if(!QFile::remove(selectedItemsList.at(i)->data(0, Qt::UserRole).toString())) { - QMessageBox::warning(this, "Remove log file", "PokerTH cannot remove this log file, please verify that you have write access to this file!", QMessageBox::Close ); + if(selectedItemsList.at(i)->data(0, Qt::UserRole+1).toString() != "current") { + if(!QFile::remove(selectedItemsList.at(i)->data(0, Qt::UserRole).toString())) { + QMessageBox::warning(this, "Remove log file", "PokerTH cannot remove this log file, please verify that you have write access to this file!", QMessageBox::Close ); + } } } refreshLogFileList(); @@ -1433,6 +1443,13 @@ void settingsDialogImpl::showLogFilePreview() if(selectedItem) { myGuiLog->showLog(selectedItem->data(0, Qt::UserRole).toString(), textBrowser_logPreview); + + if(selectedItem->data(0, Qt::UserRole+1).toString() == "current") { + pushButton_deleteLog->setDisabled(true); + } + else { + pushButton_deleteLog->setEnabled(true); + } } QTextCursor cursor(textBrowser_logPreview->textCursor()); diff --git a/src/gui/qt/startwindow.ui b/src/gui/qt/startwindow.ui index 34b25b0c..417d0d93 100644 --- a/src/gui/qt/startwindow.ui +++ b/src/gui/qt/startwindow.ui @@ -198,7 +198,7 @@ 0 0 450 - 20 + 26 @@ -213,8 +213,8 @@ - +