Blender V5.0
uiBlock Struct Reference

#include <interface_intern.hh>

Public Member Functions

void remove_but (const uiBut *but)
uiButfirst_but () const
uiButlast_but () const
int but_index (const uiBut *but) const
uiButnext_but (const uiBut *but) const
uiButprev_but (const uiBut *but) const

Public Attributes

uiBlocknext
uiBlockprev
blender::Vector< std::unique_ptr< uiBut > > buttons
Panelpanel
uiBlockoldblock
ListBase butstore
blender::Vector< uiButtonGroupbutton_groups
ListBase layouts
uiLayoutcurlayout
blender::Vector< std::unique_ptr< bContextStore > > contexts
ListBase views
ListBase dynamic_listeners
std::string name
float winmat [4][4]
rctf rect
float aspect
uiBlockAlertLevel alert_level = uiBlockAlertLevel::None
uint puphash
uiButHandleFunc func
void * func_arg1
void * func_arg2
uiButHandleNFunc funcN
void * func_argN
uiButArgNFree func_argN_free_fn
uiButArgNCopy func_argN_copy_fn
uiBlockHandleFunc handle_func
void * handle_func_arg
uiBlockInteraction_CallbackData custom_interaction_callbacks
int(* block_event_func )(const bContext *C, uiBlock *, const wmEvent *)
std::function< void(const bContext *, rcti *)> drawextra
int flag
short alignnr
short content_hints
char direction
char theme_style
blender::ui::EmbossType emboss
bool auto_open
char _pad [5]
double auto_open_last
const char * lockstr
bool lock
bool active
bool tooltipdisabled
bool endblock
eBlockBoundsCalc bounds_type
int bounds_offset [2]
int bounds
int minbounds
rctf safety
ListBase saferct
uiPopupBlockHandlehandle
wmOperatorui_operator
bool ui_operator_free
void * evil_C
const UnitSettingsunit
ColorPickerData color_pickers
bool is_color_gamma_picker
char display_device [64]
PieMenuData pie_data

Detailed Description

Definition at line 588 of file interface_intern.hh.

Member Function Documentation

◆ but_index()

◆ first_but()

uiBut * uiBlock::first_but ( ) const
nodiscard

Definition at line 304 of file interface.cc.

References buttons.

Referenced by ui_block_bounds_calc(), and UI_block_is_empty_ex().

◆ last_but()

uiBut * uiBlock::last_but ( ) const
nodiscard

Definition at line 309 of file interface.cc.

References buttons.

Referenced by UI_block_can_add_separator(), and UI_popup_block_template_confirm_op().

◆ next_but()

uiBut * uiBlock::next_but ( const uiBut * but) const
nodiscard

Definition at line 286 of file interface.cc.

References but_index(), and buttons.

Referenced by draw_emboss(), UI_block_is_empty_ex(), and ui_do_but_TOG().

◆ prev_but()

uiBut * uiBlock::prev_but ( const uiBut * but) const
nodiscard

Definition at line 292 of file interface.cc.

References but_index(), and buttons.

Referenced by ui_def_but_rna__menu(), and ui_do_but_TOG().

◆ remove_but()

void uiBlock::remove_but ( const uiBut * but)

Definition at line 298 of file interface.cc.

References but_index(), and buttons.

Referenced by UI_but_active_only_ex().

Member Data Documentation

◆ _pad

char uiBlock::_pad[5]

Definition at line 658 of file interface_intern.hh.

◆ active

bool uiBlock::active

To keep blocks while drawing and free them afterwards.

Definition at line 665 of file interface_intern.hh.

Referenced by blender::ui::block_layout_resolve(), panel_remove_invisible_layouts_recursive(), UI_block_begin(), UI_block_end_ex(), and UI_block_region_set().

◆ alert_level

Definition at line 619 of file interface_intern.hh.

Referenced by ui_draw_dialog_alert(), ui_draw_menu_back(), and uiItemsAlertBox().

◆ alignnr

short uiBlock::alignnr

Definition at line 646 of file interface_intern.hh.

Referenced by UI_block_align_begin(), and ui_def_but().

◆ aspect

◆ auto_open

bool uiBlock::auto_open

◆ auto_open_last

double uiBlock::auto_open_last

◆ block_event_func

int(* uiBlock::block_event_func) (const bContext *C, uiBlock *, const wmEvent *)

