summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configurationdialog.cpp22
-rw-r--r--configurationdialog.h1
-rw-r--r--pictureviewer.cpp10
-rw-r--r--pictureviewer.h2
-rw-r--r--shemov.cpp1
5 files changed, 34 insertions, 2 deletions
diff --git a/configurationdialog.cpp b/configurationdialog.cpp
index e0bf2c5..c23569c 100644
--- a/configurationdialog.cpp
+++ b/configurationdialog.cpp
@@ -181,8 +181,24 @@ ConfigurationDialog::ConfigurationDialog(QWidget *parent, Qt::WindowFlags f) : Q
mTab->addTab(mMovieConfig, tr("Movies"));
// picture viewer
+ QGroupBox *picViewerBox = new QGroupBox(tr("Picture viewer options (external)"));
+ QHBoxLayout *picViewerBoxLayout = new QHBoxLayout;
mPicConfig = new ProgramConfigurator("pictureviewer", "Picture viewer");
- mTab->addTab(mPicConfig, tr("Pictures"));
+ picViewerBoxLayout->addWidget(mPicConfig);
+ picViewerBox->setLayout(picViewerBoxLayout);
+ QGroupBox *miscPicBox = new QGroupBox(tr("Misc. options (internal)"));
+ QVBoxLayout *miscPicBoxLayout = new QVBoxLayout;
+ mResizePicViewer = new QCheckBox(tr("Resize picture viewer to image size"));
+ miscPicBoxLayout->addWidget(mResizePicViewer);
+ miscPicBox->setLayout(miscPicBoxLayout);
+
+ // picture viewer - assemble
+ QVBoxLayout *picViewerLayout = new QVBoxLayout;
+ picViewerLayout->addWidget(picViewerBox);
+ picViewerLayout->addWidget(miscPicBox);
+ QWidget *picViewerWidget = new QWidget;
+ picViewerWidget->setLayout(picViewerLayout);
+ mTab->addTab(picViewerWidget, tr("Pictures"));
//database tab
QWidget *databaseWidget = new QWidget;
@@ -353,6 +369,9 @@ void ConfigurationDialog::readSettings(){
mIconizeCovers->setChecked(s.value("ui/iconizecovers", false).toBool());
mCursorOffset->setValue(s.value("ui/cursoroffset", SmGlobals::instance()->cursorSize().height()).toInt());
+ //read picture viewer
+ mResizePicViewer->setChecked(s.value("ui/resizepicviewer", false).toBool());
+
//read paths
mArchiveDir->setText(s.value("paths/archivedir").toString());
mBurnDir->setText(s.value("paths/burn").toString());
@@ -439,6 +458,7 @@ void ConfigurationDialog::writeSettings(){
//write pics
mPicConfig->writeSettings();
+ s.setValue("ui/resizepicviewer", (mResizePicViewer->checkState() == Qt::Checked));
//write colors
s.setValue("ui/seencolor", mColors.value(mSeenColor));
diff --git a/configurationdialog.h b/configurationdialog.h
index f7e2b4b..a13fb65 100644
--- a/configurationdialog.h
+++ b/configurationdialog.h
@@ -66,6 +66,7 @@ class ConfigurationDialog : public QDialog {
QCheckBox *mHoverMovies;
QCheckBox *mAutoAddCovers;
QCheckBox *mIconizeCovers;
+ QCheckBox *mResizePicViewer;
QSpinBox *mHoverOpacity;
QSpinBox *mCursorOffset;
QLabel *mSeenColor;
diff --git a/pictureviewer.cpp b/pictureviewer.cpp
index 502c544..0014b60 100644
--- a/pictureviewer.cpp
+++ b/pictureviewer.cpp
@@ -13,6 +13,7 @@
#include <QApplication>
#include <QDir>
#include <QWheelEvent>
+#include <QSettings>
#include <algorithm>
@@ -67,7 +68,9 @@ void PictureViewer::showPic(const QString &path, bool enableDirEntries){
img = img.scaled(maxSize, Qt::KeepAspectRatio, Qt::SmoothTransformation);
}
- resize(img.size() + QSize(20, 20));
+ if(mResize){
+ resize(img.size() + QSize(20, 20));
+ }
setSceneRect(viewport()->rect());
setGradient(img.toImage());
QGraphicsPixmapItem *item = new QGraphicsPixmapItem(img);
@@ -127,6 +130,11 @@ void PictureViewer::previous(){
}
}
+void PictureViewer::readSettings(){
+ QSettings s;
+ mResize = s.value("ui/resizepicviewer").toBool();
+}
+
void PictureViewer::wheelEvent(QWheelEvent *event){
int steps = event->delta() / 8 / 15;
if(steps < 0){
diff --git a/pictureviewer.h b/pictureviewer.h
index d4fba4c..adfa537 100644
--- a/pictureviewer.h
+++ b/pictureviewer.h
@@ -26,6 +26,7 @@ class PictureViewer : public QGraphicsView {
void showPic(const QString &path, bool enableDirEntries = true);
void next();
void previous();
+ void readSettings();
protected:
void wheelEvent(QWheelEvent *event);
@@ -41,6 +42,7 @@ class PictureViewer : public QGraphicsView {
QString mCurrentDir;
QFileInfoList mDirEntries;
QFileInfoList::const_iterator mCurrentEntry;
+ bool mResize;
};
class PictureviewerInfoItem : public QGraphicsItem {
diff --git a/shemov.cpp b/shemov.cpp
index ec846c5..9cb0a86 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -100,6 +100,7 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla
connect(mFSWidget->dirModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(setFsFree()));
connect(this, SIGNAL(configChanged()), mFSWidget->fileView(), SLOT(readConfig()));
connect(this, SIGNAL(configChanged()), mATree->seriesWidget(), SLOT(readSettings()));
+ connect(this, SIGNAL(configChanged()), SmGlobals::instance()->pictureViewer(), SLOT(readSettings()));
connect(mFSWidget, SIGNAL(mounted(bool)), this, SLOT(checkMount(bool)));
QWidget *centralWidget = new QWidget;