]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/search/dolphinfacetswidget.cpp
Apply 1 suggestion(s) to 1 file(s)
[dolphin.git] / src / search / dolphinfacetswidget.cpp
index db53d595fa4ec707b83aa1aba4e02ae3f1f8c678..da36caa36d5bd6759ca5cfa097571db2b1dc3e51 100644 (file)
 #include <QMenu>
 #include <QToolButton>
 
-DolphinFacetsWidget::DolphinFacetsWidget(QWidget* parent) :
-    QWidget(parent),
-    m_typeSelector(nullptr),
-    m_dateSelector(nullptr),
-    m_ratingSelector(nullptr),
-    m_tagsSelector(nullptr)
+DolphinFacetsWidget::DolphinFacetsWidget(QWidget *parent)
+    : QWidget(parent)
+    , m_typeSelector(nullptr)
+    , m_dateSelector(nullptr)
+    , m_ratingSelector(nullptr)
+    m_tagsSelector(nullptr)
 {
     m_typeSelector = new QComboBox(this);
     m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("none")), i18nc("@item:inlistbox", "Any Type"), QString());
-    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("inode-directory")), i18nc("@item:inlistbox", "Folders") , QStringLiteral("Folder"));
-    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("text-x-generic")), i18nc("@item:inlistbox", "Documents") , QStringLiteral("Document"));
-    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("image-x-generic")), i18nc("@item:inlistbox", "Images") , QStringLiteral("Image"));
+    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("inode-directory")), i18nc("@item:inlistbox", "Folders"), QStringLiteral("Folder"));
+    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("text-x-generic")), i18nc("@item:inlistbox", "Documents"), QStringLiteral("Document"));
+    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("image-x-generic")), i18nc("@item:inlistbox", "Images"), QStringLiteral("Image"));
     m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("audio-x-generic")), i18nc("@item:inlistbox", "Audio Files"), QStringLiteral("Audio"));
-    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("video-x-generic")), i18nc("@item:inlistbox", "Videos") , QStringLiteral("Video"));
+    m_typeSelector->addItem(QIcon::fromTheme(QStringLiteral("video-x-generic")), i18nc("@item:inlistbox", "Videos"), QStringLiteral("Video"));
     initComboBox(m_typeSelector);
 
     const QDate currentDate = QDate::currentDate();
 
     m_dateSelector = new QComboBox(this);
     m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar")), i18nc("@item:inlistbox", "Any Date"), QDate());
-    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("go-jump-today")), i18nc("@item:inlistbox", "Today") , currentDate);
-    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("go-jump-today")), i18nc("@item:inlistbox", "Yesterday") , currentDate.addDays(-1));
-    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-week")), i18nc("@item:inlistbox", "This Week") , currentDate.addDays(1 - currentDate.dayOfWeek()));
-    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-month")), i18nc("@item:inlistbox", "This Month"), currentDate.addDays(1 - currentDate.day()));
-    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-year")), i18nc("@item:inlistbox", "This Year") , currentDate.addDays(1 - currentDate.dayOfYear()));
+    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("go-jump-today")), i18nc("@item:inlistbox", "Today"), currentDate);
+    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("go-jump-today")), i18nc("@item:inlistbox", "Yesterday"), currentDate.addDays(-1));
+    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-week")),
+                            i18nc("@item:inlistbox", "This Week"),
+                            currentDate.addDays(1 - currentDate.dayOfWeek()));
+    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-month")),
+                            i18nc("@item:inlistbox", "This Month"),
+                            currentDate.addDays(1 - currentDate.day()));
+    m_dateSelector->addItem(QIcon::fromTheme(QStringLiteral("view-calendar-year")),
+                            i18nc("@item:inlistbox", "This Year"),
+                            currentDate.addDays(1 - currentDate.dayOfYear()));
     initComboBox(m_dateSelector);
 
     m_ratingSelector = new QComboBox(this);
@@ -73,7 +79,7 @@ DolphinFacetsWidget::DolphinFacetsWidget(QWidget* parent) :
     connect(&m_tagsLister, &KCoreDirLister::itemsAdded, this, &DolphinFacetsWidget::updateTagsMenuItems);
     updateTagsMenu();
 
-    QHBoxLayouttopLayout = new QHBoxLayout(this);
+    QHBoxLayout *topLayout = new QHBoxLayout(this);
     topLayout->setContentsMargins(0, 0, 0, 0);
     topLayout->addWidget(m_typeSelector);
     topLayout->addWidget(m_dateSelector);
@@ -98,6 +104,11 @@ void DolphinFacetsWidget::changeEvent(QEvent *event)
     }
 }
 
+QSize DolphinFacetsWidget::minimumSizeHint() const
+{
+    return QSize(0, m_typeSelector->minimumHeight());
+}
+
 void DolphinFacetsWidget::resetSearchTerms()
 {
     m_typeSelector->setCurrentIndex(0);
@@ -139,13 +150,9 @@ QString DolphinFacetsWidget::facetType() const
     return m_typeSelector->currentData().toString();
 }
 
