digiKam
Loading...
Searching...
No Matches
assignnamewidget.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 : 2010-09-12
7
* Description : Widget for assignment and confirmation of names for faces
8
*
9
* SPDX-FileCopyrightText: 2010 by Aditya Bhatt <adityabhatt1991 at gmail dot com>
10
* SPDX-FileCopyrightText: 2010-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
11
* SPDX-FileCopyrightText: 2012-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
12
*
13
* SPDX-License-Identifier: GPL-2.0-or-later
14
*
15
* ============================================================ */
16
17
#pragma once
18
19
// Qt includes
20
21
#include <QFrame>
22
#include <QVariant>
23
24
namespace
Digikam
25
{
26
27
class
AddTagsComboBox;
28
class
AddTagsLineEdit;
29
class
CheckableAlbumFilterModel;
30
class
FaceTagsIface;
31
class
ItemInfo;
32
class
TAlbum;
33
class
TaggingAction;
34
class
TagModel;
35
class
TagPropertiesFilterModel;
36
37
class
AssignNameWidget
:
public
QFrame
38
{
39
Q_OBJECT
40
Q_PROPERTY(
Mode
mode
READ
mode
WRITE
setMode
)
41
Q_PROPERTY(
TagEntryWidgetMode
tagEntryWidgetMode
READ
tagEntryWidgetMode
WRITE
setTagEntryWidgetMode
)
42
Q_PROPERTY(
LayoutMode
layoutMode
READ
layoutMode
WRITE
setLayoutMode
)
43
Q_PROPERTY(
VisualStyle
visualStyle
READ
visualStyle
WRITE
setVisualStyle
)
44
45
public:
46
47
enum
Mode
48
{
49
InvalidMode
,
50
UnconfirmedEditMode
,
51
ConfirmedMode
,
52
ConfirmedEditMode
,
53
IgnoredMode
54
};
55
Q_ENUM(
Mode
)
56
57
enum
TagEntryWidgetMode
58
{
59
InvalidTagEntryWidgetMode
,
60
AddTagsComboBoxMode
,
61
AddTagsLineEditMode
62
};
63
Q_ENUM(
TagEntryWidgetMode
)
64
65
enum
LayoutMode
66
{
67
InvalidLayout
,
68
FullLine
,
69
TwoLines
,
70
Compact
71
};
72
Q_ENUM(
LayoutMode
)
73
74
enum
VisualStyle
75
{
76
InvalidVisualStyle
,
77
StyledFrame
,
78
TranslucentDarkRound
,
79
TranslucentThemedFrameless
80
};
81
Q_ENUM(
VisualStyle
)
82
83
public
:
84
88
explicit
AssignNameWidget
(QWidget*
const
parent =
nullptr
);
89
~AssignNameWidget
()
override
;
90
94
void
setAlbumModels
(
TagModel
*
const
model,
95
TagPropertiesFilterModel
*
const
filteredModel,
96
CheckableAlbumFilterModel
*
const
filterModel);
97
void
setDefaultModel
();
98
99
void
setMode
(
Mode
mode
);
100
Mode
mode
()
const
;
101
102
void
setTagEntryWidgetMode
(
TagEntryWidgetMode
mode
);
103
TagEntryWidgetMode
tagEntryWidgetMode
()
const
;
104
105
void
setLayoutMode
(
LayoutMode
mode
);
106
LayoutMode
layoutMode
()
const
;
107
108
void
setVisualStyle
(
VisualStyle
style);
109
VisualStyle
visualStyle
()
const
;
110
111
ItemInfo
info
()
const
;
112
QVariant
faceIdentifier
()
const
;
113
115
AddTagsComboBox
*
comboBox
()
const
;
116
AddTagsLineEdit
*
lineEdit
()
const
;
117
118
public
Q_SLOTS:
119
123
void
setUserData
(
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
= QVariant());
124
128
void
setCurrentTag
(
int
tagId);
129
void
setCurrentTag
(
TAlbum
* album);
130
void
setCurrentFace
(
const
FaceTagsIface
& face);
131
135
void
setParentTag
(
TAlbum
* album);
136
137
Q_SIGNALS:
138
144
void
assigned
(
const
TaggingAction
& action,
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
145
150
void
rejected
(
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
151
152
void
ignored
(
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
153
157
void
ignoredClicked
(
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
158
162
void
labelClicked
(
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
163
169
void
selected
(
const
TaggingAction
& action,
const
ItemInfo
&
info
,
const
QVariant&
faceIdentifier
);
170
171
protected
:
172
173
void
keyPressEvent
(QKeyEvent* e)
override
;
174
void
showEvent
(QShowEvent* e)
override
;
175
176
protected
Q_SLOTS:
177
178
void
slotConfirm
();
179
void
slotReject
();
180
void
slotIgnore
();
181
void
slotActionActivated
(
const
TaggingAction
& action);
182
void
slotActionSelected
(
const
TaggingAction
& action);
183
void
slotIgnoredClicked
();
184
void
slotLabelClicked
();
185
186
private
:
187
188
class
Private
;
189
Private
*
const
d =
nullptr
;
190
};
191
192
}
// namespace Digikam
Digikam::AddTagsComboBox
Definition
addtagscombobox.h:39
Digikam::AddTagsLineEdit
Definition
addtagslineedit.h:36
Digikam::AssignNameWidget::Private
Definition
assignnamewidget_p.h:53
Digikam::AssignNameWidget
Definition
assignnamewidget.h:38
Digikam::AssignNameWidget::setCurrentFace
void setCurrentFace(const FaceTagsIface &face)
Definition
assignnamewidget.cpp:215
Digikam::AssignNameWidget::slotIgnore
void slotIgnore()
Definition
assignnamewidget.cpp:266
Digikam::AssignNameWidget::labelClicked
void labelClicked(const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::layoutMode
LayoutMode layoutMode
Definition
assignnamewidget.h:42
Digikam::AssignNameWidget::slotIgnoredClicked
void slotIgnoredClicked()
Definition
assignnamewidget.cpp:286
Digikam::AssignNameWidget::selected
void selected(const TaggingAction &action, const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::lineEdit
AddTagsLineEdit * lineEdit() const
Definition
assignnamewidget.cpp:95
Digikam::AssignNameWidget::slotConfirm
void slotConfirm()
Definition
assignnamewidget.cpp:249
Digikam::AssignNameWidget::assigned
void assigned(const TaggingAction &action, const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::setParentTag
void setParentTag(TAlbum *album)
Definition
assignnamewidget.cpp:76
Digikam::AssignNameWidget::setUserData
void setUserData(const ItemInfo &info, const QVariant &faceIdentifier=QVariant())
Definition
assignnamewidget.cpp:180
Digikam::AssignNameWidget::Mode
Mode
Definition
assignnamewidget.h:48
Digikam::AssignNameWidget::InvalidMode
@ InvalidMode
Definition
assignnamewidget.h:49
Digikam::AssignNameWidget::ConfirmedEditMode
@ ConfirmedEditMode
Definition
assignnamewidget.h:52
Digikam::AssignNameWidget::IgnoredMode
@ IgnoredMode
Definition
assignnamewidget.h:53
Digikam::AssignNameWidget::ConfirmedMode
@ ConfirmedMode
Definition
assignnamewidget.h:51
Digikam::AssignNameWidget::UnconfirmedEditMode
@ UnconfirmedEditMode
Definition
assignnamewidget.h:50
Digikam::AssignNameWidget::setMode
void setMode(Mode mode)
Definition
assignnamewidget.cpp:100
Digikam::AssignNameWidget::slotActionSelected
void slotActionSelected(const TaggingAction &action)
Definition
assignnamewidget.cpp:276
Digikam::AssignNameWidget::setCurrentTag
void setCurrentTag(int tagId)
Definition
assignnamewidget.cpp:227
Digikam::AssignNameWidget::setVisualStyle
void setVisualStyle(VisualStyle style)
Definition
assignnamewidget.cpp:164
Digikam::AssignNameWidget::tagEntryWidgetMode
TagEntryWidgetMode tagEntryWidgetMode
Definition
assignnamewidget.h:41
Digikam::AssignNameWidget::LayoutMode
LayoutMode
Definition
assignnamewidget.h:66
Digikam::AssignNameWidget::FullLine
@ FullLine
Definition
assignnamewidget.h:68
Digikam::AssignNameWidget::InvalidLayout
@ InvalidLayout
Definition
assignnamewidget.h:67
Digikam::AssignNameWidget::Compact
@ Compact
Definition
assignnamewidget.h:70
Digikam::AssignNameWidget::TwoLines
@ TwoLines
Definition
assignnamewidget.h:69
Digikam::AssignNameWidget::mode
Mode mode
Definition
assignnamewidget.h:40
Digikam::AssignNameWidget::ignoredClicked
void ignoredClicked(const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::setDefaultModel
void setDefaultModel()
Definition
assignnamewidget.cpp:35
Digikam::AssignNameWidget::slotActionActivated
void slotActionActivated(const TaggingAction &action)
Definition
assignnamewidget.cpp:271
Digikam::AssignNameWidget::slotReject
void slotReject()
Definition
assignnamewidget.cpp:261
Digikam::AssignNameWidget::comboBox
AddTagsComboBox * comboBox() const
The combo box or line edit in use, if any.
Definition
assignnamewidget.cpp:90
Digikam::AssignNameWidget::setAlbumModels
void setAlbumModels(TagModel *const model, TagPropertiesFilterModel *const filteredModel, CheckableAlbumFilterModel *const filterModel)
Definition
assignnamewidget.cpp:40
Digikam::AssignNameWidget::faceIdentifier
QVariant faceIdentifier() const
Definition
assignnamewidget.cpp:210
Digikam::AssignNameWidget::showEvent
void showEvent(QShowEvent *e) override
Definition
assignnamewidget.cpp:310
Digikam::AssignNameWidget::ignored
void ignored(const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::slotLabelClicked
void slotLabelClicked()
Definition
assignnamewidget.cpp:291
Digikam::AssignNameWidget::keyPressEvent
void keyPressEvent(QKeyEvent *e) override
Definition
assignnamewidget.cpp:296
Digikam::AssignNameWidget::rejected
void rejected(const ItemInfo &info, const QVariant &faceIdentifier)
Digikam::AssignNameWidget::VisualStyle
VisualStyle
Definition
assignnamewidget.h:75
Digikam::AssignNameWidget::TranslucentThemedFrameless
@ TranslucentThemedFrameless
Definition
assignnamewidget.h:79
Digikam::AssignNameWidget::InvalidVisualStyle
@ InvalidVisualStyle
Definition
assignnamewidget.h:76
Digikam::AssignNameWidget::StyledFrame
@ StyledFrame
Definition
assignnamewidget.h:77
Digikam::AssignNameWidget::TranslucentDarkRound
@ TranslucentDarkRound
Definition
assignnamewidget.h:78
Digikam::AssignNameWidget::setTagEntryWidgetMode
void setTagEntryWidgetMode(TagEntryWidgetMode mode)
Definition
assignnamewidget.cpp:130
Digikam::AssignNameWidget::TagEntryWidgetMode
TagEntryWidgetMode
Definition
assignnamewidget.h:58
Digikam::AssignNameWidget::AddTagsLineEditMode
@ AddTagsLineEditMode
Definition
assignnamewidget.h:61
Digikam::AssignNameWidget::InvalidTagEntryWidgetMode
@ InvalidTagEntryWidgetMode
Definition
assignnamewidget.h:59
Digikam::AssignNameWidget::AddTagsComboBoxMode
@ AddTagsComboBoxMode
Definition
assignnamewidget.h:60
Digikam::AssignNameWidget::~AssignNameWidget
~AssignNameWidget() override
Definition
assignnamewidget.cpp:30
Digikam::AssignNameWidget::setLayoutMode
void setLayoutMode(LayoutMode mode)
Definition
assignnamewidget.cpp:147
Digikam::AssignNameWidget::visualStyle
VisualStyle visualStyle
Definition
assignnamewidget.h:43
Digikam::AssignNameWidget::info
ItemInfo info() const
Definition
assignnamewidget.cpp:205
Digikam::CheckableAlbumFilterModel
Definition
albumfiltermodel.h:284
Digikam::FaceTagsIface
Definition
facetagsiface.h:34
Digikam::ItemInfo
Definition
iteminfo.h:68
Digikam::TAlbum
Definition
album.h:421
Digikam::TagModel
Definition
albummodel.h:57
Digikam::TagPropertiesFilterModel
Definition
albumfiltermodel.h:366
Digikam::TaggingAction
Definition
taggingaction.h:26
Digikam
Definition
datefolderview.cpp:34
core
utilities
facemanagement
widgets
assignnamewidget.h
Generated by
1.9.8