-/***************************************************************************
- * Copyright (C) 2008-2011 by Peter Penz <peter.penz19@gmail.com> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
- ***************************************************************************/
+/*
+ * SPDX-FileCopyrightText: 2008-2011 Peter Penz <peter.penz19@gmail.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
#include "viewsettingstab.h"
#include "views/zoomlevelinfo.h"
#include <KLocalizedString>
+#include <KFormat>
#include <QApplication>
#include <QCheckBox>
m_widthBox(nullptr),
m_maxLinesBox(nullptr),
m_expandableFolders(nullptr),
- m_recursiveDirectorySizeLimit(nullptr)
+ m_recursiveDirectorySizeLimit(nullptr),
+ m_useRelatetiveDates(nullptr),
+ m_useShortDates(nullptr)
{
QFormLayout* topLayout = new QFormLayout(this);
topLayout->addRow(i18nc("@title:group", "Folder size displays:"), m_numberOfItems);
topLayout->addRow(QString(), contentsSizeLayout);
#endif
+
+ QDateTime thirtyMinutesAgo = QDateTime::currentDateTime().addSecs(-30 * 60);
+ QLocale local;
+ KFormat formatter(local);
+
+ m_useRelatetiveDates = new QRadioButton(i18nc(
+ "option:radio as in relative date", "Relative (e.g. '%1')", formatter.formatRelativeDateTime(thirtyMinutesAgo, QLocale::ShortFormat))
+ );
+ m_useShortDates = new QRadioButton(
+ i18nc("option:radio as in absolute date", "Absolute (e.g. '%1')", local.toString(thirtyMinutesAgo, QLocale::ShortFormat))
+ );
+
+ QButtonGroup* dateFormatGroup = new QButtonGroup(this);
+ dateFormatGroup->addButton(m_useRelatetiveDates);
+ dateFormatGroup->addButton(m_useShortDates);
+
+ topLayout->addRow(i18nc("@title:group", "Date style:"), m_useRelatetiveDates);
+ topLayout->addRow(QString(), m_useShortDates);
+
break;
}
m_recursiveDirectorySizeLimit->setEnabled(m_sizeOfContents->isChecked());
});
#endif
+ connect(m_useRelatetiveDates, &QRadioButton::toggled, this, &ViewSettingsTab::changed);
+ connect(m_useShortDates, &QRadioButton::toggled, this, &ViewSettingsTab::changed);
break;
default:
break;
DetailsModeSettings::setDirectorySizeCount(m_numberOfItems->isChecked());
DetailsModeSettings::setRecursiveDirectorySizeLimit(m_recursiveDirectorySizeLimit->value());
#endif
+ DetailsModeSettings::setUseShortRelativeDates(m_useRelatetiveDates->isChecked());
break;
default:
break;
break;
case DetailsMode:
m_expandableFolders->setChecked(DetailsModeSettings::expandableFolders());
- if (DetailsModeSettings::directorySizeCount()) {
- m_numberOfItems->setChecked(true);
- m_recursiveDirectorySizeLimit->setEnabled(false);
- } else {
- m_sizeOfContents->setChecked(true);
- m_recursiveDirectorySizeLimit->setEnabled(true);
- }
- m_recursiveDirectorySizeLimit->setValue(DetailsModeSettings::recursiveDirectorySizeLimit());
+ #ifndef Q_OS_WIN
+ if (DetailsModeSettings::directorySizeCount()) {
+ m_numberOfItems->setChecked(true);
+ m_recursiveDirectorySizeLimit->setEnabled(false);
+ } else {
+ m_sizeOfContents->setChecked(true);
+ m_recursiveDirectorySizeLimit->setEnabled(true);
+ }
+ m_recursiveDirectorySizeLimit->setValue(DetailsModeSettings::recursiveDirectorySizeLimit());
+ #endif
+ m_useRelatetiveDates->setChecked(DetailsModeSettings::useShortRelativeDates());
+ m_useShortDates->setChecked(!DetailsModeSettings::useShortRelativeDates());
break;
default:
break;