next steps on enhanced log file handling via settings dialog

This commit is contained in:
doitux
2010-06-29 09:44:27 +00:00
parent 1150d08a8a
commit 164e730ed2
5 changed files with 90 additions and 16 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ Replay::Replay() : replaySqliteLogDb(0)
replaySqliteLogDb = new QSqlDatabase();
*replaySqliteLogDb = QSqlDatabase::addDatabase("QSQLITE");
//replaySqliteLogDb->setDatabaseName(myLogDir->absolutePath()+"/pokerth-log-"+currentTime.toString("yyyy-MM-dd_hh.mm.ss")+".db");
//replaySqliteLogDb->setDatabaseName(myLogDir->absolutePath()+"/pokerth-log-"+currentTime.toString("yyyy-MM-dd_hh.mm.ss")+".pdb");
//if(!mySqliteLogDb->open()) {
// QMessageBox::critical(0, tr("ERROR"),mySqliteLogDb->lastError().text().toUtf8().data(), QMessageBox::Cancel);
//}
+16
View File
@@ -1501,6 +1501,22 @@ void gameTableImpl::meInAction() {
lineEdit_betValue->selectAll();
}
// if(this->isMinimized()){
// this->showNormal();
// this->activateWindow();
// this->raise();
// }
// else if(!this->isActiveWindow()) {
// this->showMinimized();
// this->activateWindow();
// this->raise();
// this->showNormal();
// this->activateWindow();
// this->raise();
//
// }
myActionIsRaise = 0;
myActionIsBet = 0;
+1 -1
View File
@@ -83,7 +83,7 @@ Log::Log(gameTableImpl* w, ConfigFile *c) : myW(w), myConfig(c), myLogDir(0), my
int i;
// lege sqlite-Datenbank
*mySqliteLogDb = QSqlDatabase::addDatabase("QSQLITE");
mySqliteLogDb->setDatabaseName(myLogDir->absolutePath()+"/pokerth-log-"+currentTime.toString("yyyy-MM-dd_hh.mm.ss")+".db");
mySqliteLogDb->setDatabaseName(myLogDir->absolutePath()+"/pokerth-log-"+currentTime.toString("yyyy-MM-dd_hh.mm.ss")+".pdb");
if(!mySqliteLogDb->open()) {
QMessageBox::critical(0, tr("ERROR"),mySqliteLogDb->lastError().text().toUtf8().data(), QMessageBox::Cancel);
}
@@ -120,6 +120,10 @@ settingsDialogImpl::settingsDialogImpl(QWidget *parent, ConfigFile *c, selectAva
connect( pushButton_removeCardDeckStyle, SIGNAL( clicked() ), this, SLOT( removeCardDeckStyle()) );
connect( pushButton_internetGameRemoveIgnoredPlayer, SIGNAL( clicked()), this, SLOT( removePlayerFromIgnoredPlayersList()));
connect( pushButton_deleteLog, SIGNAL(clicked()), this, SLOT (deleteLogFile()));
connect( pushButton_exportLogHtml, SIGNAL(clicked()), this, SLOT (exportLogToHtml()));
connect( pushButton_exportLogTxt, SIGNAL(clicked()), this, SLOT (exportLogToTxt()));
}
void settingsDialogImpl::exec() {
@@ -405,19 +409,7 @@ void settingsDialogImpl::exec() {
spinBox_logStoreDuration->setValue(myConfig->readConfigInt("LogStoreDuration"));
comboBox_logInterval->setCurrentIndex(myConfig->readConfigInt("LogInterval"));
QDir logFileDir;
logFileDir.setPath(QString::fromUtf8(myConfig->readConfigString("LogDir").c_str()));
QStringList filters;
filters << "*.db";
QStringList dbFilesList = logFileDir.entryList(filters, QDir::Files, QDir::Time);
QStringListIterator logFileIt(dbFilesList);
while (logFileIt.hasNext()) {
QTreeWidgetItem *item = new QTreeWidgetItem;
item->setText(0, logFileIt.next());
treeWidget_logFiles->addTopLevelItem(item);
}
refreshLogFileList();
bool tmpHasIpv6 = socket_has_ipv6();
@@ -795,7 +787,20 @@ void settingsDialogImpl::setLogDir()
QFileDialog::ShowDirsOnly
| QFileDialog::DontResolveSymlinks);
if (!dir.isEmpty()) lineEdit_logDir->setText(dir);
if (!dir.isEmpty()) {
QDir logDir(dir);
if(logDir.exists()) {
lineEdit_logDir->setText(dir);
refreshLogFileList();
}
else {
QMessageBox::warning(this, tr("Settings Error"),
tr("The log file directory doesn't exist.\n"
"Please select an valid directory!"),
QMessageBox::Ok);
}
}
}
void settingsDialogImpl::clearInternetGamePassword(bool clear) {
@@ -1168,3 +1173,52 @@ void settingsDialogImpl::removePlayerFromIgnoredPlayersList()
treeWidget_internetGameIgnoredPlayers->takeTopLevelItem(treeWidget_internetGameIgnoredPlayers->currentIndex().row());
}
}
void settingsDialogImpl::refreshLogFileList()
{
QDir logFileDir;
logFileDir.setPath(lineEdit_logDir->text());
QStringList filters;
filters << "*.pdb";
QFileInfoList dbFilesList = logFileDir.entryInfoList(filters, QDir::Files, QDir::Time);
treeWidget_logFiles->clear();
int i;
for (i=0; i < dbFilesList.size(); i++) {
QTreeWidgetItem *item = new QTreeWidgetItem;
item->setText(0, dbFilesList.at(i).fileName());
item->setData(0, Qt::UserRole, dbFilesList.at(i).absoluteFilePath());
treeWidget_logFiles->addTopLevelItem(item);
}
}
void settingsDialogImpl::deleteLogFile()
{
QTreeWidgetItem* selectedItem = treeWidget_logFiles->currentItem();
if(selectedItem) {
int ret = QMessageBox::warning(this, tr("PokerTH - Log file"),
tr("Do you really want to delete the seleted log file?"),
QMessageBox::Yes | QMessageBox::No);
if(ret == QMessageBox::Yes) {
QFile fileToDelete (selectedItem->data(0, Qt::UserRole).toString());
if(!fileToDelete.remove()) {
QMessageBox::warning(this, "Remove log file", "PokerTH cannot remove this log file, please check if you have write access to this file!", QMessageBox::Close );
}
refreshLogFileList();
}
}
}
void settingsDialogImpl::exportLogToHtml()
{
}
void settingsDialogImpl::exportLogToTxt()
{
}
@@ -91,6 +91,10 @@ public slots:
void addCardDeckStyle();
void removeCardDeckStyle();
void removePlayerFromIgnoredPlayersList();
void refreshLogFileList();
void deleteLogFile();
void exportLogToHtml();
void exportLogToTxt();
private: