Krita Source Code Documentation
Loading...
Searching...
No Matches
KisBrushPropertiesModel.cpp
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
3
*
4
* SPDX-License-Identifier: GPL-2.0-or-later
5
*/
6
#include "
KisBrushPropertiesModel.h
"
7
8
#include <
KoResourceLoadResult.h
>
9
#include "
kis_brush_registry.h
"
10
11
12
KisBrushPropertiesModel::KisBrushPropertiesModel
(lager::reader<KisBrushModel::BrushData> _brushData,
KisResourcesInterfaceSP
_resourcesInterface)
13
14
: resourcesInterface(_resourcesInterface)
15
, brushData(_brushData)
16
, isBrushPierced(brushData.map(
std
::bind(&
KisBrushPropertiesModel
::calcBrushPierced, this,
std
::placeholders::_1)))
17
, brushApplication(brushData.map(
std
::bind(&
KisBrushPropertiesModel
::calcBrushApplication, this,
std
::placeholders::_1)))
18
{
19
}
20
21
bool
KisBrushPropertiesModel::calcBrushPierced
(
const
KisBrushModel::BrushData
&data)
22
{
23
KisBrushSP
brush =
KisBrushRegistry::instance
()->
createBrush
(data,
resourcesInterface
).
resource
<
KisBrush
>();
24
KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE
(brush,
false
);
25
26
return
brush->isPiercedApprox();
27
}
28
29
enumBrushApplication
KisBrushPropertiesModel::calcBrushApplication
(
const
KisBrushModel::BrushData
&data)
30
{
31
return
data.
type
==
KisBrushModel::Predefined
?
32
data.
predefinedBrush
.
application
:
33
ALPHAMASK
;
34
}
KisBrushPropertiesModel.h
KoResourceLoadResult.h
KisBrushPropertiesModel
Definition
KisBrushPropertiesModel.h:13
KisBrushPropertiesModel::KisBrushPropertiesModel
KisBrushPropertiesModel(lager::reader< KisBrushModel::BrushData > _brushData, KisResourcesInterfaceSP _resourcesInterface)
Definition
KisBrushPropertiesModel.cpp:12
KisBrushPropertiesModel::calcBrushPierced
bool calcBrushPierced(const KisBrushModel::BrushData &data)
Definition
KisBrushPropertiesModel.cpp:21
KisBrushPropertiesModel::resourcesInterface
KisResourcesInterfaceSP resourcesInterface
Definition
KisBrushPropertiesModel.h:18
KisBrushPropertiesModel::calcBrushApplication
enumBrushApplication calcBrushApplication(const KisBrushModel::BrushData &data)
Definition
KisBrushPropertiesModel.cpp:29
KisBrushRegistry::instance
static KisBrushRegistry * instance()
Definition
kis_brush_registry.cpp:37
KisBrushRegistry::createBrush
KoResourceLoadResult createBrush(const QDomElement &element, KisResourcesInterfaceSP resourcesInterface)
Definition
kis_brush_registry.cpp:51
KisBrush
Definition
kis_brush.h:67
KoResourceLoadResult::resource
KoResourceSP resource() const noexcept
Definition
KoResourceLoadResult.cpp:53
QSharedPointer< KisResourcesInterface >
KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE
#define KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(cond, val)
Definition
kis_assert.h:129
enumBrushApplication
enumBrushApplication
Definition
kis_brush.h:38
ALPHAMASK
@ ALPHAMASK
Definition
kis_brush.h:39
kis_brush_registry.h
KisBrushModel::Predefined
@ Predefined
Definition
KisBrushModel.h:145
std
Definition
propagate_const.h:43
KisBrushModel::BrushData
Definition
KisBrushModel.h:149
KisBrushModel::BrushData::predefinedBrush
PredefinedBrushData predefinedBrush
Definition
KisBrushModel.h:167
KisBrushModel::BrushData::type
BrushType type
Definition
KisBrushModel.h:165
KisBrushModel::PredefinedBrushData::application
enumBrushApplication application
Definition
KisBrushModel.h:116
plugins
paintops
colorsmudge
KisBrushPropertiesModel.cpp
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52