diff options
author | Arno <am@disconnect.de> | 2010-07-31 16:26:10 +0200 |
---|---|---|
committer | Arno <am@disconnect.de> | 2010-07-31 16:26:10 +0200 |
commit | 8eba6e7f033617f3e7ea3bd9913105df0de74ae2 (patch) | |
tree | 8d4b93a4a686e6e57526b77033bb985fa9545036 /configurationdialog.cpp | |
parent | 6d3b28f9b12964b161b5a7ac0038435cfdd6e27b (diff) | |
download | SheMov-8eba6e7f033617f3e7ea3bd9913105df0de74ae2.tar.gz SheMov-8eba6e7f033617f3e7ea3bd9913105df0de74ae2.tar.bz2 SheMov-8eba6e7f033617f3e7ea3bd9913105df0de74ae2.zip |
Implement FilePropertiesDialog
Implemented a dialog for file properties. When the mime type says it's a
video, fork ffprobe to read the properties of all streams and show them
in a QTreeView powered by a SmTreeModel. If the mime type is image, use
QImage to read some properties and show them in the same dialog.
This commit introduces the new class FilePropertiesDialog. I also had to
implement a copy constructor for SmTreeItem. It obsoletes classes
ActorWidget, ActorModel and MoviePropertiesDialog.
Diffstat (limited to 'configurationdialog.cpp')
-rw-r--r-- | configurationdialog.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/configurationdialog.cpp b/configurationdialog.cpp index f453700..6d6899c 100644 --- a/configurationdialog.cpp +++ b/configurationdialog.cpp @@ -18,6 +18,7 @@ #include <QApplication> #include <QSettings> #include <QRegExp> +#include <QFileInfo> #include "configurationdialog.h" #include "programconfigurator.h" @@ -52,6 +53,11 @@ ConfigurationDialog::ConfigurationDialog(QWidget *parent, Qt::WindowFlags f) : Q mBurnDir->setCompleter(fsCompleter); miscGrid->addWidget(miscl3, 2, 0); miscGrid->addWidget(mBurnDir, 2, 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); mTab->addTab(miscWidget, tr("Misc. settings")); // movie viewer @@ -124,6 +130,7 @@ void ConfigurationDialog::readSettings(){ } mArchiveDir->setText(s.value("paths/archivedir").toString()); mBurnDir->setText(s.value("paths/burn").toString()); + mFfProbePath->setText(s.value("paths/ffprobe").toString()); //read database mDatabaseHost->setText(s.value("database/hostname").toString()); @@ -140,6 +147,11 @@ void ConfigurationDialog::writeSettings(){ s.setValue("ui/folderIcon", mIconForFolder->currentText()); s.setValue("paths/archivedir", mArchiveDir->text()); s.setValue("paths/burn", mBurnDir->text()); + QString ffprobe = mFfProbePath->text(); + QFileInfo ffProbeInfo(ffprobe); + if(ffProbeInfo.exists() && ffProbeInfo.isExecutable()){ + s.setValue("paths/ffprobe", ffprobe); + } //write database s.setValue("database/hostname", mDatabaseHost->text()); |