|
Blender V5.0
|
#include <functional>#include <optional>#include "BLI_math_vector_types.hh"#include "BLI_string_ref.hh"#include "BLI_utility_mixins.hh"#include "BLI_vector.hh"#include "UI_interface_icons.hh"#include "UI_interface_types.hh"Go to the source code of this file.
Classes | |
| struct | PanelLayout |
| struct | uiItem |
| struct | uiLayout |
| struct | uiPropertySplitWrapper |
Namespaces | |
| namespace | blender |
| namespace | blender::ui |
| namespace | blender::wm |
Macros | |
| #define | UI_ITEM_NONE eUI_Item_Flag(0) |
| #define UI_ITEM_NONE eUI_Item_Flag(0) |
Definition at line 904 of file UI_interface_layout.hh.
Referenced by blender::nodes::add_attribute_search_button(), blender::nodes::add_attribute_search_or_value_buttons(), blender::nodes::add_layer_name_search_button(), advanced_panel_draw(), advanced_panel_draw(), apply_armature_pose2bones_ui(), blender::ed::asset::shelf::asset_shelf_header_draw(), axis_mapping_panel_draw(), block_create_autorun_warning(), blur_panel_draw(), blur_panel_draw(), blender::seq::brightcontrast_panel_draw(), blender::ed::asset_browser::AssetCatalogTreeViewItem::build_context_menu(), caps_panel_draw(), blender::ed::geometry::catalog_assets_draw(), blender::ed::object::catalog_assets_draw(), blender::ed::geometry::catalog_assets_draw_unassigned(), blender::chaining_panel_draw(), clamp_panel_draw(), blender::nodes::node_composite_planetrackdeform_cc::cmp_node_planetrackdeform_declare(), blender::seq::colorBalance_panel_draw(), colorband_buttons_layout(), blender::composition_panel_draw(), constant_offset_draw(), constant_offset_header_draw(), constraint_ops_extra_draw(), CurveProfile_buttons_layout(), cycles_panel_draw(), data_panel_draw(), uiLayout::decorator(), blender::nodes::draw_bake_button_row(), blender::nodes::draw_bake_data_block_list_item(), blender::nodes::node_geo_bake_cc::draw_bake_items(), blender::nodes::draw_bake_panel(), blender::nodes::draw_common_bake_settings(), draw_constraint_header(), blender::ed::spreadsheet::draw_context_panel_content(), blender::modifier::greasepencil::draw_custom_curve_settings(), draw_export_properties(), draw_exporter_item(), draw_fill_tile(), blender::nodes::draw_geometry_nodes_modifier_ui(), blender::ed::space_node::draw_gizmo_pin_icon(), blender::nodes::socket_items::ui::draw_item_in_list(), blender::modifier::greasepencil::draw_layer_filter_settings(), blender::seq::draw_mask_input_type_settings(), blender::modifier::greasepencil::draw_material_filter_settings(), blender::ed::space_node::draw_node_socket_name_editable(), blender::nodes::draw_property_for_socket(), blender::nodes::node_geo_simulation_cc::draw_simulation_state(), blender::modifier::greasepencil::draw_vertex_group_settings(), ED_screens_footer_tools_menu_create(), ED_screens_header_tools_menu_create(), ed_screens_statusbar_menu_create(), ED_time_scrub_channel_search_draw(), edbm_bevel_ui(), edbm_blend_from_shape_ui(), edbm_decimate_ui(), edbm_intersect_boolean_ui(), edbm_intersect_ui(), edge_data_panel_draw(), edge_panel_draw(), edge_panel_draw_header(), blender::edge_types_panel_draw(), envelope_panel_draw(), face_corner_panel_draw(), face_corner_panel_draw_header(), face_corner_uv_panel_draw(), face_corner_vcol_panel_draw(), blender::face_mark_panel_draw(), blender::face_mark_panel_draw_header(), face_panel_draw(), face_panel_draw_header(), falloff_panel_draw(), falloff_panel_draw(), falloff_panel_draw(), falloff_panel_draw(), file_os_operations_menu_item(), file_panel_asset_catalog_buttons_draw(), fmodifier_frame_range_draw(), fmodifier_frame_range_header_draw(), fmodifier_influence_draw(), fmodifier_panel_header(), fn_generator_panel_draw(), blender::nodes::node_composite_file_output_cc::format_layout(), generate_panel_draw(), generator_panel_draw(), blender::ed::geometry::geometry_attribute_convert_ui(), blender::ed::geometry::geometry_color_attribute_add_ui(), geometry_panel_draw(), gpencil_shaderfx_ops_extra_draw(), graph_draw_driver_settings_panel(), graph_panel_cursor(), graph_panel_cursor_header(), graph_panel_driverVar__contextProp(), graph_panel_driverVar__locDiff(), graph_panel_driverVar__rotDiff(), graph_panel_driverVar__transChan(), graph_panel_driverVar_fallback(), graph_panel_key_properties(), graph_panel_properties(), blender::ed::greasepencil::grease_pencil_convert_curve_type_ui(), blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_sequence_ui(), blender::ed::greasepencil::grease_pencil_reproject_ui(), blender::ed::greasepencil::grease_pencil_set_corner_type_ui(), blender::ed::greasepencil::grease_pencil_simplify_ui(), image_new_draw(), image_save_as_draw(), blender::intersection_panel_draw(), blender::nodes::node_composite_file_output_cc::item_layout(), blender::ed::asset::shelf::library_selector_draw(), limits_panel_draw(), blender::ed::sculpt_paint::mask::mask_from_boundary_ui(), blender::ed::sculpt_paint::mask::mask_from_cavity_ui(), blender::material_mask_panel_draw(), blender::material_mask_panel_draw_header(), materials_panel_draw(), menu_item_enum_opname_menu(), blender::ed::mesh::set_attribute::mesh_set_attribute_ui(), mix_mode_panel_draw(), modifier_grease_pencil_curve_header_draw(), modifier_ops_extra_draw(), blender::seq::modifier_panel_header(), modifier_panel_header(), modifier_vgroup_ui(), nla_panel_actclip(), nla_panel_animated_influence_header(), nla_panel_animated_strip_time(), nla_panel_animated_strip_time_header(), nla_panel_animdata(), nla_panel_evaluation(), nla_panel_properties(), nla_panel_stripname(), blender::ed::space_node::node_catalog_assets_draw(), blender::ed::space_node::node_composit_buts_cryptomatte(), blender::nodes::node_composite_render_layer_cc::node_composit_buts_viewlayers(), blender::nodes::node_fn_input_bool_cc::node_declare(), blender::nodes::node_fn_input_int_cc::node_declare(), blender::nodes::node_fn_input_rotation_cc::node_declare(), blender::nodes::node_fn_input_vector_cc::node_declare(), blender::nodes::node_composite_convert_to_display_cc::node_draw_buttons(), blender::nodes::node_composite_relative_to_pixel_cc::node_layout(), blender::nodes::node_fn_align_euler_to_vector_cc::node_layout(), blender::nodes::node_fn_align_rotation_to_vector_cc::node_layout(), blender::nodes::node_fn_bit_math_cc::node_layout(), blender::nodes::node_fn_boolean_math_cc::node_layout(), blender::nodes::node_fn_combine_color_cc::node_layout(), blender::nodes::node_fn_compare_cc::node_layout(), blender::nodes::node_fn_float_to_int_cc::node_layout(), blender::nodes::node_fn_hash_value_cc::node_layout(), blender::nodes::node_fn_integer_math_cc::node_layout(), blender::nodes::node_fn_random_value_cc::node_layout(), blender::nodes::node_fn_separate_color_cc::node_layout(), blender::nodes::node_fn_string_to_value_cc::node_layout(), blender::nodes::node_fn_value_to_string_cc::node_layout(), blender::nodes::node_geo_accumulate_field_cc::node_layout(), blender::nodes::node_geo_attribute_capture_cc::node_layout(), blender::nodes::node_geo_attribute_domain_size_cc::node_layout(), blender::nodes::node_geo_attribute_statistic_cc::node_layout(), blender::nodes::node_geo_blur_attribute_cc::node_layout(), blender::nodes::node_geo_boolean_cc::node_layout(), blender::nodes::node_geo_curve_handle_type_selection_cc::node_layout(), blender::nodes::node_geo_curve_primitive_quadrilateral_cc::node_layout(), blender::nodes::node_geo_curve_sample_cc::node_layout(), blender::nodes::node_geo_curve_set_handle_type_cc::node_layout(), blender::nodes::node_geo_curve_spline_type_cc::node_layout(), blender::nodes::node_geo_curve_to_points_cc::node_layout(), blender::nodes::node_geo_delete_geometry_cc::node_layout(), blender::nodes::node_geo_distribute_points_in_grid_cc::node_layout(), blender::nodes::node_geo_distribute_points_on_faces_cc::node_layout(), blender::nodes::node_geo_duplicate_elements_cc::node_layout(), blender::nodes::node_geo_enable_output_cc::node_layout(), blender::nodes::node_geo_evaluate_at_index_cc::node_layout(), blender::nodes::node_geo_evaluate_on_domain_cc::node_layout(), blender::nodes::node_geo_extrude_mesh_cc::node_layout(), blender::nodes::node_geo_field_average_cc::node_layout(), blender::nodes::node_geo_field_min_and_max_cc::node_layout(), blender::nodes::node_geo_field_to_grid_cc::node_layout(), blender::nodes::node_geo_field_variance_cc::node_layout(), blender::nodes::node_geo_foreach_geometry_element_cc::input_node::node_layout(), blender::nodes::node_geo_get_named_grid_cc::node_layout(), blender::nodes::node_geo_gizmo_dial_cc::node_layout(), blender::nodes::node_geo_gizmo_linear_cc::node_layout(), blender::nodes::node_geo_grease_pencil_set_depth_mode::node_layout(), blender::nodes::node_geo_grid_advect_cc::node_layout(), blender::nodes::node_geo_grid_info_cc::node_layout(), blender::nodes::node_geo_grid_prune_cc::node_layout(), blender::nodes::node_geo_grid_voxelize_cc::node_layout(), blender::nodes::node_geo_index_switch_cc::node_layout(), blender::nodes::node_geo_input_named_attribute_cc::node_layout(), blender::nodes::node_geo_list_cc::node_layout(), blender::nodes::node_geo_list_get_item_cc::node_layout(), blender::nodes::node_geo_list_length_cc::node_layout(), blender::nodes::node_geo_menu_switch_cc::node_layout(), blender::nodes::node_geo_merge_layers_cc::node_layout(), blender::nodes::node_geo_mesh_primitive_circle_cc::node_layout(), blender::nodes::node_geo_mesh_primitive_cone_cc::node_layout(), blender::nodes::node_geo_mesh_primitive_cylinder_cc::node_layout(), blender::nodes::node_geo_mesh_primitive_line_cc::node_layout(), blender::nodes::node_geo_mesh_to_points_cc::node_layout(), blender::nodes::node_geo_proximity_cc::node_layout(), blender::nodes::node_geo_raycast_cc::node_layout(), blender::nodes::node_geo_sample_grid_cc::node_layout(), blender::nodes::node_geo_sample_grid_index_cc::node_layout(), blender::nodes::node_geo_sample_index_cc::node_layout(), blender::nodes::node_geo_sample_nearest_cc::node_layout(), blender::nodes::node_geo_sample_nearest_surface_cc::node_layout(), blender::nodes::node_geo_sample_uv_surface_cc::node_layout(), blender::nodes::node_geo_scale_elements_cc::node_layout(), blender::nodes::node_geo_sdf_grid_boolean_cc::node_layout(), blender::nodes::node_geo_separate_geometry_cc::node_layout(), blender::nodes::node_geo_set_grease_pencil_color_cc::node_layout(), blender::nodes::node_geo_set_grid_background::node_layout(), blender::nodes::node_geo_set_grid_transform::node_layout(), blender::nodes::node_geo_set_mesh_normal_cc::node_layout(), blender::nodes::node_geo_sort_elements_cc::node_layout(), blender::nodes::node_geo_split_to_instances_cc::node_layout(), blender::nodes::node_geo_store_named_attribute_cc::node_layout(), blender::nodes::node_geo_store_named_grid_cc::node_layout(), blender::nodes::node_geo_string_to_curves_cc::node_layout(), blender::nodes::node_geo_switch_cc::node_layout(), blender::nodes::node_geo_tool_active_element_cc::node_layout(), blender::nodes::node_geo_tool_set_selection_cc::node_layout(), blender::nodes::node_geo_viewer_cc::node_layout(), blender::nodes::node_geo_warning_cc::node_layout(), blender::nodes::node_fn_format_string_cc::node_layout_ex(), blender::nodes::node_geo_attribute_capture_cc::node_layout_ex(), blender::nodes::node_geo_closure_cc::node_layout_ex(), blender::nodes::node_geo_combine_bundle_cc::node_layout_ex(), blender::nodes::node_geo_curve_resample_cc::node_layout_ex(), blender::nodes::node_geo_distribute_points_on_faces_cc::node_layout_ex(), blender::nodes::node_geo_evaluate_closure_cc::node_layout_ex(), blender::nodes::node_geo_field_to_grid_cc::node_layout_ex(), blender::nodes::node_geo_foreach_geometry_element_cc::node_layout_ex(), blender::nodes::node_geo_gizmo_transform_cc::node_layout_ex(), blender::nodes::node_geo_input_normal_cc::node_layout_ex(), blender::nodes::node_geo_menu_switch_cc::node_layout_ex(), blender::nodes::node_geo_repeat_cc::node_layout_ex(), blender::nodes::node_geo_separate_bundle_cc::node_layout_ex(), blender::nodes::node_geo_viewer_cc::node_layout_ex(), blender::nodes::node_shader_attribute_cc::node_shader_buts_attribute(), blender::ed::space_node::node_tree_interface_draw(), blender::ed::space_node::node_unassigned_assets_draw(), noise_panel_draw(), normals_panel_draw(), normals_panel_draw(), blender::ed::object::object_convert_ui(), object_offset_draw(), object_offset_header_draw(), blender::occlusion_panel_draw(), offset_panel_draw(), uiLayout::op(), uiLayout::op(), uiLayout::op_enum(), blender::options_light_reference_draw(), blender::options_panel_draw(), blender::ed::outliner::outliner_orphans_purge_ui(), blender::panel_draw(), blender::panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), panel_draw(), uiLayout::panel_prop_with_bool_header(), blender::ed::object::parent_set_invoke_menu(), path_panel_draw(), path_panel_draw_header(), position_panel_draw(), preferences_extension_repo_add_ui(), uiLayout::prop_enum(), uiLayout::prop_enum(), random_panel_draw(), random_panel_header_draw(), relative_offset_draw(), relative_offset_header_draw(), screen_area_menu_items(), screen_area_options_invoke(), screen_area_touch_menu_create(), screen_user_menu_draw(), blender::ed::sculpt_paint::color::sculpt_color_filter_ui(), blender::ed::sculpt_paint::filter::sculpt_mesh_ui_exec(), blender::ed::curves::select_ends_ui(), blender::ed::curves::select_random_ui(), blender::ed::pointcloud::select_random_ui(), blender::ed::sculpt_paint::select_random::select_random_ui(), blender::ed::vse::sequencer_add_catalog_assets_draw(), blender::ed::vse::sequencer_add_draw(), blender::ed::vse::sequencer_add_scene_draw(), blender::ed::vse::sequencer_add_unassigned_assets_draw(), blender::ed::vse::sequencer_split_ui(), blender::ed::curves::set_attribute_ui(), blender::ed::pointcloud::set_attribute_ui(), blender::nodes::node_sh_mix_cc::sh_node_mix_layout(), blender::nodes::node_shader_value_cc::sh_node_value_declare(), blender::ed::object::shade_auto_smooth_ui(), shaderfx_panel_header(), shading_panel_draw(), solver_options_panel_draw(), blender::ed::spreadsheet::spreadsheet_filter_panel_draw(), blender::ed::space_node::std_node_socket_draw(), stepped_panel_draw(), subdivisions_panel_draw(), symmetry_panel_draw(), symmetry_panel_header_draw(), template_keymap_item_properties(), template_operator_property_buts_draw_single(), texture_paint_add_texture_paint_slot_ui(), texture_panel_draw(), texture_panel_draw(), tile_add_draw(), time_panel_draw(), time_remapping_panel_draw(), blender::seq::tonemapmodifier_panel_draw(), transform_panel_draw(), ui_but_menu_add_path_operators(), blender::ed::space_node::ui_node_draw_input(), blender::ed::space_node::ui_node_draw_recursive(), UI_popup_block_template_confirm_op(), ui_popup_context_menu_for_button(), ui_popup_context_menu_for_panel(), uiDefAutoButsRNA(), uilist_draw_filter_default(), uiTemplateAnyID(), uiTemplateCacheFile(), uiTemplateCacheFileTimeSettings(), uiTemplateCacheFileVelocity(), uiTemplateColormanagedViewSettings(), uiTemplateColorspaceSettings(), uiTemplateEditModeSelection(), uiTemplateImage(), uiTemplateImageFormatViews(), uiTemplateImageSettings(), uiTemplateImageStereo3d(), uiTemplateMovieClip(), uiTemplatePathBuilder(), uiTemplatePreview(), uiTemplateRecentFiles(), blender::ed::object::unassigned_assets_draw(), unpack_item_invoke(), unpack_menu(), blender::ed::object::bake_simulation::unpack_single_bake_invoke(), unwrap_draw(), uv_pack_islands_ui(), v3d_editarmature_buts(), v3d_editmetaball_buts(), v3d_transform_butsR(), velocity_panel_draw(), vert_vcol_panel_draw(), vertex_group_panel_draw(), vertex_panel_draw(), vertex_panel_draw_header(), vertex_vgroup_panel_draw(), blender::vgroup_panel_draw(), view3d_panel_vgroup(), wave_header_draw(), wave_panel_draw(), weight_sample_group_invoke(), weightvg_ui_common(), blender::seq::whiteBalance_panel_draw(), wm_block_splash_create(), wm_drop_import_file_invoke(), WM_menu_invoke_ex(), wm_open_mainfile_ui(), wm_stereo3d_set_draw(), and workspace_append_button().
| enum eUI_Item_Flag : uint16_t |
| Enumerator | |
|---|---|
| UI_ITEM_R_EXPAND | |
| UI_ITEM_R_SLIDER | |
| UI_ITEM_R_TOGGLE | Use for booleans, causes the button to draw with an outline (emboss), instead of text with a checkbox. This is implied when toggle buttons have an icon unless UI_ITEM_R_ICON_NEVER flag is set. |
| UI_ITEM_R_ICON_NEVER | Don't attempt to use an icon when the icon is set to #ICON_NONE. Use for booleans, causes the buttons to always show as a checkbox even when there is an icon (which would normally show the button as a toggle). |
| UI_ITEM_R_ICON_ONLY | |
| UI_ITEM_R_EVENT | |
| UI_ITEM_R_FULL_EVENT | |
| UI_ITEM_R_NO_BG | |
| UI_ITEM_R_IMMEDIATE | |
| UI_ITEM_O_DEPRESS | |
| UI_ITEM_R_COMPACT | |
| UI_ITEM_R_CHECKBOX_INVERT | |
| UI_ITEM_R_FORCE_BLANK_DECORATE | Don't add a real decorator item, just blank space. |
| UI_ITEM_R_SPLIT_EMPTY_NAME | |
| UI_ITEM_R_TEXT_BUT_FORCE_SEMI_MODAL_ACTIVE | Only for text buttons (for now): Force the button as active in a semi-modal state (capturing text input while leaving the remaining UI interactive). |
Definition at line 867 of file UI_interface_layout.hh.
|
strong |
| Enumerator | |
|---|---|
| Auto | |
| Space | |
| Line | |
Definition at line 86 of file UI_interface_layout.hh.
|
strong |
| Enumerator | |
|---|---|
| Add | |
| Swap | |
Definition at line 92 of file UI_interface_layout.hh.
| bool UI_block_apply_search_filter | ( | uiBlock * | block, |
| const char * | search_filter ) |
Apply property search behavior, setting panel flags and deactivating buttons that don't match.
Definition at line 5241 of file interface_layout.cc.
References block_search_filter_tag_buttons(), block_search_panel_label_matches(), PanelType::flag, uiBlock::panel, PANEL_TYPE_NO_SEARCH, Panel::type, and ui_panel_tag_search_filter_match().
Referenced by ed_panel_draw(), and panel_property_search().
| const char * UI_layout_introspect | ( | uiLayout * | layout | ) |
Evaluate layout items as a Python dictionary.
Definition at line 6102 of file interface_layout.cc.
References BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_new(), result, and ui_layout_introspect_items().
Referenced by bpy_rna_uilayout_introspect().
Definition at line 5865 of file interface_layout.cc.
References uiLayout::block(), C, uiLayout::context(), CTX_store_get(), CTX_store_set(), MenuType::draw, bContextStore::entries, Vector< T, InlineBufferCapacity, Allocator >::extend(), MenuType::flag, G, G_DEBUG_WM, MenuType::idname, Menu::layout, MenuType::listener, printf, SearchOnKeyPress, Menu::type, ui_block_add_dynamic_listener(), UI_block_flag_enable(), and UI_BLOCK_NO_ACCELERATOR_KEYS.
Referenced by blender::ed::asset_browser::AssetCatalogTreeViewItem::build_context_menu(), blender::ed::object::shapekey::ShapeKeyItem::build_context_menu(), blender::ui::bonecollections::BoneCollectionItem::build_context_menu(), blender::ui::greasepencil::LayerGroupViewItem::build_context_menu(), uiLayout::menu_contents(), menu_items_from_ui_create(), ui_item_menu_hold(), ui_item_menutype_func(), UI_pie_menu_invoke(), ui_popup_context_menu_for_button(), UI_popup_menu_invoke(), wm_block_about_create(), and wm_block_splash_create().
Used for popup panels only.
Definition at line 5981 of file interface_layout.cc.
References C, uiLayout::context(), CTX_store_set(), and ui_paneltype_draw_impl().
Referenced by ui_item_paneltype_func(), and UI_popover_panel_invoke().
| uiBut * uiItemL_ex | ( | uiLayout * | layout, |
| blender::StringRef | name, | ||
| int | icon, | ||
| bool | highlight, | ||
| bool | redalert ) |
Definition at line 3171 of file interface_layout.cc.
References name, UI_but_flag_enable(), UI_BUT_REDALERT, UI_SELECT_DRAW, and uiItem_simple().
Referenced by block_create__close_file_dialog(), block_create_autorun_warning(), block_create_save_file_overwrite_dialog(), blender::ed::object::shapekey::ShapeKeyItem::build_row(), blender::ui::bonecollections::BoneCollectionItem::build_row(), blender::ui::template_breadcrumbs(), ui_alert_create(), uiTemplateInputStatus(), wm_block_about_create(), wm_block_create_redo(), wm_block_dialog_create(), and wm_block_insert_unicode_create().
| uiLayout * uiItemL_respect_property_split | ( | uiLayout * | layout, |
| blender::StringRef | text, | ||
| int | icon ) |
Helper to add a label using a property split layout if needed. After calling this the active layout will be the one to place the labeled items in. An additional layout may be returned to place decorator buttons in.
Definition at line 3211 of file interface_layout.cc.
References uiLayout::block(), blender::ui::block_layout_set_current(), uiPropertySplitWrapper::decorate_column, uiPropertySplitWrapper::label_column, uiPropertySplitWrapper::property_row, ui_item_name_add_colon(), UI_MAX_NAME_STR, uiItem_simple(), uiItemPropertySplitWrapperCreate(), and uiLayout::use_property_split().
Referenced by draw_matrix_template(), graph_panel_key_properties(), template_ID(), template_search_buttons(), ui_item_with_label(), and ui_layout_heading_label_add().
| void uiItemLDrag | ( | uiLayout * | layout, |
| PointerRNA * | ptr, | ||
| blender::StringRef | name, | ||
| int | icon ) |
Label icon for dragging.
Definition at line 3231 of file interface_layout.cc.
References name, ptr, RNA_struct_is_ID(), UI_but_drag_set_id(), and uiItem_simple().
Referenced by buttons_panel_context_draw().
| uiPropertySplitWrapper uiItemPropertySplitWrapperCreate | ( | uiLayout * | parent_layout | ) |
Normally, we handle the split layout in uiLayout::prop(), but there are other cases where the logic is needed. Ideally, uiLayout::prop() could just call this, but it currently has too many special needs.
The returned #uiPropertySplitWrapper.decorator_column may be null when decorators are disabled (#uiLayoutGetPropDecorate() returns false).
Definition at line 3193 of file interface_layout.cc.
References uiLayout::alignment_set(), uiLayout::column(), uiPropertySplitWrapper::decorate_column, uiPropertySplitWrapper::label_column, uiPropertySplitWrapper::property_row, blender::ui::Right, uiLayout::row(), uiLayout::split(), UI_ITEM_PROP_SEP_DIVIDE, blender::ui::LayoutInternal::ui_item_prop_split_layout_hack(), and uiLayout::use_property_decorate().
Referenced by blender::ed::space_node::ui_node_draw_input(), and uiItemL_respect_property_split().
| uiLayout * uiItemsAlertBox | ( | uiBlock * | block, |
| const int | size, | ||
| const eAlertIcon | icon ) |
Definition at line 6173 of file interface_layout.cc.
References uiFontStyle::points, size(), UI_SCALE_FAC, UI_style_get_dpi(), uiItemsAlertBox(), and uiStyle::widget.
| uiLayout * uiItemsAlertBox | ( | uiBlock * | block, |
| const uiStyle * | style, | ||
| const int | dialog_width, | ||
| const eAlertIcon | icon, | ||
| const int | icon_size ) |
Helpers to add a big icon and create a split layout for alert popups. Returns the layout to place further items into the alert box.
Definition at line 6118 of file interface_layout.cc.
References ALERT_ICON_ERROR, ALERT_ICON_INFO, ALERT_ICON_QUESTION, ALERT_ICON_WARNING, uiBlock::alert_level, uiLayout::alignment_set(), blender::ui::block_layout(), uiLayout::column(), uiStyle::columnspace, Error, float, Info, blender::ui::Left, None, blender::ui::Panel, uiLayout::row(), uiLayout::split(), UI_SCALE_FAC, uiDefButAlert(), blender::ui::Vertical, and Warning.
Referenced by block_create__close_file_dialog(), block_create_autorun_warning(), block_create_save_file_overwrite_dialog(), ui_alert_create(), uiItemsAlertBox(), and wm_block_dialog_create().
| bool uiLayoutEndsWithPanelHeader | ( | const uiLayout & | layout | ) |
Definition at line 4882 of file interface_layout.cc.
References uiLayout::items(), and uiItem::type().
Referenced by ed_panel_draw().
| void uiLayoutListItemAddPadding | ( | uiLayout * | layout | ) |
Definition at line 5107 of file interface_layout.cc.
References uiLayout::block(), blender::ui::block_layout_set_current(), uiItem::fixed_size_set(), uiLayout::row(), Sepr, uiDefBut(), and uiLayoutListItemPaddingWidth().
Referenced by blender::ui::TreeViewLayoutBuilder::build_row(), and ui_template_list_layout_draw().
| int uiLayoutListItemPaddingWidth | ( | ) |
Definition at line 5102 of file interface_layout.cc.
References UI_SCALE_FAC.
Referenced by uiLayoutListItemAddPadding().
| void uiLayoutSetFunc | ( | uiLayout * | layout, |
| uiMenuHandleFunc | handlefunc, | ||
| void * | argv ) |
Definition at line 5648 of file interface_layout.cc.
References uiLayoutRoot::argv, uiLayoutRoot::handlefunc, and uiLayout::root().
| void uiLayoutSetTooltipCustomFunc | ( | uiLayout * | layout, |
| uiButToolTipCustomFunc | func, | ||
| void * | arg, | ||
| uiCopyArgFunc | copy_arg, | ||
| uiFreeArgFunc | free_arg ) |
Same as above but should be used when building a fully custom tooltip instead of just generating a description.
Definition at line 5779 of file interface_layout.cc.
References uiButtonItem::but, Decorator, uiLayout::items(), uiBut::type, UI_but_func_tooltip_custom_set(), and uiLayoutSetTooltipCustomFunc().
Referenced by blender::ed::space_node::node_socket_add_tooltip(), blender::ed::space_node::node_socket_add_tooltip_in_node_editor(), and uiLayoutSetTooltipCustomFunc().
| void uiLayoutSetTooltipFunc | ( | uiLayout * | layout, |
| uiButToolTipFunc | func, | ||
| void * | arg, | ||
| uiCopyArgFunc | copy_arg, | ||
| uiFreeArgFunc | free_arg ) |
Set tooltip function for all buttons in the layout. func, arg and free_arg are passed on to UI_but_func_tooltip_set, so their meaning is the same.
| func | The callback function that gets called to get tooltip content |
| arg | An optional opaque pointer that gets passed to func |
| free_arg | An optional callback for freeing arg (can be set to e.g. MEM_freeN) |
| copy_arg | An optional callback for duplicating arg in case UI_but_func_tooltip_set is being called on multiple buttons (can be set to e.g. MEM_dupallocN). If set to NULL, arg will be passed as-is to all buttons. |
Definition at line 5744 of file interface_layout.cc.
References uiButtonItem::but, Decorator, uiLayout::items(), uiBut::type, UI_but_func_tooltip_set(), and uiLayoutSetTooltipFunc().
Referenced by blender::nodes::draw_interface_panel_as_panel(), and uiLayoutSetTooltipFunc().