Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_paint_ops_model.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2009 Cyrille Berger <cberger@cberger.net>
3
* SPDX-FileCopyrightText: 2010 Lukáš Tvrdý <lukast.dev@gmail.com>
4
* SPDX-FileCopyrightText: 2011 Silvio Heinrich <plassy@web.de>
5
*
6
* SPDX-License-Identifier: GPL-2.0-or-later
7
*/
8
9
#ifndef _KIS_PAINTOP_LIST_MODEL_H_
10
#define _KIS_PAINTOP_LIST_MODEL_H_
11
12
#include <QAbstractListModel>
13
#include <QPixmap>
14
#include <kritaui_export.h>
15
#include "
kis_categorized_list_model.h
"
16
#include <
brushengine/kis_paintop_factory.h
>
17
18
class
KisPaintOpFactory
;
19
20
struct
KRITAUI_EXPORT
KisPaintOpInfo
21
{
22
KisPaintOpInfo
() { }
23
KisPaintOpInfo
(
const
QString& _id,
const
QString& _name,
const
QString& _category,
const
QIcon& _icon, qint32 _priority):
24
id(_id), name(_name), category(_category), icon(_icon), priority(_priority) { }
25
26
KisPaintOpInfo
(
const
QString& _id):
27
id(_id) { }
28
29
bool
operator==
(
const
KisPaintOpInfo
info)
const
{
30
return
(info.
id
==
id
);
31
}
32
33
QString
id
;
34
QString
name
;
35
QString
category
;
36
QIcon
icon
;
37
qint32 priority {0};
38
};
39
40
struct
PaintOpInfoToQStringConverter
{
41
QString
operator()
(
const
KisPaintOpInfo
&info) {
42
return
info.
name
;
43
}
44
};
45
46
typedef
KisCategorizedListModel<KisPaintOpInfo, PaintOpInfoToQStringConverter>
BasePaintOpCategorizedListModel
;
47
48
class
KRITAUI_EXPORT
KisPaintOpListModel
:
public
BasePaintOpCategorizedListModel
49
{
50
public
:
51
KisPaintOpListModel
(QObject *parent);
52
QVariant data(
const
QModelIndex& idx,
int
role = Qt::DisplayRole)
const override
;
53
void
fill(
const
QList<KisPaintOpFactory*>
& list);
54
};
55
56
class
KRITAUI_EXPORT
KisSortedPaintOpListModel
:
public
KisSortedCategorizedListModel
<KisPaintOpListModel>
57
{
58
public
:
59
KisSortedPaintOpListModel
(QObject *parent)
60
:
KisSortedCategorizedListModel
<
KisPaintOpListModel
>(parent),
61
m_model(new
KisPaintOpListModel
(this))
62
{
63
initializeModel(m_model);
64
}
65
66
void
fill
(
const
QList<KisPaintOpFactory*>
&list) {
67
m_model->fill(list);
68
}
69
70
protected
:
71
bool
lessThan
(
const
QModelIndex &left,
const
QModelIndex &right)
const override
{
72
return
lessThanPriority(left, right,
KisPaintOpFactory::categoryStable
());
73
}
74
75
private
:
76
KisPaintOpListModel
*
m_model
;
77
};
78
79
#endif
//_KIS_PAINTOP_LIST_MODEL_H_
KisCategorizedListModel
Definition
kis_categorized_list_model.h:58
KisPaintOpFactory
Definition
kis_paintop_factory.h:39
KisPaintOpFactory::categoryStable
static QString categoryStable()
Definition
kis_paintop_factory.cpp:36
KisPaintOpListModel
Definition
kis_paint_ops_model.h:49
KisSortedCategorizedListModel
Definition
kis_categorized_list_model.h:200
KisSortedPaintOpListModel
Definition
kis_paint_ops_model.h:57
KisSortedPaintOpListModel::m_model
KisPaintOpListModel * m_model
Definition
kis_paint_ops_model.h:76
KisSortedPaintOpListModel::fill
void fill(const QList< KisPaintOpFactory * > &list)
Definition
kis_paint_ops_model.h:66
KisSortedPaintOpListModel::KisSortedPaintOpListModel
KisSortedPaintOpListModel(QObject *parent)
Definition
kis_paint_ops_model.h:59
KisSortedPaintOpListModel::lessThan
bool lessThan(const QModelIndex &left, const QModelIndex &right) const override
Definition
kis_paint_ops_model.h:71
QList
Definition
KisQStringListFwd.h:16
kis_categorized_list_model.h
BasePaintOpCategorizedListModel
KisCategorizedListModel< KisPaintOpInfo, PaintOpInfoToQStringConverter > BasePaintOpCategorizedListModel
Definition
kis_paint_ops_model.h:46
kis_paintop_factory.h
KisPaintOpInfo
Definition
kis_paint_ops_model.h:21
KisPaintOpInfo::icon
QIcon icon
Definition
kis_paint_ops_model.h:36
KisPaintOpInfo::KisPaintOpInfo
KisPaintOpInfo(const QString &_id, const QString &_name, const QString &_category, const QIcon &_icon, qint32 _priority)
Definition
kis_paint_ops_model.h:23
KisPaintOpInfo::name
QString name
Definition
kis_paint_ops_model.h:34
KisPaintOpInfo::id
QString id
Definition
kis_paint_ops_model.h:33
KisPaintOpInfo::operator==
bool operator==(const KisPaintOpInfo info) const
Definition
kis_paint_ops_model.h:29
KisPaintOpInfo::KisPaintOpInfo
KisPaintOpInfo()
Definition
kis_paint_ops_model.h:22
KisPaintOpInfo::category
QString category
Definition
kis_paint_ops_model.h:35
KisPaintOpInfo::KisPaintOpInfo
KisPaintOpInfo(const QString &_id)
Definition
kis_paint_ops_model.h:26
PaintOpInfoToQStringConverter
Definition
kis_paint_ops_model.h:40
PaintOpInfoToQStringConverter::operator()
QString operator()(const KisPaintOpInfo &info)
Definition
kis_paint_ops_model.h:41
libs
ui
kis_paint_ops_model.h
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52