Custom extra event handling.

Definition at line 640 of file interface_intern.hh.

Referenced by ui_block_func_COLOR(), and ui_handle_menu_event().

◆ bounds

◆ bounds_offset

int uiBlock::bounds_offset[2]

◆ bounds_type

◆ butstore

◆ button_groups

◆ buttons

blender::Vector<std::unique_ptr<uiBut> > uiBlock::buttons

Definition at line 591 of file interface_intern.hh.

Referenced by but_index(), button_activate_exit(), colorband_buttons_layout(), blender::ui::find_first_view_item_but(), blender::ui::find_item_from_rename_button(), first_but(), last_but(), menu_items_from_ui_create(), next_but(), panel_remove_invisible_layouts_recursive(), prev_but(), remove_but(), blender::ui::template_asset_shelf_popover(), template_operator_property_buts_draw_single(), template_texture_user_menu(), ui_apply_but_ROW(), ui_block_active_but_get(), UI_block_active_only_flagged_buttons(), ui_block_align_calc(), UI_block_begin(), ui_block_bounds_calc(), ui_block_bounds_calc_text(), UI_block_draw(), UI_block_end_ex(), UI_block_free(), ui_block_func_POPOVER(), ui_block_func_POPUP(), UI_block_has_active_default_button(), ui_block_interaction_begin(), ui_block_message_subscribe(), ui_block_pie_dir_activate(), UI_block_translate(), UI_block_update_from_old(), ui_block_view_find_matching_view_item_but_in_old_block(), ui_but_anim_decorate_find_attached_button(), ui_but_change_type(), ui_but_drag_multi_edit_get(), ui_but_find_new(), ui_but_find_old(), ui_but_find_select_in_enum(), ui_but_first(), ui_but_last(), ui_but_next(), ui_but_next_non_separator(), ui_but_prev(), ui_but_update_from_old_block(), ui_colorpicker_hide_reveal(), ui_colorpicker_wheel_cb(), ui_def_but(), ui_handle_menu_event(), ui_item_enum_expand_tabs(), ui_layer_but_cb(), ui_menu_block_set_keyaccels(), ui_menu_block_set_keymaps(), ui_menu_scroll_apply_offset_y(), ui_multibut_restore(), ui_multibut_states_apply(), ui_multibut_states_create(), ui_multibut_states_tag(), blender::ed::space_node::ui_node_menu_column(), ui_offset_panel_block(), ui_pie_handler(), ui_popup_block_clip(), ui_popup_block_position(), ui_popup_block_refresh(), ui_popup_block_scrolltest(), UI_popup_block_template_confirm_op(), ui_popup_context_menu_for_panel(), ui_popup_menu_memory__internal(), blender::ed::space_node::ui_template_node_link_menu(), ui_textedit_next_but(), ui_textedit_prev_but(), ui_update_color_picker_buts_rgba(), ui_update_flexible_spacing(), uiTemplateKeymapItemProperties(), uiTemplateStatusInfo(), and ViewLink::views_bounds_calc().

◆ color_pickers

ColorPickerData uiBlock::color_pickers
Note
only accessed by color picker templates.

Definition at line 697 of file interface_intern.hh.

Referenced by ui_block_colorpicker_create(), UI_block_free(), and UI_block_update_from_old().

◆ content_hints

short uiBlock::content_hints

Hints about the buttons of this block. Used to avoid iterating over buttons to find out if some criteria is met by any. Instead, check this criteria when adding the button and set a flag here if it's met.

Definition at line 650 of file interface_intern.hh.

Referenced by ui_but_submenu_enable(), ui_popup_block_position(), and widget_draw_text_icon().

◆ contexts

blender::Vector<std::unique_ptr<bContextStore> > uiBlock::contexts

◆ curlayout

◆ custom_interaction_callbacks

◆ direction

◆ display_device

char uiBlock::display_device[64]

Display device name used to display this block, used by color widgets to transform colors from/to scene linear.

Definition at line 706 of file interface_intern.hh.

Referenced by UI_block_begin(), and ui_block_cm_display_get().

◆ drawextra

std::function<void(const bContext *, rcti *)> uiBlock::drawextra

Custom extra draw function for custom blocks.

Definition at line 643 of file interface_intern.hh.

Referenced by UI_but_func_drawextra_set(), and widget_draw_extra_mask().

◆ dynamic_listeners

