Differential D13466 Diff 46840 source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
| Show All 24 Lines | |||||
| #include "RNA_access.h" | #include "RNA_access.h" | ||||
| #include "UI_interface.h" | #include "UI_interface.h" | ||||
| #include "UI_resources.h" | #include "UI_resources.h" | ||||
| #include "IMB_colormanagement.h" | #include "IMB_colormanagement.h" | ||||
| namespace blender::nodes { | namespace blender::nodes::node_composite_convert_color_space_cc { | ||||
| static void CMP_NODE_CONVERT_COLOR_SPACE_declare(NodeDeclarationBuilder &b) | static void CMP_NODE_CONVERT_COLOR_SPACE_declare(NodeDeclarationBuilder &b) | ||||
| { | { | ||||
| b.add_input<decl::Color>(N_("Image")).default_value({1.0f, 1.0f, 1.0f, 1.0f}); | b.add_input<decl::Color>(N_("Image")).default_value({1.0f, 1.0f, 1.0f, 1.0f}); | ||||
| b.add_output<decl::Color>(N_("Image")); | b.add_output<decl::Color>(N_("Image")); | ||||
| } | } | ||||
| } // namespace blender::nodes | |||||
| static void node_composit_init_convert_colorspace(bNodeTree *UNUSED(ntree), bNode *node) | static void node_composit_init_convert_colorspace(bNodeTree *UNUSED(ntree), bNode *node) | ||||
| { | { | ||||
| NodeConvertColorSpace *ncs = static_cast<NodeConvertColorSpace *>( | NodeConvertColorSpace *ncs = static_cast<NodeConvertColorSpace *>( | ||||
| MEM_callocN(sizeof(NodeConvertColorSpace), "node colorspace")); | MEM_callocN(sizeof(NodeConvertColorSpace), "node colorspace")); | ||||
| const char *first_colorspace = IMB_colormanagement_role_colorspace_name_get( | const char *first_colorspace = IMB_colormanagement_role_colorspace_name_get( | ||||
| COLOR_ROLE_SCENE_LINEAR); | COLOR_ROLE_SCENE_LINEAR); | ||||
| if (first_colorspace && first_colorspace[0]) { | if (first_colorspace && first_colorspace[0]) { | ||||
| STRNCPY(ncs->from_color_space, first_colorspace); | STRNCPY(ncs->from_color_space, first_colorspace); | ||||
| Show All 9 Lines | |||||
| static void node_composit_buts_convert_colorspace(uiLayout *layout, | static void node_composit_buts_convert_colorspace(uiLayout *layout, | ||||
| bContext *UNUSED(C), | bContext *UNUSED(C), | ||||
| PointerRNA *ptr) | PointerRNA *ptr) | ||||
| { | { | ||||
| uiItemR(layout, ptr, "from_color_space", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); | uiItemR(layout, ptr, "from_color_space", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); | ||||
| uiItemR(layout, ptr, "to_color_space", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); | uiItemR(layout, ptr, "to_color_space", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); | ||||
| } | } | ||||
| } // namespace blender::nodes::node_composite_convert_color_space_cc | |||||
| void register_node_type_cmp_convert_color_space(void) | void register_node_type_cmp_convert_color_space(void) | ||||
| { | { | ||||
| namespace file_ns = blender::nodes::node_composite_convert_color_space_cc; | |||||
| static bNodeType ntype; | static bNodeType ntype; | ||||
| cmp_node_type_base( | cmp_node_type_base( | ||||
| &ntype, CMP_NODE_CONVERT_COLOR_SPACE, "Convert Colorspace", NODE_CLASS_CONVERTER); | &ntype, CMP_NODE_CONVERT_COLOR_SPACE, "Convert Colorspace", NODE_CLASS_CONVERTER); | ||||
| ntype.declare = blender::nodes::CMP_NODE_CONVERT_COLOR_SPACE_declare; | ntype.declare = file_ns::CMP_NODE_CONVERT_COLOR_SPACE_declare; | ||||
| ntype.draw_buttons = node_composit_buts_convert_colorspace; | ntype.draw_buttons = file_ns::node_composit_buts_convert_colorspace; | ||||
| node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); | node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); | ||||
| node_type_init(&ntype, node_composit_init_convert_colorspace); | node_type_init(&ntype, file_ns::node_composit_init_convert_colorspace); | ||||
| node_type_storage( | node_type_storage( | ||||
| &ntype, "NodeConvertColorSpace", node_free_standard_storage, node_copy_standard_storage); | &ntype, "NodeConvertColorSpace", node_free_standard_storage, node_copy_standard_storage); | ||||
| nodeRegisterType(&ntype); | nodeRegisterType(&ntype); | ||||
| } | } | ||||