-bool DolphinFacetsWidget::isSearchTerm(const QStringterm) const
+bool DolphinFacetsWidget::isSearchTerm(const QString &term) const
 {
-    static const QLatin1String searchTokens[] {
-        QLatin1String("modified>="),
-        QLatin1String("rating>="),
-        QLatin1String("tag:"), QLatin1String("tag=")
-    };
+    static const QLatin1String searchTokens[]{QLatin1String("modified>="), QLatin1String("rating>="), QLatin1String("tag:"), QLatin1String("tag=")};
 
     for (const auto &searchToken : searchTokens) {
         if (term.startsWith(searchToken)) {
@@ -155,7 +162,7 @@ bool DolphinFacetsWidget::isSearchTerm(const QString& term) const
     return false;
 }
 
-void DolphinFacetsWidget::setSearchTerm(const QStringterm)
+void DolphinFacetsWidget::setSearchTerm(const QString &term)
 {
     if (term.startsWith(QLatin1String("modified>="))) {
         const QString value = term.mid(10);
@@ -165,14 +172,13 @@ void DolphinFacetsWidget::setSearchTerm(const QString& term)
         const QString value = term.mid(8);
         const int stars = value.toInt() / 2;
         setRating(stars);
-    } else if (term.startsWith(QLatin1String("tag:")) ||
-               term.startsWith(QLatin1String("tag="))) {
+    } else if (term.startsWith(QLatin1String("tag:")) || term.startsWith(QLatin1String("tag="))) {
         const QString value = term.mid(4);
         addSearchTag(value);
     }
 }
 
-void DolphinFacetsWidget::setFacetType(const QStringtype)
+void DolphinFacetsWidget::setFacetType(const QString &type)
 {
     for (int index = 0; index <= m_typeSelector->count(); index++) {
         if (type == m_typeSelector->itemData(index).toString()) {
@@ -190,7 +196,7 @@ void DolphinFacetsWidget::setRating(const int stars)
     m_ratingSelector->setCurrentIndex(stars);
 }
 
-void DolphinFacetsWidget::setTimespan(const QDatedate)
+void DolphinFacetsWidget::setTimespan(const QDate &date)
 {
     if (!date.isValid()) {
         return;
@@ -204,7 +210,7 @@ void DolphinFacetsWidget::setTimespan(const QDate& date)
     }
 }
 
-void DolphinFacetsWidget::addSearchTag(const QStringtag)
+void DolphinFacetsWidget::addSearchTag(const QString &tag)
 {
     if (tag.isEmpty() || m_searchTags.contains(tag)) {
         return;
@@ -214,7 +220,7 @@ void DolphinFacetsWidget::addSearchTag(const QString& tag)
     updateTagsSelector();
 }
 
-void DolphinFacetsWidget::removeSearchTag(const QStringtag)
+void DolphinFacetsWidget::removeSearchTag(const QString &tag)
 {
     if (tag.isEmpty() || !m_searchTags.contains(tag)) {
         return;
@@ -230,12 +236,12 @@ void DolphinFacetsWidget::resetSearchTags()
     updateTagsMenu();
 }
 
-void DolphinFacetsWidget::initComboBox(QComboBoxcombo)
+void DolphinFacetsWidget::initComboBox(QComboBox *combo)
 {
     combo->setFrame(false);
     combo->setMinimumHeight(parentWidget()->height());
     combo->setCurrentIndex(0);
-    connect(combo, QOverload<int>::of(&QComboBox::activated), this, &DolphinFacetsWidget::facetChanged);
+    connect(combo, &QComboBox::activated, this, &DolphinFacetsWidget::facetChanged);
 }
 
 void DolphinFacetsWidget::updateTagsSelector()
@@ -245,8 +251,7 @@ void DolphinFacetsWidget::updateTagsSelector()
 
     if (hasSelectedTags) {
         const QString tagsText = m_searchTags.join(i18nc("String list separator", ", "));
-        m_tagsSelector->setText(i18ncp("@action:button %2 is a list of tags",
-                                       "Tag: %2", "Tags: %2",m_searchTags.count(), tagsText));
+        m_tagsSelector->setText(i18ncp("@action:button %2 is a list of tags", "Tag: %2", "Tags: %2", m_searchTags.count(), tagsText));
     } else {
         m_tagsSelector->setText(i18nc("@action:button", "Add Tags"));
     }
@@ -263,13 +268,13 @@ void DolphinFacetsWidget::updateTagsMenu()
     }
 }
 
-void DolphinFacetsWidget::updateTagsMenuItems(const QUrl&, const KFileItemList& items)
+void DolphinFacetsWidget::updateTagsMenuItems(const QUrl &, const KFileItemList &items)
 {
     QMenu *tagsMenu = m_tagsSelector->menu();
     tagsMenu->clear();
 
     QStringList allTags = QStringList(m_searchTags);
-    for (const KFileItem &item: items) {
+    for (const KFileItem &item : items) {
         allTags.append(item.name());
     }
     allTags.sort(Qt::CaseInsensitive);
@@ -277,7 +282,7 @@ void DolphinFacetsWidget::updateTagsMenuItems(const QUrl&, const KFileItemList&
 
     const bool onlyOneTag = allTags.count() == 1;
 
-    for (const QString& tagName : qAsConst(allTags)) {
+    for (const QString &tagName : std::as_const(allTags)) {
         QAction *action = tagsMenu->addAction(QIcon::fromTheme(QStringLiteral("tag")), tagName);
         action->setCheckable(true);
         action->setChecked(m_searchTags.contains(tagName));
@@ -303,3 +308,5 @@ void DolphinFacetsWidget::updateTagsMenuItems(const QUrl&, const KFileItemList&
 
     updateTagsSelector();
 }
+
+#include "moc_dolphinfacetswidget.cpp"