ListBase uiBlock::dynamic_listeners

◆ emboss

◆ endblock

bool uiBlock::endblock

◆ evil_C

◆ flag

◆ func

uiButHandleFunc uiBlock::func

◆ func_arg1

void* uiBlock::func_arg1

Definition at line 625 of file interface_intern.hh.

Referenced by UI_block_func_set(), and ui_def_but().

◆ func_arg2

void* uiBlock::func_arg2

Definition at line 626 of file interface_intern.hh.

Referenced by UI_block_func_set(), UI_block_funcN_set(), and ui_def_but().

◆ func_argN

void* uiBlock::func_argN

Definition at line 629 of file interface_intern.hh.

Referenced by UI_block_free(), UI_block_funcN_set(), and ui_def_but().

◆ func_argN_copy_fn

uiButArgNCopy uiBlock::func_argN_copy_fn

Definition at line 631 of file interface_intern.hh.

Referenced by UI_block_funcN_set(), and ui_def_but().

◆ func_argN_free_fn

uiButArgNFree uiBlock::func_argN_free_fn

Definition at line 630 of file interface_intern.hh.

Referenced by UI_block_free(), UI_block_funcN_set(), and ui_def_but().

◆ funcN

uiButHandleNFunc uiBlock::funcN

Definition at line 628 of file interface_intern.hh.

Referenced by UI_block_funcN_set(), and ui_def_but().

◆ handle

◆ handle_func

◆ handle_func_arg

void* uiBlock::handle_func_arg

◆ is_color_gamma_picker

◆ layouts

◆ lock

bool uiBlock::lock

Definition at line 663 of file interface_intern.hh.

Referenced by UI_block_lock_clear(), UI_block_lock_set(), and ui_def_but().

◆ lockstr

const char* uiBlock::lockstr

Definition at line 661 of file interface_intern.hh.

Referenced by UI_block_lock_clear(), UI_block_lock_set(), and ui_def_but().

◆ minbounds

◆ name

◆ next

uiBlock* uiBlock::next

Definition at line 589 of file interface_intern.hh.

◆ oldblock

◆ panel

◆ pie_data

◆ prev

uiBlock * uiBlock::prev

Definition at line 589 of file interface_intern.hh.

◆ puphash

uint uiBlock::puphash

Unique hash used to implement popup menu memory.

Definition at line 622 of file interface_intern.hh.

Referenced by UI_pie_menu_begin(), ui_popup_menu_create_block(), and ui_popup_menu_memory__internal().

◆ rect

◆ saferct

◆ safety

rctf uiBlock::safety

Pull-downs, to detect outside, can differ per case how it is created.

Definition at line 679 of file interface_intern.hh.

Referenced by ui_block_bounds_calc(), ui_popup_block_position(), and ui_popup_block_refresh().

◆ theme_style

char uiBlock::theme_style

UI_BLOCK_THEME_STYLE_*

Definition at line 654 of file interface_intern.hh.

Referenced by UI_block_theme_style_set(), and ui_draw_but().

◆ tooltipdisabled

bool uiBlock::tooltipdisabled

To avoid tool-tip after click.

Definition at line 667 of file interface_intern.hh.

Referenced by button_activate_exit(), button_tooltip_timer_reset(), UI_block_update_from_old(), and ui_popup_block_create().

◆ ui_operator

wmOperator* uiBlock::ui_operator

use so presets can find the operator, across menus and from nested popups which fail for operator context.

Definition at line 687 of file interface_intern.hh.

Referenced by ui_block_free_active_operator(), and UI_block_set_active_operator().

◆ ui_operator_free

bool uiBlock::ui_operator_free

◆ unit

const UnitSettings* uiBlock::unit

◆ views

ListBase uiBlock::views

A block can store "views" on data-sets. Currently tree-views (#AbstractTreeView) only. Others are imaginable, e.g. table-views, grid-views, etc. These are stored here to support state that is persistent over redraws (e.g. collapsed tree-view items).

Definition at line 608 of file interface_intern.hh.

Referenced by ui_block_add_view_impl(), ui_block_free_views(), ui_block_view_find_idname(), ui_block_view_find_matching_in_old_block_impl(), ui_block_view_persistent_state_restore(), ui_block_views_draw_overlays(), ui_block_views_end(), ui_block_views_listen(), and ViewLink::views_bounds_calc().

◆ winmat


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