diff options
-rw-r--r-- | configurationdialog.cpp | 83 | ||||
-rw-r--r-- | configurationdialog.h | 7 | ||||
-rw-r--r-- | smdirmodel.cpp | 18 |
3 files changed, 58 insertions, 50 deletions
diff --git a/configurationdialog.cpp b/configurationdialog.cpp index db54dfe..da7142d 100644 --- a/configurationdialog.cpp +++ b/configurationdialog.cpp @@ -178,32 +178,40 @@ ConfigurationDialog::ConfigurationDialog(QWidget *parent, Qt::WindowFlags f) : S folderIconLayout->addWidget(mIconForFolder); folderIconBox->setLayout(folderIconLayout); - QGroupBox *movieIconBox = new QGroupBox(tr("Icon for movies")); - QHBoxLayout *movieIconLayout = new QHBoxLayout; - mIconForMovie = new QComboBox; - mIconForMovie->setModel(mIconModel); - movieIconLayout->addWidget(mIconForMovie); - movieIconBox->setLayout(movieIconLayout); - - QGroupBox *pictureIconBox = new QGroupBox(tr("Icon for pictures")); - QHBoxLayout *pictureIconLayout = new QHBoxLayout; - mIconForPic = new QComboBox; - mIconForPic->setModel(mIconModel); - pictureIconLayout->addWidget(mIconForPic); - pictureIconBox->setLayout(pictureIconLayout); - - QGroupBox *otherIconBox = new QGroupBox(tr("Icon for other")); - QHBoxLayout *otherIconLayout = new QHBoxLayout; - mIconForOther = new QComboBox; - mIconForOther->setModel(mIconModel); - otherIconLayout->addWidget(mIconForOther); - otherIconBox->setLayout(otherIconLayout); + QGroupBox *fileIconBox = new QGroupBox(tr("Icon for files")); + QHBoxLayout *fileIconLayout = new QHBoxLayout; + mIconForFile = new QComboBox; + mIconForFile->setModel(mIconModel); + fileIconLayout->addWidget(mIconForFile); + fileIconBox->setLayout(fileIconLayout); + + QGroupBox *seriesIconBox = new QGroupBox(tr("Icon for series")); + QHBoxLayout *seriesIconLayout = new QHBoxLayout; + mIconForSeries= new QComboBox; + mIconForSeries->setModel(mIconModel); + seriesIconLayout->addWidget(mIconForSeries); + seriesIconBox->setLayout(seriesIconLayout); + + QGroupBox *actorIconBox = new QGroupBox(tr("Icon for actors")); + QHBoxLayout *actorIconLayout = new QHBoxLayout; + mIconForActor = new QComboBox; + mIconForActor->setModel(mIconModel); + actorIconLayout->addWidget(mIconForActor); + actorIconBox->setLayout(actorIconLayout); + + QGroupBox *genreIconBox = new QGroupBox(tr("Icon for genres")); + QHBoxLayout *genreIconLayout = new QHBoxLayout; + mIconForGenre = new QComboBox; + mIconForGenre->setModel(mIconModel); + genreIconLayout->addWidget(mIconForGenre); + genreIconBox->setLayout(genreIconLayout); QVBoxLayout *iconWidgetLayout = new QVBoxLayout; iconWidgetLayout->addWidget(folderIconBox); - iconWidgetLayout->addWidget(movieIconBox); - iconWidgetLayout->addWidget(pictureIconBox); - iconWidgetLayout->addWidget(otherIconBox); + iconWidgetLayout->addWidget(fileIconBox); + iconWidgetLayout->addWidget(seriesIconBox); + iconWidgetLayout->addWidget(actorIconBox); + iconWidgetLayout->addWidget(genreIconBox); iconWidgetLayout->addStretch(); QWidget *iconWidget = new QWidget; iconWidget->setLayout(iconWidgetLayout); @@ -433,18 +441,22 @@ void ConfigurationDialog::readSettings(){ int pos = mIconForFolder->findText(iconText); pos = pos > -1 ? pos : 0; mIconForFolder->setCurrentIndex(pos); - iconText = s.value("ui/movieicon", "Dildo").toString(); - pos = mIconForMovie->findText(iconText); + iconText = s.value("ui/fileicon", "Dildo").toString(); + pos = mIconForFile->findText(iconText); pos = pos > -1 ? pos : 0; - mIconForMovie->setCurrentIndex(pos); - iconText = s.value("ui/pictureicon", "Dildo").toString(); - pos = mIconForPic->findText(iconText); + mIconForFile->setCurrentIndex(pos); + iconText = s.value("ui/seriesicon", "Dildo").toString(); + pos = mIconForSeries->findText(iconText); pos = pos > -1 ? pos : 0; - mIconForPic->setCurrentIndex(pos); - iconText = s.value("ui/othericon", "Dildo").toString(); - pos = mIconForOther->findText(iconText); + mIconForSeries->setCurrentIndex(pos); + iconText = s.value("ui/actoricon", "Dildo").toString(); + pos = mIconForActor->findText(iconText); pos = pos > -1 ? pos : 0; - mIconForOther->setCurrentIndex(pos); + mIconForActor->setCurrentIndex(pos); + iconText = s.value("ui/genreicon", "Dildo").toString(); + pos = mIconForGenre->findText(iconText); + pos = pos > -1 ? pos : 0; + mIconForGenre->setCurrentIndex(pos); // read misc mHoverPics->setChecked(s.value("ui/hoverpics", false).toBool()); @@ -536,9 +548,10 @@ void ConfigurationDialog::writeSettings(){ //write icons s.setValue("ui/foldericon", mIconForFolder->currentText()); - s.setValue("ui/movieicon", mIconForMovie->currentText()); - s.setValue("ui/pictureicon", mIconForPic->currentText()); - s.setValue("ui/othericon", mIconForOther->currentText()); + s.setValue("ui/fileicon", mIconForFile->currentText()); + s.setValue("ui/seriesicon", mIconForSeries->currentText()); + s.setValue("ui/actoricon", mIconForActor->currentText()); + s.setValue("ui/genreicon", mIconForGenre->currentText()); //write misc s.setValue("ui/hoverpics", (mHoverPics->checkState() == Qt::Checked)); diff --git a/configurationdialog.h b/configurationdialog.h index 86d816a..c266d37 100644 --- a/configurationdialog.h +++ b/configurationdialog.h @@ -69,9 +69,10 @@ class ConfigurationDialog : public SmDialog { QLineEdit *mStripPath; QLineEdit *mGrabFrameFrom; QComboBox *mIconForFolder; - QComboBox *mIconForMovie; - QComboBox *mIconForPic; - QComboBox *mIconForOther; + QComboBox *mIconForFile; + QComboBox *mIconForSeries; + QComboBox *mIconForActor; + QComboBox *mIconForGenre; QComboBox *mInfoBox; QComboBox *mMapBox; QCheckBox *mHoverPics; diff --git a/smdirmodel.cpp b/smdirmodel.cpp index 1d90573..f967cf1 100644 --- a/smdirmodel.cpp +++ b/smdirmodel.cpp @@ -56,15 +56,13 @@ QVariant SmDirModel::data(const QModelIndex &index, int role) const{ return i->data(Present); case Qt::DecorationRole: { if(index.column() == 0){ - QStringList mime = i->data(Type).toString().split('/'); - if(mime.at(0) == "inode"){ + QFileInfo fi(i->data(FullPath).toString()); + if(fi.isDir()){ return mIcons.value("folder"); } - if(!mIcons.contains(mime.at(0))){ - return mIcons.value("other"); + if(fi.isFile()){ + return mIcons.value("file"); } - return mIcons.value(mime.at(0).toLower()); - }else{ return QVariant(); } } @@ -173,12 +171,8 @@ void SmDirModel::readSettings(){ QSettings s; QString iconName = s.value("ui/foldericon").toString(); mIcons.insert("folder", QIcon(icons.value(iconName))); - iconName = s.value("ui/movieicon").toString(); - mIcons.insert("video", QIcon(icons.value(iconName))); - iconName = s.value("ui/pictureicon").toString(); - mIcons.insert("image", QIcon(icons.value(iconName))); - iconName = s.value("ui/othericon").toString(); - mIcons.insert("other", QIcon(icons.value(iconName))); + iconName = s.value("ui/fileicon").toString(); + mIcons.insert("file", QIcon(icons.value(iconName))); bool autorefresh = s.value("ui/autorefresh", false).toBool(); if(autorefresh){ mRefreshTimer->stop(); |