23 #include "logdirectorypicker.h"
24 #include "ui_logdirectorypicker.h"
26 #include "configuration/doomseekerconfig.h"
27 #include "datapaths.h"
28 #include "templatedpathresolver.h"
31 #include <QFileDialog>
34 DClass<LogDirectoryPicker> :
public Ui::LogDirectoryPicker
48 d->btnBrowse->setIcon(style()->standardIcon(QStyle::SP_DirOpenIcon));
50 d->loggingEnabled = gConfig.doomseeker.bLogCreatedServer;
51 d->dialogDir = gConfig.doomseeker.previousCreateServerLogDir;
53 d->cbLoggingEnabled->setChecked(d->loggingEnabled);
54 setPathAndUpdate(d->dialogDir);
57 LogDirectoryPicker::~LogDirectoryPicker()
61 void LogDirectoryPicker::cbLoggingEnabledChecked(
bool isChecked)
63 d->loggingEnabled = isChecked;
64 gConfig.doomseeker.bLogCreatedServer = d->loggingEnabled;
67 void LogDirectoryPicker::textEdited()
69 d->dialogDir = d->pathTextBox->text();
70 updateLoggingStatus(d->dialogDir);
73 void LogDirectoryPicker::browse()
75 QString strPath = QFileDialog::getExistingDirectory(
this,
76 tr(
"Doomseeker - select Log path"),
78 if (!strPath.isEmpty())
82 void LogDirectoryPicker::updateLoggingStatus(
const QString &path)
87 d->pathNotFound->setVisible(!exists);
88 d->cbLoggingEnabled->setEnabled(exists);
90 setLoggingEnabled(
false);
94 d->pathNotFound->hide();
95 d->cbLoggingEnabled->setEnabled(
true);
97 gConfig.doomseeker.previousCreateServerLogDir = d->dialogDir;
103 d->pathTextBox->setText(path);
104 updateLoggingStatus(path);
107 void LogDirectoryPicker::setLoggingEnabled(
const bool &enabled)
109 d->loggingEnabled = enabled;
110 gConfig.doomseeker.bLogCreatedServer = d->loggingEnabled;
111 d->cbLoggingEnabled->setChecked(d->loggingEnabled);
114 const bool &LogDirectoryPicker::isLoggingEnabled()
const
116 return d->loggingEnabled;
119 const QString &LogDirectoryPicker::currentPath()
const