Krita Source Code Documentation
Loading...
Searching...
No Matches
LayerBox.cpp File Reference
#include "LayerBox.h"
#include <QApplication>
#include <QToolButton>
#include <QLayout>
#include <QMouseEvent>
#include <QPainter>
#include <QPoint>
#include <QRect>
#include <QString>
#include <QToolTip>
#include <QWidget>
#include <QComboBox>
#include <QCheckBox>
#include <QVBoxLayout>
#include <QPixmap>
#include <QBitmap>
#include <QList>
#include <QMenu>
#include <QWidgetAction>
#include <QProxyStyle>
#include <QStyleFactory>
#include <kis_debug.h>
#include <klocalizedstring.h>
#include <kis_icon.h>
#include <KoColorSpace.h>
#include <KoCompositeOpRegistry.h>
#include <KisDocument.h>
#include <kis_time_span.h>
#include <kis_types.h>
#include <kis_image.h>
#include <kis_paint_device.h>
#include <kis_layer.h>
#include <kis_group_layer.h>
#include <kis_mask.h>
#include <kis_node.h>
#include <kis_base_node.h>
#include <kis_composite_ops_model.h>
#include <kis_keyframe_channel.h>
#include <kis_image_animation_interface.h>
#include <KoProperties.h>
#include <kis_action.h>
#include "kis_action_manager.h"
#include "widgets/kis_cmb_composite.h"
#include "kis_slider_spin_box.h"
#include "KisViewManager.h"
#include "kis_node_manager.h"
#include "kis_node_model.h"
#include <kis_clipboard.h>
#include "canvas/kis_canvas2.h"
#include "kis_dummies_facade_base.h"
#include "kis_shape_controller.h"
#include "kis_selection_mask.h"
#include "kis_config.h"
#include "KisView.h"
#include "krita_utils.h"
#include "kis_color_label_selector_widget.h"
#include "kis_signals_blocker.h"
#include "kis_color_filter_combo.h"
#include "kis_node_filter_proxy_model.h"
#include <KisSpinBoxI18nHelper.h>
#include "kis_selection.h"
#include "kis_processing_applicator.h"
#include "commands/kis_set_global_selection_command.h"
#include "KisSelectionActionsAdapter.h"
#include "KisIdleTasksManager.h"
#include "kis_layer_utils.h"
#include "ui_WdgLayerBox.h"
#include "NodeView.h"
#include "SyncButtonAndAction.h"
#include "KisMenuStyleDontCloseOnAlt.h"
#include "moc_LayerBox.cpp"

Go to the source code of this file.

Classes

class  LayerBoxStyle
 

Functions

void expandNodesRecursively (KisNodeSP root, QPointer< KisNodeFilterProxyModel > filteringModel, NodeView *nodeView)
 
bool isSelectionMask (KisNodeSP node)
 

Function Documentation

◆ expandNodesRecursively()

void expandNodesRecursively ( KisNodeSP root,
QPointer< KisNodeFilterProxyModel > filteringModel,
NodeView * nodeView )

Definition at line 445 of file LayerBox.cpp.

446{
447 if (!root) return;
448 if (filteringModel.isNull()) return;
449 if (!nodeView) return;
450
451 nodeView->blockSignals(true);
452
453 KisNodeSP node = root->firstChild();
454 while (node) {
455 QModelIndex idx = filteringModel->indexFromNode(node);
456 if (idx.isValid()) {
457 nodeView->setExpanded(idx, !node->collapsed());
458 }
459 if (!node->collapsed() && node->childCount() > 0) {
460 expandNodesRecursively(node, filteringModel, nodeView);
461 }
462 node = node->nextSibling();
463 }
464 nodeView->blockSignals(false);
465}
void expandNodesRecursively(KisNodeSP root, QPointer< KisNodeFilterProxyModel > filteringModel, NodeView *nodeView)
Definition LayerBox.cpp:445
KisNodeSP firstChild() const
Definition kis_node.cpp:361
quint32 childCount() const
Definition kis_node.cpp:414
KisNodeSP nextSibling() const
Definition kis_node.cpp:408

References KisNode::childCount(), KisBaseNode::collapsed, expandNodesRecursively(), KisNode::firstChild(), and KisNode::nextSibling().

◆ isSelectionMask()

bool isSelectionMask ( KisNodeSP node)
inline

Definition at line 918 of file LayerBox.cpp.

919{
920 return dynamic_cast<KisSelectionMask*>(node.data());
921}

References KisSharedPtr< T >::data().