┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/panels
diff options
context:
space:
mode:
authorMichael Heidelbach <[email protected]>2018-03-15 15:38:14 +0100
committerMichael Heidelbach <[email protected]>2018-04-11 13:14:59 +0200
commit7d463ddd04bf052650843ff8523b36789c48733b (patch)
tree185c17ca93c7c80422668500b76b32d79e0fa3bb /src/panels
parent9536d1170a9ffa787b6a9809b2600c669d60d498 (diff)
infopanel: Add choice of date display formats
Summary: Let user choose date display format via checkbox in context menu [[ https://phabricator.kde.org/file/info/PHID-FILE-5xjr7tvypj3jaczjtzrz | Example ]] Depends on D11242 FEATURE: 392352 Test Plan: visual inspection Reviewers: #dolphin, markg, ngraham Reviewed By: markg, ngraham Subscribers: broulik, markg, ngraham Tags: #dolphin, #kde_applications Differential Revision: https://phabricator.kde.org/D11245
Diffstat (limited to 'src/panels')
-rw-r--r--src/panels/information/dolphin_informationpanelsettings.kcfg8
-rw-r--r--src/panels/information/informationpanelcontent.cpp13
2 files changed, 20 insertions, 1 deletions
diff --git a/src/panels/information/dolphin_informationpanelsettings.kcfg b/src/panels/information/dolphin_informationpanelsettings.kcfg
index 53c756d24..dbc1ab6d2 100644
--- a/src/panels/information/dolphin_informationpanelsettings.kcfg
+++ b/src/panels/information/dolphin_informationpanelsettings.kcfg
@@ -10,5 +10,13 @@
<label>Previews shown</label>
<default>true</default>
</entry>
+ <entry name="dateFormat" type="Enum">
+ <label>Date display format</label>
+ <choices>
+ <choice name="LongFormat" />
+ <choice name="ShortFormat" />
+ </choices>
+ <default>0</default>
+ </entry>
</group>
</kcfg>
diff --git a/src/panels/information/informationpanelcontent.cpp b/src/panels/information/informationpanelcontent.cpp
index 5dcf8612e..0d6987bb0 100644
--- a/src/panels/information/informationpanelcontent.cpp
+++ b/src/panels/information/informationpanelcontent.cpp
@@ -117,7 +117,8 @@ InformationPanelContent::InformationPanelContent(QWidget* parent) :
#endif
m_metaDataWidget->setFont(QFontDatabase::systemFont(QFontDatabase::SmallestReadableFont));
m_metaDataWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum);
-
+ m_metaDataWidget->setDateFormat(static_cast<Baloo::DateFormats>(InformationPanelSettings::dateFormat()));
+
// Encapsulate the MetaDataWidget inside a container that has a dummy widget
// at the bottom. This prevents that the meta data widget gets vertically stretched
// in the case where the height of m_metaDataArea > m_metaDataWidget.
@@ -193,6 +194,7 @@ void InformationPanelContent::showItem(const KFileItem& item)
}
if (m_metaDataWidget) {
+ m_metaDataWidget->setDateFormat(static_cast<Baloo::DateFormats>(InformationPanelSettings::dateFormat()));
m_metaDataWidget->show();
m_metaDataWidget->setItems(KFileItemList() << item);
}
@@ -281,6 +283,10 @@ void InformationPanelContent::configureSettings(const QList<QAction*>& customCon
QAction* configureAction = popup.addAction(i18nc("@action:inmenu", "Configure..."));
configureAction->setIcon(QIcon::fromTheme(QStringLiteral("configure")));
+ QAction* dateformatAction = popup.addAction(i18nc("@action:inmenu", "Condensed Date"));
+ dateformatAction->setIcon(QIcon::fromTheme(QStringLiteral("change-date-symbolic")));
+ dateformatAction->setCheckable(true);
+ dateformatAction->setChecked(InformationPanelSettings::dateFormat() == static_cast<int>(Baloo::DateFormats::ShortFormat));
popup.addSeparator();
foreach (QAction* action, customContextMenuActions) {
popup.addAction(action);
@@ -297,6 +303,11 @@ void InformationPanelContent::configureSettings(const QList<QAction*>& customCon
if (action == previewAction) {
m_preview->setVisible(isChecked);
InformationPanelSettings::setPreviewsShown(isChecked);
+ } else if (action == dateformatAction) {
+ int dateFormat = static_cast<int>(isChecked ? Baloo::DateFormats::ShortFormat : Baloo::DateFormats::LongFormat);
+
+ InformationPanelSettings::setDateFormat(dateFormat);
+ refreshMetaData();
} else if (action == configureAction) {
FileMetaDataConfigurationDialog* dialog = new FileMetaDataConfigurationDialog(this);
dialog->setDescription(i18nc("@label::textbox",