|
Blender
V2.93
|
#include <stdlib.h>#include <string.h>#include "MEM_guardedalloc.h"#include "DNA_node_types.h"#include "DNA_screen_types.h"#include "BLI_array.h"#include "BLI_listbase.h"#include "BLI_string.h"#include "BLT_translation.h"#include "BKE_context.h"#include "BKE_lib_id.h"#include "BKE_main.h"#include "RNA_access.h"#include "NOD_socket.h"#include "../interface/interface_intern.h"#include "UI_interface.h"#include "ED_node.h"#include "node_intern.h"#include "ED_undo.h"Go to the source code of this file.
Classes | |
| struct | NodeLinkItem |
| struct | NodeLinkArg |
Macros | |
| #define | UI_NODE_LINK_DISCONNECT -1 |
| #define | UI_NODE_LINK_REMOVE -2 |
Typedefs | |
| typedef struct NodeLinkItem | NodeLinkItem |
| typedef struct NodeLinkArg | NodeLinkArg |
| #define UI_NODE_LINK_DISCONNECT -1 |
Definition at line 303 of file node_templates.c.
| #define UI_NODE_LINK_REMOVE -2 |
Definition at line 304 of file node_templates.c.
| typedef struct NodeLinkArg NodeLinkArg |
| typedef struct NodeLinkItem NodeLinkItem |
|
static |
Definition at line 108 of file node_templates.c.
References bNodeLink::fromnode, bNodeSocket::link, bNodeSocket::next, node, and NODE_TEST.
Referenced by node_remove_linked().
|
static |
Definition at line 76 of file node_templates.c.
References ELEM, id_us_plus(), NodeLinkItem::ngroup, node, NODE_CUSTOM_GROUP, NODE_GROUP, and ntreeUpdateTree().
Referenced by node_socket_add_replace().
|
static |
Definition at line 68 of file node_templates.c.
References ELEM, NodeLinkItem::ngroup, node, NODE_CUSTOM_GROUP, and NODE_GROUP.
Referenced by node_socket_add_replace().
|
static |
Definition at line 601 of file node_templates.c.
References ELEM, NODE_CLASS_GROUP, NODE_CLASS_LAYOUT, and ui_node_menu_column().
Referenced by ui_template_node_link_menu().
Definition at line 125 of file node_templates.c.
References ListBase::first, bNodeLink::fromnode, bNodeSocket::link, bNodeSocket::next, next, node, node_clear_recursive(), node_tag_recursive(), NODE_TEST, nodeRemoveNode(), bNodeTree::nodes, and ntree.
Referenced by node_socket_add_replace(), and node_socket_remove().
|
static |
Definition at line 198 of file node_templates.c.
References BLI_findlink(), C, CTX_data_main(), bNodeType::draw_buttons, bNodeType::draw_buttons_ex, ED_node_tag_update_nodetree(), ListBase::first, bNodeSocket::flag, bNodeLink::fromnode, bNodeLink::fromsock, bNode::inputs, bNodeSocket::link, bNode::locx, bNode::locy, bNodeSocket::name, bNodeType::nclass, bNodeSocket::next, bNode::next, NODE_CLASS_TEXTURE, node_link_item_apply(), node_link_item_compare(), node_remove_linked(), node_socket_copy_default_value(), nodeAddLink(), nodeAddStaticNode(), nodeCountSocketLinks(), nodePositionRelative(), nodeRemLink(), bNodeTree::nodes, nodeSetActive(), nodeSocketLinkLimit(), nodeUpdate(), ntree, ntreeUpdateTree(), NULL, bNode::offsetx, bNode::offsety, bNode::outputs, SOCK_COLLAPSED, NodeLinkItem::socket_index, bNode::storage, STREQ, type, bNodeSocket::type, bNode::type, and bNode::typeinfo.
Referenced by ui_node_link().
|
static |
Definition at line 163 of file node_templates.c.
References ED_node_tag_update_nodetree(), bNodeSocket::flag, bNodeSocket::link, nodeRemLink(), nodeUpdate(), ntree, ntreeUpdateTree(), and SOCK_COLLAPSED.
Referenced by ui_node_link().
|
static |
Definition at line 182 of file node_templates.c.
References ED_node_tag_update_nodetree(), bNodeSocket::flag, bNodeLink::fromnode, bNodeSocket::link, node_remove_linked(), nodeUpdate(), ntree, ntreeUpdateTree(), and SOCK_COLLAPSED.
Referenced by ui_node_link().
|
static |
Definition at line 91 of file node_templates.c.
References bNodeLink::fromnode, bNodeSocket::link, bNodeSocket::next, node, and NODE_TEST.
Referenced by node_remove_linked().
|
static |
Definition at line 447 of file node_templates.c.
Referenced by ui_node_menu_column().
|
static |
Definition at line 747 of file node_templates.c.
References ATTR_FALLTHROUGH, C, uiPropertySplitWrapper::decorate_column, bNodeType::draw_buttons, ListBase::first, bNodeSocket::flag, bNode::flag, bNodeLink::fromnode, bNodeTree::id, if(), IFACE_, bNode::inputs, uiPropertySplitWrapper::label_column, bNodeSocket::link, bNodeSocket::name, node, node_geometry_add_attribute_search_button(), NODE_GROUP, NODE_TEST, ntree, NTREE_GEOMETRY, NULL, PointerRNA::owner_id, RNA_NO_INDEX, RNA_Node, RNA_NodeSocket, RNA_pointer_create(), SOCK_BOOLEAN, SOCK_COLLAPSED, SOCK_FLOAT, SOCK_HIDE_VALUE, SOCK_INT, SOCK_RGBA, SOCK_STRING, SOCK_UNAVAIL, SOCK_VECTOR, bNodeSocket::type, bNode::type, bNode::typeinfo, UI_block_emboss_set(), UI_EMBOSS, UI_EMBOSS_NONE, UI_ITEM_R_ICON_ONLY, UI_LAYOUT_ALIGN_RIGHT, ui_node_draw_node(), uiItemDecoratorR(), uiItemL(), uiItemPropertySplitWrapperCreate(), uiItemR(), uiItemS(), uiLayoutColumn(), uiLayoutGetBlock(), uiLayoutRow(), uiLayoutSetAlignment(), uiLayoutSetPropDecorate(), and uiTemplateNodeLink().
Referenced by ui_node_draw_node(), and uiTemplateNodeView().
|
static |
Definition at line 727 of file node_templates.c.
References C, bNodeTree::id, bNodeSocket::next, node, NODE_GROUP, ntree, RNA_Node, RNA_pointer_create(), ui_node_draw_input(), and uiLayoutSetPropSep().
Referenced by ui_node_draw_input(), and uiTemplateNodeView().
|
static |
Definition at line 452 of file node_templates.c.
References Freestyle::a, BLI_strcasecmp_natural(), and bNodeType::ui_name.
Referenced by ui_node_menu_column().
|
static |
Definition at line 459 of file node_templates.c.
References bNodeType::idname, and STREQ.
Referenced by ui_node_menu_column().
|
static |
Definition at line 401 of file node_templates.c.
References NodeLinkArg::bmain, C, ED_undo_push(), NodeLinkArg::item, NodeLinkArg::node, node_socket_add_replace(), node_socket_disconnect(), node_socket_remove(), NodeLinkArg::node_type, ntree, NodeLinkArg::ntree, POINTER_AS_INT, NodeLinkArg::sock, bNodeType::type, UI_NODE_LINK_DISCONNECT, and UI_NODE_LINK_REMOVE.
Referenced by ui_node_menu_column(), and ui_template_node_link_menu().
|
static |
Definition at line 319 of file node_templates.c.
References BLI_listbase_count(), NodeLinkArg::bmain, ListBase::first, bNodeTree::id, bNodeType::inputs, bNodeTree::inputs, MEM_callocN, bNodeSocketTemplate::name, bNodeSocket::name, ID::name, ID::next, bNodeSocket::next, NodeLinkItem::ngroup, NODE_GROUP, NodeLinkItem::node_name, NodeLinkArg::node_type, nodeGroupPoll(), Main::nodetrees, NodeLinkArg::ntree, NULL, bNodeType::outputs, bNodeTree::outputs, SOCK_IN, NodeLinkItem::socket_index, NodeLinkItem::socket_name, NodeLinkItem::socket_type, bNodeSocketTemplate::type, bNodeSocketType::type, bNodeType::type, bNodeTree::type, bNodeSocket::typeinfo, and bNodeType::ui_name.
Referenced by ui_node_menu_column().
|
static |
Definition at line 472 of file node_templates.c.
References BLI_array_append, BLI_array_declare, BLI_array_free, BLI_array_len, BLI_snprintf(), BLI_strncpy(), uiBlock::buttons, IFACE_, NodeLinkArg::item, ListBase::last, NodeLinkArg::layout, MEM_dupallocN, MEM_freeN, NodeLinkItem::node_name, NodeLinkArg::node_type, NODE_TYPES_BEGIN, NODE_TYPES_END, ntree, NodeLinkArg::ntree, NULL, NodeLinkArg::sock, SOCK_OUT, STREQ, TIP_, bNodeSocket::type, UI_block_layout_set_current(), UI_BTYPE_BUT, UI_BTYPE_LABEL, UI_but_funcN_set(), ui_compatible_sockets(), UI_MAX_NAME_STR, ui_node_item_name_compare(), ui_node_item_special_poll(), ui_node_link(), ui_node_link_items(), UI_UNIT_X, UI_UNIT_Y, uiDefBut(), uiDefIconTextBut(), uiItemL(), uiLayoutColumn(), and uiLayoutGetBlock().
Referenced by node_menu_column_foreach_cb(), and ui_template_node_link_menu().
|
static |
Definition at line 423 of file node_templates.c.
References BLI_listbase_is_empty(), BLI_snprintf(), BLI_strncpy(), bNodeLink::fromnode, bNodeLink::fromsock, IFACE_, bNodeSocket::link, bNodeSocket::name, node, nodeLabel(), ntree, SOCK_SHADER, bNodeSocket::type, and UI_MAX_NAME_STR.
Referenced by uiTemplateNodeLink().
Definition at line 610 of file node_templates.c.
References NodeLinkArg::bmain, uiBlock::buttons, C, CTX_data_main(), CTX_data_scene(), uiBut::drawflag, uiBut::func_argN, IFACE_, ListBase::last, NodeLinkArg::layout, MEM_dupallocN, N_, NODE_CLASS_GROUP, node_menu_column_foreach_cb(), NodeLinkArg::ntree, NULL, POINTER_FROM_INT, scene, NodeLinkArg::scene, NodeLinkArg::sock, blender::io::alembic::split(), TIP_, bNodeTree::typeinfo, UI_block_flag_enable(), UI_BLOCK_IS_FLIP, UI_block_layout_set_current(), UI_BLOCK_NO_FLIP, UI_BTYPE_BUT, UI_but_funcN_set(), UI_BUT_TEXT_LEFT, ui_node_link(), UI_NODE_LINK_DISCONNECT, UI_NODE_LINK_REMOVE, ui_node_menu_column(), UI_UNIT_X, UI_UNIT_Y, uiDefBut(), uiItemL(), uiLayoutColumn(), uiLayoutGetBlock(), and uiLayoutSplit().
Referenced by uiTemplateNodeLink().
| void uiTemplateNodeLink | ( | uiLayout * | layout, |
| bContext * | C, | ||
| bNodeTree * | ntree, | ||
| bNode * | node, | ||
| bNodeSocket * | input | ||
| ) |
Definition at line 678 of file node_templates.c.
References C, uiBut::flag, bNodeSocket::flag, bNode::flag, bNodeLink::fromnode, uiBut::func_argN, bNodeSocket::link, MEM_callocN, node, NodeLinkArg::node, NODE_ACTIVE_TEXTURE, node_socket_color_get(), ntree, NodeLinkArg::ntree, NULL, uiBut::poin, RNA_Node, RNA_pointer_create(), NodeLinkArg::sock, SOCK_HIDE_VALUE, SOCK_SHADER, bNodeSocket::type, UI_block_layout_set_current(), UI_but_drawflag_enable(), UI_BUT_ICON_LEFT, UI_BUT_NODE_ACTIVE, UI_but_node_link_set(), UI_but_type_set_menu_from_pulldown(), UI_MAX_NAME_STR, ui_node_sock_name(), ui_template_node_link_menu(), UI_UNIT_X, UI_UNIT_Y, uiDefIconMenuBut(), uiDefMenuBut(), and uiLayoutGetBlock().
Referenced by node_sockets_panel(), and ui_node_draw_input().
| void uiTemplateNodeView | ( | uiLayout * | layout, |
| bContext * | C, | ||
| bNodeTree * | ntree, | ||
| bNode * | node, | ||
| bNodeSocket * | input | ||
| ) |
Definition at line 872 of file node_templates.c.
References C, ListBase::first, bNode::flag, bNode::next, node, NODE_TEST, bNodeTree::nodes, ntree, ui_node_draw_input(), and ui_node_draw_node().