digiKam
Loading...
Searching...
No Matches
filtersidebarwidget.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2000-12-05
7 * Description : filters view for the right sidebar
8 *
9 * SPDX-FileCopyrightText: 2009-2010 by Johannes Wienke <languitar at semipol dot de>
10 * SPDX-FileCopyrightText: 2010-2011 by Andi Clemens <andi dot clemens at gmail dot com>
11 * SPDX-FileCopyrightText: 2011-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
12 * SPDX-FileCopyrightText: 2011 by Michael G. Hansen <mike at mghansen dot de>
13 * SPDX-FileCopyrightText: 2014 by Mohamed_Anwer <m_dot_anwer at gmx dot com>
14 *
15 * SPDX-License-Identifier: GPL-2.0-or-later
16 *
17 * ============================================================ */
18
19#pragma once
20
21// Qt includes
22
23#include <QWidget>
24
25// Local includes
26
27#include "itemfiltersettings.h"
28#include "statesavingobject.h"
29#include "textfilter.h"
30#include "digikam_globals.h"
31
32namespace Digikam
33{
34
43
44class TagModel;
45class TAlbum;
46
54{
55 Q_OBJECT
56
57public:
58
65 explicit FilterSideBarWidget(QWidget* const parent, TagModel* const tagFilterModel);
66
70 ~FilterSideBarWidget() override;
71
72 void setConfigGroup(const KConfigGroup& group) override;
73 void doLoadState() override;
74 void doSaveState() override;
75
77
78Q_SIGNALS:
79
90 void signalTagFilterChanged(const QList<int>& includedTags,
91 const QList<int>& excludedTags,
93 bool showUnTagged,
94 const QList<int>& clTagIds,
95 const QList<int>& plTagIds);
96
101
102public Q_SLOTS:
103
107 void slotResetFilters();
108
109 void slotFilterMatchesForText(bool);
110
111private Q_SLOTS:
112
113 void slotCheckedTagsChanged(const QList<TAlbum*>& includedTags,
114 const QList<TAlbum*>& excludedTags);
115 void slotColorLabelFilterChanged(const QList<ColorLabel>&);
116 void slotPickLabelFilterChanged(const QList<PickLabel>&);
117 void slotWithoutTagChanged(int newState);
118 void slotItemExpanded(int id, bool b);
119 void slotTagOptionsTriggered(QAction*);
120 void slotTagOptionsMenu();
121
122private:
123
124 void checkFilterChanges();
125
126private:
127
128 class Private;
129 Private* const d = nullptr;
130};
131
132} // nameSpace Digikam
Definition dlayoutbox.h:65
Definition filtersidebarwidget.h:54
~FilterSideBarWidget() override
Definition filtersidebarwidget.cpp:287
void doSaveState() override
Definition filtersidebarwidget.cpp:507
void slotFilterMatchesForText(bool)
Definition filtersidebarwidget.cpp:326
void signalSearchTextFilterChanged(const SearchTextFilterSettings &)
void signalRatingFilterChanged(int, ItemFilterSettings::RatingCondition, bool)
void slotResetFilters()
Definition filtersidebarwidget.cpp:331
void doLoadState() override
Definition filtersidebarwidget.cpp:471
void setFocusToTextFilter()
Definition filtersidebarwidget.cpp:321
void signalTagFilterChanged(const QList< int > &includedTags, const QList< int > &excludedTags, ItemFilterSettings::MatchingCondition matchingCond, bool showUnTagged, const QList< int > &clTagIds, const QList< int > &plTagIds)
void setConfigGroup(const KConfigGroup &group) override
Definition filtersidebarwidget.cpp:465
void signalGeolocationFilterChanged(ItemFilterSettings::GeolocationCondition)
GeolocationCondition
Possible logical matching condition used to sort geolocation.
Definition itemfiltersettings.h:105
RatingCondition
Possible conditions used to filter rating: >=, =, <=.
Definition itemfiltersettings.h:97
MatchingCondition
Possible logical matching condition used to sort tags id.
Definition itemfiltersettings.h:90
Definition itemfiltersettings.h:51
Definition statesavingobject.h:66
Definition albummodel.h:57
Definition datefolderview.cpp:34
FilterType
Definition filtersidebarwidget.h:36
@ LABELS
Definition filtersidebarwidget.h:41
@ TAGS
Definition filtersidebarwidget.h:40
@ MIME
Definition filtersidebarwidget.h:38
@ TEXT
Definition filtersidebarwidget.h:37
@ GEOLOCATION
Definition filtersidebarwidget.h:39