digiKam
Loading...
Searching...
No Matches
wscomboboxdelegate.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 : 2009-07-05
7 * Description : A combobox delegate to display in Web service image lists.
8 *
9 * SPDX-FileCopyrightText: 2009 by Pieter Edelman <pieter dot edelman at gmx dot net>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QAbstractItemDelegate>
20#include <QAbstractItemModel>
21#include <QMap>
22#include <QModelIndex>
23#include <QPainter>
24#include <QSize>
25#include <QString>
26#include <QStyleOptionViewItem>
27#include <QWidget>
28
29// Local includes
30
31#include "digikam_export.h"
32#include "ditemslist.h"
33
34namespace Digikam
35{
36
37class DIGIKAM_EXPORT ComboBoxDelegate : public QAbstractItemDelegate
38{
39 Q_OBJECT
40
41public:
42
43 explicit ComboBoxDelegate(DItemsList* const, const QMap<int, QString>&);
44 ~ComboBoxDelegate() override;
45
51 void startEditing(QTreeWidgetItem*, int);
52
54
57 void paint(QPainter*, const QStyleOptionViewItem&, const QModelIndex&) const override;
58 QSize sizeHint(const QStyleOptionViewItem&, const QModelIndex&) const override;
59 QWidget* createEditor(QWidget*, const QStyleOptionViewItem&, const QModelIndex&) const override;
60 void setEditorData(QWidget*, const QModelIndex&) const override;
61 void setModelData(QWidget*, QAbstractItemModel*, const QModelIndex&) const override;
63
64private Q_SLOTS:
65
66 void slotCommitAndCloseEditor(int);
67 void slotResetEditedState(QObject*);
68
69private:
70
71 class Private;
72 Private* const d = nullptr;
73};
74
75} // namespace Digikam
Definition wscomboboxdelegate.h:38
Definition ditemslist.h:188
Definition datefolderview.cpp:34