X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/65d7ef184acf97e7881050df88ddace97bde4b93..43cc016f8b3ec48157a86815a050518a41b423b2:/src/settings/viewmodes/generalviewsettingspage.cpp diff --git a/src/settings/viewmodes/generalviewsettingspage.cpp b/src/settings/viewmodes/generalviewsettingspage.cpp index 51ab664f1..988f243c1 100644 --- a/src/settings/viewmodes/generalviewsettingspage.cpp +++ b/src/settings/viewmodes/generalviewsettingspage.cpp @@ -40,11 +40,15 @@ GeneralViewSettingsPage::GeneralViewSettingsPage(const QUrl &url, QWidget *paren globalViewPropsLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); m_localViewProps = new QRadioButton(i18nc("@option:radio", "Remember display style for each folder")); - QLabel *localViewPropsLabel = new QLabel(i18nc("@info", "Dolphin will create a hidden .directory file in each folder you change view properties for.")); + QLabel *localViewPropsLabel = new QLabel(i18nc("@info", + "Dolphin will add file system metadata to folders you change view properties for. If that is not possible, " + "a hidden .directory file is created instead.")); localViewPropsLabel->setFont(QFontDatabase::systemFont(QFontDatabase::SmallestReadableFont)); localViewPropsLabel->setWordWrap(true); localViewPropsLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); + m_dynamicView = new QCheckBox(i18nc("option:check", "Use icons view mode for locations which mostly contain media files")); + QButtonGroup *viewGroup = new QButtonGroup(this); viewGroup->addButton(m_globalViewProps); viewGroup->addButton(m_localViewProps); @@ -52,6 +56,7 @@ GeneralViewSettingsPage::GeneralViewSettingsPage(const QUrl &url, QWidget *paren topLayout->addRow(QString(), globalViewPropsLabel); topLayout->addRow(QString(), m_localViewProps); topLayout->addRow(QString(), localViewPropsLabel); + topLayout->addRow(QString(), m_dynamicView); topLayout->addItem(new QSpacerItem(0, Dolphin::VERTICAL_SPACER_HEIGHT, QSizePolicy::Fixed, QSizePolicy::Fixed)); @@ -110,6 +115,7 @@ GeneralViewSettingsPage::GeneralViewSettingsPage(const QUrl &url, QWidget *paren "edit_select_all", "toggle_selection_mode", "create_dir", + "create_file", "show_preview", "show_hidden_files", "show_in_groups", @@ -124,7 +130,8 @@ GeneralViewSettingsPage::GeneralViewSettingsPage(const QUrl &url, QWidget *paren m_doubleClickViewComboBox->addItem(QIcon::fromTheme("list-add"), i18nc("@item:inlistbox", "Custom Command"), customCommand); m_doubleClickViewComboBox->insertSeparator(2); - DolphinMainWindow *mainWindow = static_cast(QApplication::activeWindow()); + DolphinMainWindow *mainWindow = qobject_cast(QApplication::activeWindow()); + if (mainWindow != nullptr) { KActionCollection *actions = mainWindow->actionCollection(); // get the allowed actions from actionCollection and add them to the combobox @@ -187,6 +194,7 @@ GeneralViewSettingsPage::GeneralViewSettingsPage(const QUrl &url, QWidget *paren connect(m_showSelectionToggle, &QCheckBox::toggled, this, &GeneralViewSettingsPage::changed); connect(m_renameInline, &QCheckBox::toggled, this, &GeneralViewSettingsPage::changed); connect(m_hideXtrashFiles, &QCheckBox::toggled, this, &GeneralViewSettingsPage::changed); + connect(m_dynamicView, &QCheckBox::toggled, this, &GeneralViewSettingsPage::changed); connect(m_doubleClickViewCustomAction, &QLineEdit::textChanged, this, &GeneralViewSettingsPage::changed); connect(m_doubleClickViewComboBox, qOverload(&QComboBox::currentIndexChanged), this, &GeneralViewSettingsPage::changed); connect(m_doubleClickViewComboBox, qOverload(&QComboBox::currentIndexChanged), this, &GeneralViewSettingsPage::updateCustomActionVisibility); @@ -208,6 +216,7 @@ void GeneralViewSettingsPage::applySettings() settings->setShowSelectionToggle(m_showSelectionToggle->isChecked()); settings->setRenameInline(m_renameInline->isChecked()); settings->setHideXTrashFile(m_hideXtrashFiles->isChecked()); + settings->setDynamicView(m_dynamicView->isChecked()); settings->setAutoExpandFolders(m_autoExpandFolders->isChecked()); settings->setBrowseThroughArchives(m_openArchivesAsFolder->isChecked()); settings->setDoubleClickViewCustomAction(m_doubleClickViewCustomAction->text()); @@ -242,6 +251,7 @@ void GeneralViewSettingsPage::loadSettings() m_showSelectionToggle->setChecked(GeneralSettings::showSelectionToggle()); m_renameInline->setChecked(GeneralSettings::renameInline()); m_hideXtrashFiles->setChecked(GeneralSettings::hideXTrashFile()); + m_dynamicView->setChecked(GeneralSettings::dynamicView()); m_localViewProps->setChecked(!useGlobalViewProps); m_globalViewProps->setChecked(useGlobalViewProps);