|
Krita Source Code Documentation
|
#include <kis_node_filter_proxy_model.h>
Inheritance diagram for KisNodeFilterProxyModel:Classes | |
| struct | Private |
Public Slots | |
| void | setActiveNode (KisNodeSP node) |
Signals | |
| void | sigBeforeBeginRemoveRows (const QModelIndex &parent, int start, int end) |
Public Member Functions | |
| bool | filterAcceptsRow (int source_row, const QModelIndex &source_parent) const override |
| QModelIndex | indexFromNode (KisNodeSP node) const |
| KisNodeFilterProxyModel (QObject *parent) | |
| KisNodeSP | nodeFromIndex (const QModelIndex &index) const |
| void | setAcceptedLabels (const QSet< int > &value) |
| bool | setData (const QModelIndex &index, const QVariant &value, int role) override |
| void | setNodeModel (KisNodeModel *model) |
| void | setTextFilter (const QString &text) |
| void | unsetDummiesFacade () |
| ~KisNodeFilterProxyModel () override | |
Private Slots | |
| void | slotBeforeBeginRemoveRows (const QModelIndex &parent, int start, int end) |
| void | slotUpdateCurrentNodeFilter () |
Private Attributes | |
| const QScopedPointer< Private > | m_d |
Definition at line 20 of file kis_node_filter_proxy_model.h.
| KisNodeFilterProxyModel::KisNodeFilterProxyModel | ( | QObject * | parent | ) |
Definition at line 40 of file kis_node_filter_proxy_model.cpp.
References connect(), m_d, and slotUpdateCurrentNodeFilter().
|
override |
Definition at line 47 of file kis_node_filter_proxy_model.cpp.
|
override |
Definition at line 102 of file kis_node_filter_proxy_model.cpp.
References KIS_ASSERT_RECOVER, and m_d.
| QModelIndex KisNodeFilterProxyModel::indexFromNode | ( | KisNodeSP | node | ) | const |
Definition at line 124 of file kis_node_filter_proxy_model.cpp.
References KIS_ASSERT_RECOVER, and m_d.
| KisNodeSP KisNodeFilterProxyModel::nodeFromIndex | ( | const QModelIndex & | index | ) | const |
Definition at line 116 of file kis_node_filter_proxy_model.cpp.
References KIS_ASSERT_RECOVER, and m_d.
| void KisNodeFilterProxyModel::setAcceptedLabels | ( | const QSet< int > & | value | ) |
Definition at line 132 of file kis_node_filter_proxy_model.cpp.
Definition at line 144 of file kis_node_filter_proxy_model.cpp.
References m_d.
|
override |
Definition at line 61 of file kis_node_filter_proxy_model.cpp.
References KisNodeModel::ActiveRole, m_d, and value().
| void KisNodeFilterProxyModel::setNodeModel | ( | KisNodeModel * | model | ) |
Definition at line 51 of file kis_node_filter_proxy_model.cpp.
References m_d, sigBeforeBeginRemoveRows(), and slotBeforeBeginRemoveRows().
| void KisNodeFilterProxyModel::setTextFilter | ( | const QString & | text | ) |
Definition at line 138 of file kis_node_filter_proxy_model.cpp.
References m_d.
|
signal |
|
privateslot |
Definition at line 172 of file kis_node_filter_proxy_model.cpp.
References sigBeforeBeginRemoveRows().
|
privateslot |
During the filter update the model might Q_EMIT "current changed" signals, which (in their turn) will issue setData(..., KisNodeModel::ActiveRole) call, leading to a double recursion. Which, obviously, crashes Krita.
Right now, just blocking the KisNodeModel::ActiveRole call is the most obvious solution for the problem.
Definition at line 155 of file kis_node_filter_proxy_model.cpp.
References m_d.
| void KisNodeFilterProxyModel::unsetDummiesFacade | ( | ) |
|
private |
Definition at line 52 of file kis_node_filter_proxy_model.h.