summaryrefslogtreecommitdiffstats
path: root/configurationdialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'configurationdialog.cpp')
-rw-r--r--configurationdialog.cpp64
1 files changed, 51 insertions, 13 deletions
diff --git a/configurationdialog.cpp b/configurationdialog.cpp
index 6d6899c..20e424b 100644
--- a/configurationdialog.cpp
+++ b/configurationdialog.cpp
@@ -19,6 +19,9 @@
#include <QSettings>
#include <QRegExp>
#include <QFileInfo>
+#include <QGroupBox>
+#include <QCheckBox>
+#include <QSpinBox>
#include "configurationdialog.h"
#include "programconfigurator.h"
@@ -33,31 +36,60 @@ ConfigurationDialog::ConfigurationDialog(QWidget *parent, Qt::WindowFlags f) : Q
//misc tab
QWidget *miscWidget = new QWidget;
- QGridLayout *miscGrid = new QGridLayout;
- miscGrid->setAlignment(Qt::AlignTop);
- QLabel *miscl1 = new QLabel(tr("Select icon for &folders"));
+ QVBoxLayout *miscLayout = new QVBoxLayout;
+ miscLayout->setAlignment(Qt::AlignTop);
+
+ //misc - icons
+ QGroupBox *iconBox = new QGroupBox(tr("Icon for folders"));
+ QHBoxLayout *iconLayout = new QHBoxLayout;
mIconForFolder = new QComboBox;
- miscl1->setBuddy(mIconForFolder);
QStringList icons = QStringList() << tr("Dildo") << tr("Normal");
mIconForFolder->addItems(icons);
- miscGrid->addWidget(miscl1, 0, 0);
- miscGrid->addWidget(mIconForFolder, 0, 1);
+ iconLayout->addWidget(mIconForFolder);
+ iconBox->setLayout(iconLayout);
+
+ //misc - directories
+ QGroupBox *pathBox = new QGroupBox(tr("Directories"));
+ QGridLayout *pathGrid = new QGridLayout;
QLabel *miscl2 = new QLabel(tr("Archive directory"));
mArchiveDir = new QLineEdit;
mArchiveDir->setCompleter(fsCompleter);
- miscGrid->addWidget(miscl2, 1, 0);
- miscGrid->addWidget(mArchiveDir, 1, 1);
- miscWidget->setLayout(miscGrid);
+ pathGrid->addWidget(miscl2, 0, 0);
+ pathGrid->addWidget(mArchiveDir, 0, 1);
QLabel *miscl3 = new QLabel(tr("Burn Directory"));
mBurnDir = new QLineEdit;
mBurnDir->setCompleter(fsCompleter);
- miscGrid->addWidget(miscl3, 2, 0);
- miscGrid->addWidget(mBurnDir, 2, 1);
+ pathGrid->addWidget(miscl3, 1, 0);
+ pathGrid->addWidget(mBurnDir, 1, 1);
QLabel *miscl4 = new QLabel(tr("Path to ffprobe"));
mFfProbePath = new QLineEdit;
mFfProbePath->setCompleter(fsCompleter);
- miscGrid->addWidget(miscl4, 3, 0);
- miscGrid->addWidget(mFfProbePath, 3, 1);
+ pathGrid->addWidget(miscl4, 2, 0);
+ pathGrid->addWidget(mFfProbePath, 2, 1);
+ pathBox->setLayout(pathGrid);
+
+ //misc - hover
+ QGroupBox *hoverBox = new QGroupBox(tr("Hover options"));
+ QVBoxLayout *hoverLayout = new QVBoxLayout;
+ mHoverPics = new QCheckBox(tr("Show picture when hovering"));
+ hoverLayout->addWidget(mHoverPics);
+ mHoverArchive = new QCheckBox(tr("Show further information when hovering over archive"));
+ hoverLayout->addWidget(mHoverArchive);
+ mHoverOpacity = new QSpinBox;
+ mHoverOpacity->setMinimum(1);
+ mHoverOpacity->setMaximum(10);
+ QLabel *miscl5 = new QLabel(tr("Opacity of hover window"));
+ QHBoxLayout *opacityLayout = new QHBoxLayout;
+ opacityLayout->addWidget(miscl5);
+ opacityLayout->addWidget(mHoverOpacity);
+ hoverLayout->addLayout(opacityLayout);
+ hoverBox->setLayout(hoverLayout);
+
+ //misc - assemble
+ miscLayout->addWidget(iconBox);
+ miscLayout->addWidget(pathBox);
+ miscLayout->addWidget(hoverBox);
+ miscWidget->setLayout(miscLayout);
mTab->addTab(miscWidget, tr("Misc. settings"));
// movie viewer
@@ -131,6 +163,9 @@ void ConfigurationDialog::readSettings(){
mArchiveDir->setText(s.value("paths/archivedir").toString());
mBurnDir->setText(s.value("paths/burn").toString());
mFfProbePath->setText(s.value("paths/ffprobe").toString());
+ mHoverPics->setChecked(s.value("ui/hoverpics", false).toBool());
+ mHoverArchive->setChecked(s.value("ui/hoverarchive", false).toBool());
+ mHoverOpacity->setValue(s.value("ui/hoveropacity", 10).toInt());
//read database
mDatabaseHost->setText(s.value("database/hostname").toString());
@@ -152,6 +187,9 @@ void ConfigurationDialog::writeSettings(){
if(ffProbeInfo.exists() && ffProbeInfo.isExecutable()){
s.setValue("paths/ffprobe", ffprobe);
}
+ s.setValue("ui/hoverpics", (mHoverPics->checkState() == Qt::Checked));
+ s.setValue("ui/hoverarchive", (mHoverArchive->checkState() == Qt::Checked));
+ s.setValue("ui/hoveropacity", mHoverOpacity->value());
//write database
s.setValue("database/hostname", mDatabaseHost->text());