Blender V4.5
blender::nodes::DeclarationListBuilder Class Reference

#include <NOD_node_declaration.hh>

Inherited by blender::nodes::NodeDeclarationBuilder, and blender::nodes::PanelDeclarationBuilder.

Public Member Functions

 DeclarationListBuilder (NodeDeclarationBuilder &node_decl_builder, Vector< ItemDeclaration * > &items)
BaseSocketDeclarationBuilderadd_input (eNodeSocketDatatype socket_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_input (eCustomDataType data_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_output (eNodeSocketDatatype socket_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_output (eCustomDataType data_type, StringRef name, StringRef identifier="")
PanelDeclarationBuilderadd_panel (StringRef name, int identifier=-1)
void add_separator ()
void add_default_layout ()
void add_layout (std::function< void(uiLayout *, bContext *, PointerRNA *)> draw)
#DeclarationListBuilder Inline Methods
template<typename DeclType>
DeclType::Builder & add_socket (StringRef name, StringRef identifier, eNodeSocketInOut in_out)
template<typename DeclType>
DeclType::Builder & add_input (StringRef name, StringRef identifier="")
template<typename DeclType>
DeclType::Builder & add_output (StringRef name, StringRef identifier="")

Public Attributes

NodeDeclarationBuildernode_decl_builder
Vector< ItemDeclaration * > & items
PanelDeclarationparent_panel_decl = nullptr

Detailed Description

This is a base class for NodeDeclarationBuilder and PanelDeclarationBuilder. It unifies the behavior of adding sockets and other items to the root node and to panels.

Definition at line 520 of file NOD_node_declaration.hh.

Constructor & Destructor Documentation

◆ DeclarationListBuilder()

blender::nodes::DeclarationListBuilder::DeclarationListBuilder ( NodeDeclarationBuilder & node_decl_builder,
Vector< ItemDeclaration * > & items )
inline

Member Function Documentation

◆ add_default_layout()

void blender::nodes::DeclarationListBuilder::add_default_layout ( )

◆ add_input() [1/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_input ( eCustomDataType data_type,
StringRef name,
StringRef identifier = "" )

◆ add_input() [2/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_input ( eNodeSocketDatatype socket_type,
StringRef name,
StringRef identifier = "" )

◆ add_input() [3/3]

◆ add_layout()

◆ add_output() [1/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_output ( eCustomDataType data_type,
StringRef name,
StringRef identifier = "" )

◆ add_output() [2/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_output ( eNodeSocketDatatype socket_type,
StringRef name,
StringRef identifier = "" )

◆ add_output() [3/3]

template<typename DeclType>
DeclType::Builder & blender::nodes::DeclarationListBuilder::add_output ( StringRef name,
StringRef identifier = "" )
inline

◆ add_panel()

◆ add_separator()

void blender::nodes::DeclarationListBuilder::add_separator ( )

Definition at line 431 of file node_declaration.cc.

References items, and node_decl_builder.

◆ add_socket()

Member Data Documentation

◆ items

◆ node_decl_builder

NodeDeclarationBuilder& blender::nodes::DeclarationListBuilder::node_decl_builder

◆ parent_panel_decl

PanelDeclaration* blender::nodes::DeclarationListBuilder::parent_panel_decl = nullptr

Definition at line 524 of file NOD_node_declaration.hh.

Referenced by add_panel().


The documentation for this class was generated from the following files: