Blender
V3.3
|
#include <cctype>
#include <cfloat>
#include <climits>
#include <cmath>
#include <cstddef>
#include <cstring>
#include "MEM_guardedalloc.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_userdef_types.h"
#include "DNA_workspace_types.h"
#include "BLI_ghash.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_rect.h"
#include "BLI_string.h"
#include "BLI_string_search.h"
#include "BLI_string_utf8.h"
#include "BLI_vector.hh"
#include "BLI_utildefines.h"
#include "BLO_readfile.h"
#include "BKE_animsys.h"
#include "BKE_context.h"
#include "BKE_idprop.h"
#include "BKE_main.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
#include "BKE_unit.h"
#include "ED_asset.h"
#include "GPU_matrix.h"
#include "GPU_state.h"
#include "BLF_api.h"
#include "BLT_translation.h"
#include "UI_interface.h"
#include "UI_interface_icons.h"
#include "UI_view2d.h"
#include "IMB_imbuf.h"
#include "WM_api.h"
#include "WM_message.h"
#include "WM_types.h"
#include "RNA_access.h"
#include "ED_numinput.h"
#include "ED_screen.h"
#include "IMB_colormanagement.h"
#include "DEG_depsgraph_query.h"
#include "interface_intern.h"
Go to the source code of this file.
Classes | |
struct | AutoComplete |
Macros | |
#define | UI_BUT_VALUE_UNSET DBL_MAX |
#define | UI_GET_BUT_VALUE_INIT(_but, _value) |
#define | B_NOP -1 |
#define | UI_NUMBER_EVAL_ERROR_PREFIX IFACE_("Error evaluating number, see Info editor for details") |
#define | PREVIEW_TILE_PAD (0.15f * UI_UNIT_X) |
Functions | |
static void | ui_but_to_pixelrect (struct rcti *rect, const struct ARegion *region, struct uiBlock *block, const struct uiBut *but) |
static void | ui_def_but_rna__menu (bContext *UNUSED(C), uiLayout *layout, void *but_p) |
static void | ui_def_but_rna__panel_type (bContext *UNUSED(C), uiLayout *layout, void *but_p) |
static void | ui_def_but_rna__menu_type (bContext *UNUSED(C), uiLayout *layout, void *but_p) |
static void | ui_but_free (const bContext *C, uiBut *but) |
static bool | ui_but_is_unit_radians_ex (UnitSettings *unit, const int unit_type) |
static bool | ui_but_is_unit_radians (const uiBut *but) |
void | ui_block_to_region_fl (const ARegion *region, uiBlock *block, float *r_x, float *r_y) |
void | ui_block_to_window_fl (const ARegion *region, uiBlock *block, float *r_x, float *r_y) |
void | ui_block_to_window (const ARegion *region, uiBlock *block, int *r_x, int *r_y) |
void | ui_block_to_region_rctf (const ARegion *region, uiBlock *block, rctf *rct_dst, const rctf *rct_src) |
void | ui_block_to_window_rctf (const ARegion *region, uiBlock *block, rctf *rct_dst, const rctf *rct_src) |
float | ui_block_to_window_scale (const ARegion *region, uiBlock *block) |
void | ui_window_to_block_fl (const ARegion *region, uiBlock *block, float *r_x, float *r_y) |
void | ui_window_to_block_rctf (const struct ARegion *region, uiBlock *block, rctf *rct_dst, const rctf *rct_src) |
void | ui_window_to_block (const ARegion *region, uiBlock *block, int *r_x, int *r_y) |
void | ui_window_to_region (const ARegion *region, int *r_x, int *r_y) |
void | ui_window_to_region_rcti (const ARegion *region, rcti *rect_dst, const rcti *rct_src) |
void | ui_window_to_region_rctf (const ARegion *region, rctf *rect_dst, const rctf *rct_src) |
void | ui_region_to_window (const ARegion *region, int *r_x, int *r_y) |
static void | ui_update_flexible_spacing (const ARegion *region, uiBlock *block) |
static void | ui_update_window_matrix (const wmWindow *window, const ARegion *region, uiBlock *block) |
void | ui_region_winrct_get_no_margin (const struct ARegion *region, struct rcti *r_rect) |
void | UI_block_translate (uiBlock *block, int x, int y) |
static bool | ui_but_is_row_alignment_group (const uiBut *left, const uiBut *right) |
static void | ui_block_bounds_calc_text (uiBlock *block, float offset) |
void | ui_block_bounds_calc (uiBlock *block) |
static void | ui_block_bounds_calc_centered (wmWindow *window, uiBlock *block) |
static void | ui_block_bounds_calc_centered_pie (uiBlock *block) |
static void | ui_block_bounds_calc_popup (wmWindow *window, uiBlock *block, eBlockBoundsCalc bounds_calc, const int xy[2], int r_xy[2]) |
void | UI_block_bounds_set_normal (uiBlock *block, int addval) |
void | UI_block_bounds_set_text (uiBlock *block, int addval) |
void | UI_block_bounds_set_popup (uiBlock *block, int addval, const int bounds_offset[2]) |
void | UI_block_bounds_set_menu (uiBlock *block, int addval, const int bounds_offset[2]) |
void | UI_block_bounds_set_centered (uiBlock *block, int addval) |
void | UI_block_bounds_set_explicit (uiBlock *block, int minx, int miny, int maxx, int maxy) |
static float | ui_but_get_float_precision (uiBut *but) |
static float | ui_but_get_float_step_size (uiBut *but) |
static bool | ui_but_hide_fraction (uiBut *but, double value) |
static int | ui_but_calc_float_precision (uiBut *but, double value) |
bool | ui_but_rna_equals (const uiBut *a, const uiBut *b) |
bool | ui_but_rna_equals_ex (const uiBut *but, const PointerRNA *ptr, const PropertyRNA *prop, int index) |
static bool | ui_but_equals_old (const uiBut *but, const uiBut *oldbut) |
uiBut * | ui_but_find_old (uiBlock *block_old, const uiBut *but_new) |
uiBut * | ui_but_find_new (uiBlock *block_new, const uiBut *but_old) |
static bool | ui_but_extra_icons_equals_old (const uiButExtraOpIcon *new_extra_icon, const uiButExtraOpIcon *old_extra_icon) |
static uiButExtraOpIcon * | ui_but_extra_icon_find_old (const uiButExtraOpIcon *new_extra_icon, const uiBut *old_but) |
static void | ui_but_extra_icons_update_from_old_but (const uiBut *new_but, const uiBut *old_but) |
static void | ui_but_update_old_active_from_new (uiBut *oldbut, uiBut *but) |
static bool | ui_but_update_from_old_block (const bContext *C, uiBlock *block, uiBut **but_p, uiBut **but_old_p) |
bool | UI_but_active_only_ex (const bContext *C, ARegion *region, uiBlock *block, uiBut *but, const bool remove_on_failure) |
bool | UI_but_active_only (const bContext *C, ARegion *region, uiBlock *block, uiBut *but) |
bool | UI_block_active_only_flagged_buttons (const bContext *C, ARegion *region, uiBlock *block) |
void | UI_but_execute (const bContext *C, ARegion *region, uiBut *but) |
static bool | ui_but_is_rna_undo (const uiBut *but) |
static void | ui_menu_block_set_keyaccels (uiBlock *block) |
void | ui_but_add_shortcut (uiBut *but, const char *shortcut_str, const bool do_strip) |
static void | ui_but_pie_direction_string (uiBut *but, char *buf, int size) |
static void | ui_menu_block_set_keymaps (const bContext *C, uiBlock *block) |
void | ui_but_override_flag (Main *bmain, uiBut *but) |
void | UI_block_update_from_old (const bContext *C, uiBlock *block) |
static void | ui_but_validate (const uiBut *but) |
bool | ui_but_context_poll_operator_ex (bContext *C, const uiBut *but, const wmOperatorCallParams *optype_params) |
bool | ui_but_context_poll_operator (bContext *C, wmOperatorType *ot, const uiBut *but) |
void | UI_block_end_ex (const bContext *C, uiBlock *block, const int xy[2], int r_xy[2]) |
void | UI_block_end (const bContext *C, uiBlock *block) |
void | ui_fontscale (float *points, float aspect) |
static void | ui_but_to_pixelrect (rcti *rect, const ARegion *region, uiBlock *block, const uiBut *but) |
static bool | ui_but_pixelrect_in_view (const ARegion *region, const rcti *rect) |
void | UI_block_draw (const bContext *C, uiBlock *block) |
static void | ui_block_message_subscribe (ARegion *region, struct wmMsgBus *mbus, uiBlock *block) |
void | UI_region_message_subscribe (ARegion *region, struct wmMsgBus *mbus) |
int | ui_but_is_pushed_ex (uiBut *but, double *value) |
int | ui_but_is_pushed (uiBut *but) |
static void | ui_but_update_select_flag (uiBut *but, double *value) |
void | UI_block_lock_set (uiBlock *block, bool val, const char *lockstr) |
void | UI_block_lock_clear (uiBlock *block) |
void | ui_but_v3_get (uiBut *but, float vec[3]) |
void | ui_but_v3_set (uiBut *but, const float vec[3]) |
bool | ui_but_is_float (const uiBut *but) |
PropertyScaleType | ui_but_scale_type (const uiBut *but) |
bool | ui_but_is_bool (const uiBut *but) |
bool | ui_but_is_unit (const uiBut *but) |
bool | ui_but_is_compatible (const uiBut *but_a, const uiBut *but_b) |
bool | ui_but_is_rna_valid (uiBut *but) |
bool | ui_but_supports_cycling (const uiBut *but) |
double | ui_but_value_get (uiBut *but) |
void | ui_but_value_set (uiBut *but, double value) |
int | ui_but_string_get_max_length (uiBut *but) |
uiBut * | ui_but_drag_multi_edit_get (uiBut *but) |
static double | ui_get_but_scale_unit (uiBut *but, double value) |
void | ui_but_convert_to_unit_alt_name (uiBut *but, char *str, size_t maxlen) |
static void | ui_get_but_string_unit (uiBut *but, char *str, int len_max, double value, bool pad, int float_precision) |
static float | ui_get_but_step_unit (uiBut *but, float step_default) |
void | ui_but_string_get_ex (uiBut *but, char *str, const size_t maxlen, const int float_precision, const bool use_exp_float, bool *r_use_exp_float) |
void | ui_but_string_get (uiBut *but, char *str, const size_t maxlen) |
char * | ui_but_string_get_dynamic (uiBut *but, int *r_str_size) |
static bool | ui_number_from_string_units (bContext *C, const char *str, const int unit_type, const UnitSettings *unit, double *r_value) |
static bool | ui_number_from_string_units_with_but (bContext *C, const char *str, const uiBut *but, double *r_value) |
static bool | ui_number_from_string (bContext *C, const char *str, double *r_value) |
static bool | ui_number_from_string_factor (bContext *C, const char *str, double *r_value) |
static bool | ui_number_from_string_percentage (bContext *C, const char *str, double *r_value) |
bool | ui_but_string_eval_number (bContext *C, const uiBut *but, const char *str, double *r_value) |
static void | ui_but_string_set_internal (uiBut *but, const char *str, size_t str_len) |
static void | ui_but_string_free_internal (uiBut *but) |
bool | ui_but_string_set (bContext *C, uiBut *but, const char *str) |
static double | soft_range_round_up (double value, double max) |
static double | soft_range_round_down (double value, double max) |
void | ui_but_range_set_hard (uiBut *but) |
void | ui_but_range_set_soft (uiBut *but) |
static void | ui_but_free_type_specific (uiBut *but) |
void | UI_block_free (const bContext *C, uiBlock *block) |
void | UI_blocklist_update_window_matrix (const bContext *C, const ListBase *lb) |
void | UI_blocklist_update_view_for_buttons (const bContext *C, const ListBase *lb) |
void | UI_blocklist_draw (const bContext *C, const ListBase *lb) |
void | UI_blocklist_free (const bContext *C, ARegion *region) |
void | UI_blocklist_free_inactive (const bContext *C, ARegion *region) |
void | UI_block_region_set (uiBlock *block, ARegion *region) |
uiBlock * | UI_block_begin (const bContext *C, ARegion *region, const char *name, eUIEmbossType emboss) |
eUIEmbossType | UI_block_emboss_get (uiBlock *block) |
void | UI_block_emboss_set (uiBlock *block, eUIEmbossType emboss) |
void | UI_block_theme_style_set (uiBlock *block, char theme_style) |
bool | UI_block_is_search_only (const uiBlock *block) |
void | UI_block_set_search_only (uiBlock *block, bool search_only) |
static void | ui_but_build_drawstr_float (uiBut *but, double value) |
static void | ui_but_build_drawstr_int (uiBut *but, int value) |
static void | ui_but_update_ex (uiBut *but, const bool validate) |
void | ui_but_update (uiBut *but) |
void | ui_but_update_edited (uiBut *but) |
void | UI_block_align_begin (uiBlock *block) |
void | UI_block_align_end (uiBlock *block) |
struct ColorManagedDisplay * | ui_block_cm_display_get (uiBlock *block) |
void | ui_block_cm_to_display_space_v3 (uiBlock *block, float pixel[3]) |
static void | ui_but_alloc_info (const eButType type, size_t *r_alloc_size, const char **r_alloc_str, bool *r_has_custom_type) |
static uiBut * | ui_but_alloc (const eButType type) |
uiBut * | ui_but_change_type (uiBut *but, eButType new_type) |
static uiBut * | ui_def_but (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
ui_def_but is the function that draws many button types More... | |
void | ui_def_but_icon (uiBut *but, const int icon, const int flag) |
void | ui_def_but_icon_clear (uiBut *but) |
static void | ui_def_but_rna__panel_type (bContext *C, uiLayout *layout, void *but_p) |
void | ui_but_rna_menu_convert_to_panel_type (uiBut *but, const char *panel_type) |
bool | ui_but_menu_draw_as_popover (const uiBut *but) |
static void | ui_def_but_rna__menu_type (bContext *C, uiLayout *layout, void *but_p) |
void | ui_but_rna_menu_convert_to_menu_type (uiBut *but, const char *menu_type) |
static void | ui_but_submenu_enable (uiBlock *block, uiBut *but) |
static uiBut * | ui_def_but_rna (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, PointerRNA *ptr, PropertyRNA *prop, int index, float min, float max, float a1, float a2, const char *tip) |
static uiBut * | ui_def_but_rna_propname (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, PointerRNA *ptr, const char *propname, int index, float min, float max, float a1, float a2, const char *tip) |
static uiBut * | ui_def_but_operator_ptr (uiBlock *block, int type, wmOperatorType *ot, wmOperatorCallContext opcontext, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefBut (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButImage (uiBlock *block, void *imbuf, int x, int y, short width, short height, const uchar color[4]) |
uiBut * | uiDefButAlert (uiBlock *block, int icon, int x, int y, short width, short height) |
static int | findBitIndex (uint x) |
AutoComplete * | UI_autocomplete_begin (const char *startname, size_t maxlen) |
void | UI_autocomplete_update_name (AutoComplete *autocpl, const char *name) |
int | UI_autocomplete_end (AutoComplete *autocpl, char *autoname) |
int | UI_preview_tile_size_x (void) |
int | UI_preview_tile_size_y (void) |
int | UI_preview_tile_size_y_no_label (void) |
static void | ui_but_update_and_icon_set (uiBut *but, int icon) |
static uiBut * | uiDefButBit (uiBlock *block, int type, int bit, int retval, const char *str, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButF (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, float *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButI (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButBitI (uiBlock *block, int type, int bit, int retval, const char *str, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButS (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, short *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButBitS (uiBlock *block, int type, int bit, int retval, const char *str, int x, int y, short width, short height, short *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButC (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, char *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButBitC (uiBlock *block, int type, int bit, int retval, const char *str, int x, int y, short width, short height, char *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButR (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, PointerRNA *ptr, const char *propname, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButR_prop (uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, PointerRNA *ptr, PropertyRNA *prop, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefButO_ptr (uiBlock *block, int type, wmOperatorType *ot, wmOperatorCallContext opcontext, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefButO (uiBlock *block, int type, const char *opname, wmOperatorCallContext opcontext, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconBut (uiBlock *block, int type, int retval, int icon, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
static uiBut * | uiDefIconButBit (uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButI (uiBlock *block, int type, int retval, int icon, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButBitI (uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButS (uiBlock *block, int type, int retval, int icon, int x, int y, short width, short height, short *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButBitS (uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, short *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButBitC (uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, char *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButR (uiBlock *block, int type, int retval, int icon, int x, int y, short width, short height, PointerRNA *ptr, const char *propname, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButR_prop (uiBlock *block, int type, int retval, int icon, int x, int y, short width, short height, PointerRNA *ptr, PropertyRNA *prop, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconButO_ptr (uiBlock *block, int type, wmOperatorType *ot, wmOperatorCallContext opcontext, int icon, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconButO (uiBlock *block, int type, const char *opname, wmOperatorCallContext opcontext, int icon, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconTextBut (uiBlock *block, int type, int retval, int icon, const char *str, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconTextButF (uiBlock *block, int type, int retval, int icon, const char *str, int x, int y, short width, short height, float *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconTextButI (uiBlock *block, int type, int retval, int icon, const char *str, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconTextButR (uiBlock *block, int type, int retval, int icon, const char *str, int x, int y, short width, short height, PointerRNA *ptr, const char *propname, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconTextButR_prop (uiBlock *block, int type, int retval, int icon, const char *str, int x, int y, short width, short height, PointerRNA *ptr, PropertyRNA *prop, int index, float min, float max, float a1, float a2, const char *tip) |
uiBut * | uiDefIconTextButO_ptr (uiBlock *block, int type, wmOperatorType *ot, wmOperatorCallContext opcontext, int icon, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconTextButO (uiBlock *block, int type, const char *opname, wmOperatorCallContext opcontext, int icon, const char *str, int x, int y, short width, short height, const char *tip) |
int | UI_blocklist_min_y_get (ListBase *lb) |
void | UI_block_direction_set (uiBlock *block, char direction) |
void | UI_block_order_flip (uiBlock *block) |
void | UI_block_flag_enable (uiBlock *block, int flag) |
void | UI_block_flag_disable (uiBlock *block, int flag) |
void | UI_but_flag_enable (uiBut *but, int flag) |
void | UI_but_flag_disable (uiBut *but, int flag) |
bool | UI_but_flag_is_set (uiBut *but, int flag) |
void | UI_but_drawflag_enable (uiBut *but, int flag) |
void | UI_but_drawflag_disable (uiBut *but, int flag) |
void | UI_but_disable (uiBut *but, const char *disabled_hint) |
void | UI_but_type_set_menu_from_pulldown (uiBut *but) |
int | UI_but_return_value_get (uiBut *but) |
PointerRNA * | UI_but_operator_ptr_get (uiBut *but) |
void | UI_but_context_ptr_set (uiBlock *block, uiBut *but, const char *name, const PointerRNA *ptr) |
const PointerRNA * | UI_but_context_ptr_get (const uiBut *but, const char *name, const StructRNA *type) |
bContextStore * | UI_but_context_get (const uiBut *but) |
void | UI_but_unit_type_set (uiBut *but, const int unit_type) |
int | UI_but_unit_type_get (const uiBut *but) |
void | UI_block_func_handle_set (uiBlock *block, uiBlockHandleFunc func, void *arg) |
void | UI_block_func_butmenu_set (uiBlock *block, uiMenuHandleFunc func, void *arg) |
void | UI_block_func_set (uiBlock *block, uiButHandleFunc func, void *arg1, void *arg2) |
void | UI_block_funcN_set (uiBlock *block, uiButHandleNFunc funcN, void *argN, void *arg2) |
void | UI_but_func_rename_set (uiBut *but, uiButHandleRenameFunc func, void *arg1) |
void | UI_but_func_drawextra_set (uiBlock *block, void(*func)(const bContext *C, void *idv, void *arg1, void *arg2, rcti *rect), void *arg1, void *arg2) |
void | UI_but_func_set (uiBut *but, uiButHandleFunc func, void *arg1, void *arg2) |
void | UI_but_funcN_set (uiBut *but, uiButHandleNFunc funcN, void *argN, void *arg2) |
void | UI_but_func_complete_set (uiBut *but, uiButCompleteFunc func, void *arg) |
void | UI_but_func_menu_step_set (uiBut *but, uiMenuStepFunc func) |
void | UI_but_func_tooltip_set (uiBut *but, uiButToolTipFunc func, void *arg, uiFreeArgFunc free_arg) |
void | UI_but_func_pushed_state_set (uiBut *but, uiButPushedStateFunc func, const void *arg) |
uiBut * | uiDefBlockBut (uiBlock *block, uiBlockCreateFunc func, void *arg, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefBlockButN (uiBlock *block, uiBlockCreateFunc func, void *argN, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefPulldownBut (uiBlock *block, uiBlockCreateFunc func, void *arg, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefMenuBut (uiBlock *block, uiMenuCreateFunc func, void *arg, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconTextMenuBut (uiBlock *block, uiMenuCreateFunc func, void *arg, int icon, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconMenuBut (uiBlock *block, uiMenuCreateFunc func, void *arg, int icon, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconTextBlockBut (uiBlock *block, uiBlockCreateFunc func, void *arg, int icon, const char *str, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefIconBlockBut (uiBlock *block, uiBlockCreateFunc func, void *arg, int retval, int icon, int x, int y, short width, short height, const char *tip) |
uiBut * | uiDefSearchBut (uiBlock *block, void *arg, int retval, int icon, int maxlen, int x, int y, short width, short height, float a1, float a2, const char *tip) |
void | UI_but_func_search_set (uiBut *but, uiButSearchCreateFn search_create_fn, uiButSearchUpdateFn search_update_fn, void *arg, const bool free_arg, uiFreeArgFunc search_arg_free_fn, uiButHandleFunc search_exec_fn, void *active) |
void | UI_but_func_search_set_context_menu (uiBut *but, uiButSearchContextMenuFn context_menu_fn) |
void | UI_but_func_search_set_sep_string (uiBut *but, const char *search_sep_string) |
void | UI_but_func_search_set_tooltip (uiBut *but, uiButSearchTooltipFn tooltip_fn) |
void | UI_but_func_search_set_results_are_suggestions (uiBut *but, const bool value) |
static void | operator_enum_search_update_fn (const struct bContext *C, void *but, const char *str, uiSearchItems *items, const bool UNUSED(is_first)) |
static void | operator_enum_search_exec_fn (struct bContext *UNUSED(C), void *but, void *arg2) |
uiBut * | uiDefSearchButO_ptr (uiBlock *block, wmOperatorType *ot, IDProperty *properties, void *arg, int retval, int icon, int maxlen, int x, int y, short width, short height, float a1, float a2, const char *tip) |
void | UI_but_hint_drawstr_set (uiBut *but, const char *string) |
void | UI_but_node_link_set (uiBut *but, bNodeSocket *socket, const float draw_color[4]) |
void | UI_but_number_step_size_set (uiBut *but, float step_size) |
void | UI_but_number_precision_set (uiBut *but, float precision) |
void | UI_but_focus_on_enter_event (wmWindow *win, uiBut *but) |
void | UI_but_func_hold_set (uiBut *but, uiButHandleHoldFunc func, void *argN) |
void | UI_but_string_info_get (bContext *C, uiBut *but,...) |
void | UI_but_extra_icon_string_info_get (struct bContext *C, uiButExtraOpIcon *extra_icon,...) |
void | UI_init (void) |
void | UI_init_userdef (void) |
void | UI_reinit_font (void) |
void | UI_exit (void) |
void | UI_interface_tag_script_reload (void) |
Find Key Shortcut for Button | |
static bool | ui_but_event_operator_string_from_operator (const bContext *C, wmOperatorCallParams *op_call_params, char *buf, const size_t buf_len) |
static bool | ui_but_event_operator_string_from_menu (const bContext *C, uiBut *but, char *buf, const size_t buf_len) |
static bool | ui_but_event_operator_string_from_panel (const bContext *C, uiBut *but, char *buf, const size_t buf_len) |
static bool | ui_but_event_operator_string (const bContext *C, uiBut *but, char *buf, const size_t buf_len) |
static bool | ui_but_extra_icon_event_operator_string (const bContext *C, uiButExtraOpIcon *extra_icon, char *buf, const size_t buf_len) |
static bool | ui_but_event_property_operator_string (const bContext *C, uiBut *but, char *buf, const size_t buf_len) |
Variables | |
const char | ui_radial_dir_order [8] |
const char | ui_radial_dir_to_numpad [8] = {8, 9, 6, 3, 2, 1, 4, 7} |
const short | ui_radial_dir_to_angle [8] = {90, 45, 0, 315, 270, 225, 180, 135} |
#define B_NOP -1 |
Definition at line 97 of file interface.cc.
Definition at line 4971 of file interface.cc.
#define UI_BUT_VALUE_UNSET DBL_MAX |
Definition at line 90 of file interface.cc.
#define UI_GET_BUT_VALUE_INIT | ( | _but, | |
_value | |||
) |
Definition at line 91 of file interface.cc.
Report a generic error prefix when evaluating a string with BPY_run_string_as_number as the Python error on its own doesn't provide enough context.
Definition at line 2972 of file interface.cc.
Predefined types for generic extra operator icons (uiButExtraOpIcon).
Enumerator | |
---|---|
PREDEFINED_EXTRA_OP_ICON_NONE | |
PREDEFINED_EXTRA_OP_ICON_CLEAR | |
PREDEFINED_EXTRA_OP_ICON_EYEDROPPER |
Definition at line 1638 of file interface.cc.
|
static |
if x is a power of two (only one bit) return the power, otherwise return -1.
for powers of two:
Definition at line 4863 of file interface.cc.
References is_power_of_2_i(), and x.
Referenced by uiDefButBit(), and uiDefIconButBit().
|
static |
Definition at line 6386 of file interface.cc.
References wmOperatorType::idname, ot, POINTER_AS_INT, wmOperatorType::prop, RNA_property_enum_set(), and UI_but_operator_ptr_get().
Referenced by uiDefSearchButO_ptr().
|
static |
Definition at line 6333 of file interface.cc.
References BLI_string_search_add(), BLI_string_search_free(), BLI_string_search_new(), BLI_string_search_query(), C, EnumPropertyItem::icon, EnumPropertyItem::identifier, wmOperatorType::idname, MEM_freeN, EnumPropertyItem::name, ot, POINTER_FROM_INT, wmOperatorType::prop, PROP_ENUM, ptr, RNA_property_enum_items_gettexted(), RNA_property_identifier(), RNA_property_type(), str, UI_but_operator_ptr_get(), UI_search_item_add(), and EnumPropertyItem::value.
Referenced by uiDefSearchButO_ptr().
Definition at line 3243 of file interface.cc.
References blender::math::floor(), log(), M_LN10, max, and pow().
Referenced by ui_but_range_set_soft().
Definition at line 3228 of file interface.cc.
References ceil(), log(), M_LN10, max, and pow().
Referenced by ui_but_range_set_soft().
AutoComplete* UI_autocomplete_begin | ( | const char * | startname, |
size_t | maxlen | ||
) |
Definition at line 4901 of file interface.cc.
References AutoComplete::matches, AutoComplete::maxlen, MEM_callocN, AutoComplete::startname, and AutoComplete::truncate.
Referenced by autocomplete_directory(), autocomplete_file(), and ui_searchbox_autocomplete().
int UI_autocomplete_end | ( | AutoComplete * | autocpl, |
char * | autoname | ||
) |
Definition at line 4948 of file interface.cc.
References AUTOCOMPLETE_FULL_MATCH, AUTOCOMPLETE_NO_MATCH, AUTOCOMPLETE_PARTIAL_MATCH, BLI_strncpy(), AutoComplete::matches, AutoComplete::maxlen, MEM_freeN, AutoComplete::startname, and AutoComplete::truncate.
Referenced by autocomplete_directory(), autocomplete_file(), and ui_searchbox_autocomplete().
void UI_autocomplete_update_name | ( | AutoComplete * | autocpl, |
const char * | name | ||
) |
Definition at line 4914 of file interface.cc.
References Freestyle::a, BLI_strncpy(), AutoComplete::matches, AutoComplete::maxlen, AutoComplete::startname, and AutoComplete::truncate.
Referenced by autocomplete_directory(), autocomplete_file(), and UI_search_item_add().
Definition at line 1063 of file interface.cc.
References BLI_assert, uiBlock::buttons, C, uiBlock::endblock, LISTBASE_FOREACH, UI_BUT_ACTIVATE_ON_INIT, UI_but_active_only_ex(), and ui_but_is_editable().
Automatic aligning, horizontal or vertical.
Definition at line 3910 of file interface.cc.
References uiBlock::alignnr, uiBlock::flag, UI_block_align_end(), UI_BUT_ALIGN, and UI_BUT_ALIGN_DOWN.
Referenced by colorband_buttons_layout(), curvemap_clipping_func(), ED_time_scrub_channel_search_draw(), envelope_panel_draw(), template_ID(), template_search_buttons(), ui_block_colorpicker(), ui_item_array(), uiDefAutoButsArrayR(), uiTemplateComponentMenu(), uiTemplateMarker(), uiTemplateNodeSocket(), uiTemplateReportsBanner(), uiTemplateStatusInfo(), uvedit_vertex_buttons(), v3d_editvertex_buts(), and v3d_object_dimension_buts().
Definition at line 3923 of file interface.cc.
References uiBlock::flag, and UI_BUT_ALIGN.
Referenced by colorband_buttons_layout(), ED_time_scrub_channel_search_draw(), blender::ed::space_node::node_update_basis(), spreadsheet_footer_region_draw(), template_ID(), template_search_buttons(), UI_block_align_begin(), ui_block_colorpicker(), UI_block_end_ex(), ui_item_array(), uiDefAutoButsArrayR(), uiTemplateComponentMenu(), uiTemplateMarker(), uiTemplateNodeSocket(), uiTemplateReportsBanner(), uiTemplateStatusInfo(), uvedit_vertex_buttons(), v3d_editvertex_buts(), and v3d_object_dimension_buts().
uiBlock* UI_block_begin | ( | const bContext * | C, |
ARegion * | region, | ||
const char * | name, | ||
eUIEmbossType | emboss | ||
) |
Definition at line 3578 of file interface.cc.
References uiBlock::active, uiBlock::auto_open, BLI_listbase_clear(), BLI_strncpy(), uiBlock::button_groups, C, CTX_data_scene(), CTX_wm_window(), uiBlock::display_device, ColorManagedDisplaySettings::display_device, Scene::display_settings, uiBlock::emboss, uiBlock::evil_C, uiBlock::flag, IMB_colormanagement_display_get_default_name(), uiBlock::name, scene, STRNCPY, UI_BLOCK_LOOP, UI_block_region_set(), ui_update_window_matrix(), uiBlock::unit, Scene::unit, and ARegion::visible.
Definition at line 444 of file interface.cc.
References BLI_listbase_is_empty(), BLI_rctf_init_minmax(), BLI_rctf_size_x(), BLI_rctf_union(), uiBlock::bounds, uiBlock::buttons, ListBase::first, LISTBASE_FOREACH, max_ff(), uiBlock::minbounds, uiBlock::panel, uiBlock::rect, uiBlock::safety, Panel::sizex, Panel::sizey, uiBut::str, STRPREFIX, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ui_block_bounds_calc_centered(), ui_block_bounds_calc_centered_pie(), ui_block_bounds_calc_popup(), UI_block_end_ex(), ui_offset_panel_block(), and ui_update_flexible_spacing().
Definition at line 480 of file interface.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), height, uiBlock::rect, ui_block_bounds_calc(), UI_block_translate(), width, WM_window_pixels_x(), WM_window_pixels_y(), rctf::xmin, and rctf::ymin.
Referenced by UI_block_end_ex().
Definition at line 502 of file interface.cc.
References PieMenuData::pie_center_spawned, uiBlock::pie_data, ui_block_bounds_calc(), UI_block_translate(), and xy.
Referenced by UI_block_end_ex().
|
static |
Definition at line 515 of file interface.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_clamp(), uiBlock::bounds, uiBlock::bounds_offset, uiBlock::flag, height, MAX2, uiBlock::rect, ui_block_bounds_calc(), ui_block_bounds_calc_text(), UI_BLOCK_BOUNDS_POPUP_MENU, UI_BLOCK_LOOP, UI_block_translate(), UI_POPUP_MENU_TOP, UI_SCREEN_MARGIN, UI_UNIT_X, width, WM_window_pixels_x(), WM_window_pixels_y(), rcti::xmax, rcti::xmin, rctf::xmin, xy, rcti::ymax, rcti::ymin, and rctf::ymin.
Referenced by UI_block_end_ex().
Definition at line 371 of file interface.cc.
References uiBut::alignnr, BLF_width(), BLI_rctf_size_x(), uiBlock::bounds, uiBlock::buttons, ELEM, ListBase::first, LISTBASE_FOREACH, max_ff(), uiBlock::minbounds, uiBut::next, offset, uiBut::prev, uiBut::rect, UI_BTYPE_SEPR, UI_BTYPE_SEPR_LINE, UI_BTYPE_SEPR_SPACER, ui_but_is_row_alignment_group(), ui_but_update(), UI_fontstyle_set(), UI_style_get(), uiFontStyle::uifont_id, uiStyle::widget, width, rctf::xmax, and rctf::xmin.
Referenced by ui_block_bounds_calc_popup(), and UI_block_end_ex().
Used for centered popups, i.e. splash.
Definition at line 624 of file interface.cc.
References uiBlock::bounds, uiBlock::bounds_type, and UI_BLOCK_BOUNDS_POPUP_CENTER.
Referenced by block_create__close_file_dialog(), block_create_autorun_warning(), block_create_save_file_forwardcompat_dialog(), wm_block_create_about(), and wm_block_create_splash().
Definition at line 630 of file interface.cc.
References uiBlock::bounds_type, uiBlock::rect, UI_BLOCK_BOUNDS_NONE, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by blender::ed::space_node::node_update_basis(), and blender::ed::space_node::node_update_hidden().
Used for menu popups.
Definition at line 612 of file interface.cc.
References uiBlock::bounds, uiBlock::bounds_offset, uiBlock::bounds_type, copy_v2_v2_int(), UI_BLOCK_BOUNDS_POPUP_MENU, and zero_v2_int().
Referenced by ui_block_func_POPUP().
Used for various cases.
Definition at line 582 of file interface.cc.
References uiBlock::bounds, uiBlock::bounds_type, and UI_BLOCK_BOUNDS.
Referenced by component_menu(), curvemap_clipping_func(), ED_time_scrub_channel_search_draw(), template_common_search_menu(), UI_block_end_ex(), ui_block_func_COLOR(), ui_block_func_POPOVER(), and ui_icon_view_menu_cb().
Used for block popups.
Definition at line 598 of file interface.cc.
References uiBlock::bounds, uiBlock::bounds_offset, uiBlock::bounds_type, and UI_BLOCK_BOUNDS_POPUP_MOUSE.
Referenced by blender::ed::space_node::create_search_popup_block(), menu_add_shortcut(), menu_change_shortcut(), merged_element_search_menu(), blender::ed::space_node::node_find_menu(), ui_block_func_POPOVER(), wm_block_create_redo(), wm_block_dialog_create(), wm_block_search_menu(), wm_enum_search_menu(), and wm_operator_ui_create().
Used for pull-downs.
Definition at line 592 of file interface.cc.
References uiBlock::bounds, uiBlock::bounds_type, and UI_BLOCK_BOUNDS_TEXT.
Referenced by colorband_tools_func(), curvemap_tools_func(), CurveProfile_presets_func(), CurveProfile_tools_func(), and ui_block_func_POPUP().
struct ColorManagedDisplay* ui_block_cm_display_get | ( | uiBlock * | block | ) |
Definition at line 3928 of file interface.cc.
References uiBlock::display_device, and IMB_colormanagement_display_get_named().
Referenced by ui_block_cm_to_display_space_v3(), and ui_draw_but_COLORBAND().
Definition at line 3933 of file interface.cc.
References IMB_colormanagement_scene_linear_to_display_v3(), and ui_block_cm_display_get().
Referenced by ui_draw_but_HSVCIRCLE(), and widget_swatch().
Definition at line 5810 of file interface.cc.
References uiBlock::direction.
Referenced by colorband_tools_func(), component_menu(), curvemap_clipping_func(), curvemap_tools_func(), CurveProfile_presets_func(), CurveProfile_tools_func(), menu_add_shortcut(), menu_change_shortcut(), menu_item_enum_opname_menu(), template_common_search_menu(), ui_block_func_POPOVER(), ui_block_func_POPUP(), ui_icon_view_menu_cb(), and ui_item_menu_hold().
Definition at line 2039 of file interface.cc.
References uiBlock::aspect, BLF_batch_draw_begin(), BLF_batch_draw_end(), uiBlock::buttons, C, CTX_wm_menu(), CTX_wm_region(), uiBlock::endblock, uiBlock::flag, ARegion::flag, GPU_blend(), GPU_BLEND_ALPHA, GPU_matrix_identity_set(), GPU_matrix_pop(), GPU_matrix_pop_projection(), GPU_matrix_push(), GPU_matrix_push_projection(), uiStyle::grouplabel, LISTBASE_FOREACH, uiBlock::panel, uiStyle::paneltitle, uiFontStyle::points, RGN_FLAG_SEARCH_FILTER_ACTIVE, Panel::type, UI_block_end(), UI_BLOCK_LOOP, UI_BLOCK_POPOVER, UI_BLOCK_RADIAL, ui_but_pixelrect_in_view(), ui_but_to_pixelrect(), ui_draw_aligned_panel(), ui_draw_but(), ui_draw_menu_back(), ui_draw_pie_center(), ui_draw_popover_back(), ui_fontscale(), UI_HIDDEN, UI_icon_draw_cache_begin(), UI_icon_draw_cache_end(), UI_panel_category_is_visible(), UI_panel_should_show_background(), UI_SCROLLED, UI_style_get_dpi(), UI_widgetbase_draw_cache_begin(), UI_widgetbase_draw_cache_end(), uiStyle::widget, uiStyle::widgetlabel, wmOrtho2_region_pixelspace(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by UI_blocklist_draw().
eUIEmbossType UI_block_emboss_get | ( | uiBlock * | block | ) |
Definition at line 3624 of file interface.cc.
References uiBlock::emboss.
Referenced by blender::ui::TreeViewLayoutBuilder::build_row(), blender::ed::space_node::node_socket_draw_nested(), uiTemplateReportsBanner(), and uiTemplateStatusInfo().
void UI_block_emboss_set | ( | uiBlock * | block, |
eUIEmbossType | emboss | ||
) |
Definition at line 3629 of file interface.cc.
References uiBlock::emboss.
Referenced by ANIM_channel_draw_widgets(), block_create_autorun_warning(), blender::ui::TreeViewLayoutBuilder::build_row(), clip_draw_dopesheet_channels(), colorband_buttons_layout(), curvemap_buttons_layout(), CurveProfile_buttons_layout(), draw_channel_labels(), draw_channel_widget_lock(), draw_channel_widget_mute(), draw_constraint_header(), draw_outliner(), graph_draw_driver_settings_panel(), nla_panel_stripname(), blender::ed::space_node::node_add_error_message_button(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_extra_info_row(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_file_output_socket_draw(), blender::ed::space_node::node_socket_draw_nested(), outliner_draw_mode_column_toggle(), outliner_draw_warning_tree_element(), template_keymap_item_properties(), blender::ed::space_node::ui_node_draw_input(), ui_template_list_layout_draw(), uiTemplateReportsBanner(), uiTemplateStatusInfo(), and wm_block_splash_add_label().
Definition at line 2005 of file interface.cc.
References C, CTX_wm_window(), wmWindow::eventstate, UI_block_end_ex(), and wmEvent::xy.
Referenced by UI_block_draw().
Definition at line 1907 of file interface.cc.
References uiBlock::active, BKE_animsys_eval_context_construct(), BLI_assert, uiBlock::bounds_type, uiBlock::buttons, C, RenderData::cfra, CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), CTX_wm_region(), CTX_wm_window(), depsgraph, uiBlock::endblock, ListBase::first, uiBlock::flag, wmOperatorType::flag, uiBlock::layouts, LISTBASE_FOREACH, ot, Scene::r, uiBlock::rect, scene, ui_block_align_calc(), UI_block_align_end(), UI_BLOCK_BOUNDS, ui_block_bounds_calc(), ui_block_bounds_calc_centered(), ui_block_bounds_calc_centered_pie(), ui_block_bounds_calc_popup(), ui_block_bounds_calc_text(), UI_BLOCK_BOUNDS_NONE, UI_BLOCK_BOUNDS_PIE_CENTER, UI_BLOCK_BOUNDS_POPUP_CENTER, UI_BLOCK_BOUNDS_POPUP_MENU, UI_BLOCK_BOUNDS_POPUP_MOUSE, UI_block_bounds_set_normal(), UI_BLOCK_BOUNDS_TEXT, UI_block_layout_resolve(), UI_BLOCK_LOOP, UI_BLOCK_NUMSELECT, UI_BLOCK_SHOW_SHORTCUT_ALWAYS, UI_block_update_from_old(), UI_BUT_ALIGN, ui_but_anim_decorate_update_from_flag(), ui_but_anim_flag(), ui_but_context_poll_operator(), ui_but_context_poll_operator_ex(), UI_BUT_DISABLED, UI_but_is_decorator, ui_but_override_flag(), ui_but_predefined_extra_operator_icons_add(), ui_but_validate(), ui_menu_block_set_keyaccels(), ui_menu_block_set_keymaps(), ui_update_flexible_spacing(), rctf::xmax, rctf::xmin, and xy.
Referenced by UI_block_end().
Definition at line 5853 of file interface.cc.
References uiBlock::flag.
Referenced by UI_popover_end(), ui_template_list_layout_draw(), wm_block_create_redo(), wm_block_dialog_create(), and wm_operator_ui_create().
Definition at line 5848 of file interface.cc.
References uiBlock::flag.
Referenced by block_create__close_file_dialog(), block_create_autorun_warning(), block_create_save_file_forwardcompat_dialog(), component_menu(), constraint_ops_extra_draw(), blender::ed::space_node::create_search_popup_block(), curvemap_clipping_func(), draw_outliner(), ED_time_scrub_channel_search_draw(), gpencil_modifier_ops_extra_draw(), gpencil_shaderfx_ops_extra_draw(), menu_change_shortcut(), menu_items_from_ui_create(), merged_element_search_menu(), modifier_ops_extra_draw(), move_to_collection_menu_create(), blender::ed::space_node::node_find_menu(), blender::ed::space_node::node_uiblocks_init(), template_common_search_menu(), template_texture_user_menu(), ui_block_func_PIE(), ui_block_func_POPOVER(), ui_block_func_POPUP(), ui_def_but_rna__menu(), ui_icon_view_menu_cb(), ui_popover_create_block(), UI_popover_end(), ui_template_list_layout_draw(), blender::ed::space_node::ui_template_node_link_menu(), wm_block_create_about(), wm_block_create_redo(), wm_block_create_splash(), wm_block_dialog_create(), wm_block_search_menu(), wm_enum_search_menu(), wm_operator_ui_create(), and workspace_add_menu().
Definition at line 3456 of file interface.cc.
References BLI_freelistN(), BLI_pophead(), uiBlock::buttons, C, uiBlock::color_pickers, uiBlock::contexts, CTX_store_free_list(), uiBlock::func_argN, ColorPickerData::list, MEM_freeN, uiBlock::saferct, ui_block_free_button_groups(), ui_block_free_views(), ui_but_free(), UI_butstore_clear(), and uiBlock::unit.
Referenced by UI_blocklist_free(), and UI_blocklist_free_inactive().
void UI_block_func_butmenu_set | ( | uiBlock * | block, |
uiMenuHandleFunc | func, | ||
void * | arg | ||
) |
Definition at line 5959 of file interface.cc.
References uiBlock::butm_func, and uiBlock::butm_func_arg.
Referenced by colorband_tools_func(), curvemap_tools_func(), CurveProfile_presets_func(), and CurveProfile_tools_func().
void UI_block_func_handle_set | ( | uiBlock * | block, |
uiBlockHandleFunc | func, | ||
void * | arg | ||
) |
Definition at line 5953 of file interface.cc.
References uiBlock::handle_func, and uiBlock::handle_func_arg.
Referenced by graph_draw_driver_settings_panel(), graph_panel_modifiers(), image_panel_uv(), menu_add_shortcut(), menu_change_shortcut(), 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_modifiers(), nla_panel_properties(), nla_panel_stripname(), ui_layout_end(), uiTemplateMarker(), uiTemplateOperatorRedoProperties(), uiTemplatePreview(), uiTemplateRunningJobs(), view3d_panel_transform(), view3d_panel_vgroup(), and wm_block_create_redo().
void UI_block_func_set | ( | uiBlock * | block, |
uiButHandleFunc | func, | ||
void * | arg1, | ||
void * | arg2 | ||
) |
Definition at line 5965 of file interface.cc.
References uiBlock::func, uiBlock::func_arg1, and uiBlock::func_arg2.
Referenced by draw_constraint_header(), ED_file_path_button(), file_panel_execution_buttons_draw(), file_panel_operator(), wm_block_dialog_create(), and wm_operator_ui_create().
void UI_block_funcN_set | ( | uiBlock * | block, |
uiButHandleNFunc | funcN, | ||
void * | argN, | ||
void * | arg2 | ||
) |
Definition at line 5972 of file interface.cc.
References uiBlock::func_arg2, uiBlock::func_argN, uiBlock::funcN, and MEM_freeN.
Referenced by curvemap_buttons_layout(), CurveProfile_buttons_layout(), uiTemplateImage(), and uiTemplateMarker().
Definition at line 3639 of file interface.cc.
References uiBlock::flag, and UI_BLOCK_SEARCH_ONLY.
Referenced by UI_panels_draw().
Definition at line 2281 of file interface.cc.
References uiBlock::lock, and uiBlock::lockstr.
Referenced by draw_constraint_header(), gpencil_modifier_panel_get_property_pointers(), panel_draw(), template_operator_property_buts_draw_single(), uiTemplateColorRamp(), uiTemplateCurveMapping(), and uiTemplateCurveProfile().
Definition at line 2273 of file interface.cc.
References uiBlock::lock, and uiBlock::lockstr.
Referenced by gpencil_modifier_panel_get_property_pointers(), modifier_panel_get_property_pointers(), panel_draw(), shaderfx_panel_header(), template_operator_property_buts_draw_single(), uiTemplateColorRamp(), uiTemplateConstraintHeader(), uiTemplateCurveMapping(), and uiTemplateCurveProfile().
|
static |
Definition at line 2124 of file interface.cc.
References uiBlock::buttons, PointerRNA::data, ED_region_do_msg_notify_tag_redraw(), LISTBASE_FOREACH, wmMsgSubscribeValue::notify, wmMsgSubscribeValue::owner, PointerRNA::owner_id, uiBut::rnapoin, uiBut::rnaprop, PointerRNA::type, wmMsgSubscribeValue::user_data, and WM_msg_subscribe_rna().
Referenced by UI_region_message_subscribe().
This call escapes if there's alignment flags.
Definition at line 5815 of file interface.cc.
References uiBlock::buttons, uiBlock::flag, LISTBASE_FOREACH, SWAP, UI_BLOCK_IS_FLIP, UI_BLOCK_NO_FLIP, UI_BUT_ALIGN, and USER_MENUFIXEDORDER.
Referenced by ui_block_func_POPUP(), and ui_popup_block_position().
Definition at line 3551 of file interface.cc.
References uiBlock::active, BLI_addhead(), BLI_ghash_lookup(), BLI_ghash_reinsert(), BLI_ghash_str_new(), ARegion_Runtime::block_name_map, uiBlock::handle, uiBlock::name, uiBlock::oldblock, uiBlock::panel, ARegion::runtime, and ARegion::uiblocks.
Referenced by UI_block_begin(), ui_block_func_PIE(), ui_block_func_POPOVER(), and ui_block_func_POPUP().
Use when a block must be searched to give accurate results for the whole region but shouldn't be displayed.
Definition at line 3644 of file interface.cc.
References uiBlock::flag, SET_FLAG_FROM_TEST, and UI_BLOCK_SEARCH_ONLY.
Referenced by panel_property_search(), and panel_remove_invisible_layouts_recursive().
Definition at line 3634 of file interface.cc.
References uiBlock::theme_style.
Referenced by block_create__close_file_dialog(), block_create_autorun_warning(), block_create_save_file_forwardcompat_dialog(), blender::ed::space_node::create_search_popup_block(), curvemap_clipping_func(), merged_element_search_menu(), blender::ed::space_node::node_find_menu(), template_common_search_menu(), ui_block_func_COLOR(), ui_block_func_PIE(), ui_block_func_POPOVER(), ui_block_func_POPUP(), ui_icon_view_menu_cb(), UI_panel_begin(), ui_popup_block_refresh(), wm_block_create_about(), wm_block_create_redo(), wm_block_create_splash(), wm_block_dialog_create(), wm_block_search_menu(), wm_enum_search_menu(), and wm_operator_ui_create().
Definition at line 123 of file interface.cc.
References BLI_rcti_size_x(), BLI_rcti_size_y(), float(), Panel::ofsx, Panel::ofsy, uiBlock::panel, uiBlock::winmat, and ARegion::winrct.
Referenced by ui_block_to_region_rctf(), and ui_block_to_window_fl().
void ui_block_to_region_rctf | ( | const ARegion * | region, |
uiBlock * | block, | ||
rctf * | rct_dst, | ||
const rctf * | rct_src | ||
) |
Definition at line 160 of file interface.cc.
References ui_block_to_region_fl(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ui_but_rect_to_view().
Definition at line 149 of file interface.cc.
References ui_block_to_window_fl().
Definition at line 142 of file interface.cc.
References ui_block_to_region_fl(), ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by button_activate_state(), ui_block_func_POPOVER(), ui_block_to_window(), ui_block_to_window_rctf(), ui_block_to_window_scale(), ui_textedit_set_cursor_pos(), and UI_tooltip_create_from_button_or_extra_icon().
void ui_block_to_window_rctf | ( | const ARegion * | region, |
uiBlock * | block, | ||
rctf * | rct_dst, | ||
const rctf * | rct_src | ||
) |
Definition at line 170 of file interface.cc.
References ui_block_to_window_fl(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ui_but_to_pixelrect(), ui_mouse_motion_towards_check(), ui_popup_block_position(), and UI_tooltip_create_from_button_or_extra_icon().
Definition at line 180 of file interface.cc.
References ui_block_to_window_fl().
Referenced by ui_but_drag_init().
Definition at line 356 of file interface.cc.
References BLI_rctf_translate(), uiBlock::buttons, LISTBASE_FOREACH, uiBlock::rect, x, and y.
Referenced by ed_panel_draw(), ui_block_bounds_calc_centered(), ui_block_bounds_calc_centered_pie(), ui_block_bounds_calc_popup(), and ui_popup_block_refresh().
Definition at line 1813 of file interface.cc.
References uiBlock::auto_open, uiBlock::auto_open_last, BLI_listbase_is_empty(), BLI_movelisttolist(), uiBlock::butstore, uiBlock::buttons, C, uiBlock::color_pickers, ListBase::first, ColorPickerData::list, LISTBASE_FOREACH, uiBlock::oldblock, uiBlock::tooltipdisabled, UI_but_tooltip_refresh(), ui_but_update(), ui_but_update_from_old_block(), and UI_butstore_update().
Referenced by UI_block_end_ex().
Definition at line 3505 of file interface.cc.
References C, LISTBASE_FOREACH, and UI_block_draw().
Definition at line 3514 of file interface.cc.
References BLI_ghash_free(), BLI_pophead(), ARegion_Runtime::block_name_map, C, ARegion::runtime, UI_block_free(), and ARegion::uiblocks.
Definition at line 3527 of file interface.cc.
References usdtokens::b(), BLI_ghash_lookup(), BLI_ghash_remove(), BLI_remlink(), ARegion_Runtime::block_name_map, C, LISTBASE_FOREACH_MUTABLE, ARegion::runtime, UI_block_free(), and ARegion::uiblocks.
int UI_blocklist_min_y_get | ( | ListBase * | lb | ) |
Definition at line 5797 of file interface.cc.
References ListBase::first, LISTBASE_FOREACH, and min.
Definition at line 3496 of file interface.cc.
References C, LISTBASE_FOREACH, and ui_but_update_view_for_active().
Definition at line 3484 of file interface.cc.
References C, CTX_wm_region(), CTX_wm_window(), LISTBASE_FOREACH, and ui_update_window_matrix().
Definition at line 1058 of file interface.cc.
References C, and UI_but_active_only_ex().
bool UI_but_active_only_ex | ( | const bContext * | C, |
ARegion * | region, | ||
uiBlock * | block, | ||
uiBut * | but, | ||
const bool | remove_on_failure | ||
) |
Definition at line 1016 of file interface.cc.
References activate(), uiBut::active, BLI_remlink(), uiBlock::buttons, C, uiBut::layout, uiBlock::oldblock, ui_but_activate_event(), ui_but_active_free(), ui_but_find_old(), ui_but_free(), ui_layout_remove_but(), and ui_region_find_active_but().
Referenced by UI_block_active_only_flagged_buttons(), and UI_but_active_only().
Definition at line 1205 of file interface.cc.
References BLI_snprintf(), BLI_strdup(), uiBut::flag, MEM_freeN, uiBut::str, uiBut::strdata, UI_BUT_HAS_SEP_CHAR, ui_but_update(), UI_SEP_CHAR, and UI_SEP_CHAR_S.
Referenced by but_shortcut_name_func(), UI_but_hint_drawstr_set(), ui_menu_block_set_keymaps(), and uiItemMenuEnumFullO_ptr().
Definition at line 4016 of file interface.cc.
References MEM_callocN, type, and ui_but_alloc_info().
Referenced by ui_def_but().
|
static |
Definition at line 3940 of file interface.cc.
References type, UI_BTYPE_COLOR, UI_BTYPE_COLORBAND, UI_BTYPE_CURVE, UI_BTYPE_CURVEPROFILE, UI_BTYPE_DECORATOR, UI_BTYPE_HOTKEY_EVENT, UI_BTYPE_HSVCUBE, UI_BTYPE_NUM, UI_BTYPE_PROGRESS_BAR, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TAB, and UI_BTYPE_VIEW_ITEM.
Referenced by ui_but_alloc(), and ui_but_change_type().
Definition at line 3649 of file interface.cc.
References uiBut::drawstr, MAX2, PROP_FACTOR, PROP_NONE, PROP_PERCENTAGE, PROP_PIXEL, RNA_property_subtype(), uiBut::rnaprop, uiBut::str, STR_CONCAT, STR_CONCATF, ui_but_calc_float_precision(), ui_but_is_unit(), ui_get_but_string_unit(), and USER_FACTOR_AS_FACTOR.
Referenced by ui_but_update_ex().
Definition at line 3697 of file interface.cc.
References uiBut::drawstr, PROP_NONE, PROP_PERCENTAGE, PROP_PIXEL, RNA_property_subtype(), uiBut::rnaprop, uiBut::str, STR_CONCAT, and STR_CONCATF.
Referenced by ui_but_update_ex().
Definition at line 679 of file interface.cc.
References CLAMP, uiBut::hardmax, ui_but_get_float_precision(), ui_but_hide_fraction(), ui_but_is_unit_radians(), UI_calc_float_precision(), and UI_PRECISION_FLOAT_MAX.
Referenced by ui_but_build_drawstr_float(), ui_but_string_get_ex(), and ui_but_update_ex().
Reallocate the button (new address is returned) for a new button type. This should generally be avoided and instead the correct type be created right away.
Definition at line 4025 of file interface.cc.
References BLI_assert, BLI_insertlinkafter(), BLI_remlink(), uiBut::block, uiBlock::buttons, uiBut::layout, MEM_recallocN_id, uiBut::poin, uiBut::prev, uiBut::str, uiBut::strdata, uiBut::type, ui_but_alloc_info(), ui_button_group_replace_but_ptr(), UI_editsource_but_replace(), UI_editsource_enable_check(), ui_layout_replace_but_ptr(), uiLayoutGetBlock(), and UNUSED_VARS_NDEBUG.
Referenced by ui_but_add_search(), ui_item_array(), and uiItemFullR().
bContextStore* UI_but_context_get | ( | const uiBut * | but | ) |
Definition at line 5929 of file interface.cc.
References uiBut::context.
Referenced by wm_drop_ui_context_create().
bool ui_but_context_poll_operator | ( | bContext * | C, |
wmOperatorType * | ot, | ||
const uiBut * | but | ||
) |
Definition at line 1898 of file interface.cc.
References C, uiBut::opcontext, ot, params, ui_but_context_poll_operator_ex(), and WM_OP_INVOKE_DEFAULT.
Referenced by UI_block_end_ex(), ui_list_invoke_item_operator(), and ui_list_is_hovering_draggable_but().
bool ui_but_context_poll_operator_ex | ( | bContext * | C, |
const uiBut * | but, | ||
const wmOperatorCallParams * | optype_params | ||
) |
Definition at line 1862 of file interface.cc.
References BLI_assert_msg, C, uiBut::context, CTX_store_set(), uiBut::flag, wmOperatorCallParams::opcontext, wmOperatorCallParams::optype, result, UI_BUT_ACTIVE_OVERRIDE, and WM_operator_poll_context().
Referenced by UI_block_end_ex(), ui_but_context_poll_operator(), and ui_tooltip_data_from_button_or_extra_icon().
const PointerRNA* UI_but_context_ptr_get | ( | const uiBut * | but, |
const char * | name, | ||
const StructRNA * | type | ||
) |
Definition at line 5924 of file interface.cc.
References uiBut::context, CTX_store_ptr_lookup(), and type.
void UI_but_context_ptr_set | ( | uiBlock * | block, |
uiBut * | but, | ||
const char * | name, | ||
const PointerRNA * | ptr | ||
) |
Definition at line 5918 of file interface.cc.
References uiBut::context, uiBlock::contexts, CTX_store_add(), ptr, and bContextStore::used.
str | will be overwritten. |
Definition at line 2690 of file interface.cc.
References BKE_unit_name_to_alt(), BLI_strdup(), uiBut::block, MEM_freeN, RNA_SUBTYPE_UNIT_VALUE, str, UnitSettings::system, ui_but_is_unit(), UI_but_unit_type_get(), and uiBlock::unit.
Referenced by ui_textedit_begin().
Definition at line 5883 of file interface.cc.
References uiBut::disabled_info, UI_BUT_DISABLED, and UI_but_flag_enable().
Referenced by draw_setting_widget(), modifier_panel_header(), outliner_draw_mode_column_toggle(), ui_def_but_operator_ptr(), ui_def_but_rna(), ui_def_but_rna_propname(), ui_item_disabled(), and uiTemplateTextureShow().
Definition at line 2661 of file interface.cc.
References BLI_assert, uiBut::block, uiBlock::buttons, uiBut::flag, LISTBASE_FOREACH, and UI_BUT_DRAG_MULTI.
Referenced by ui_draw_but(), widget_draw_text(), and widget_draw_text_icon().
Definition at line 5878 of file interface.cc.
References uiBut::drawflag.
Referenced by block_create_autorun_warning(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_content_cell(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_left_column_cell(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_top_row_cell(), blender::ed::space_node::reroute_node_draw(), save_file_forwardcompat_cancel_button(), save_file_forwardcompat_overwrite_button(), save_file_forwardcompat_saveas_button(), ui_block_colorpicker(), UI_but_type_set_menu_from_pulldown(), uiItemFullO_ptr_ex(), widget_draw_extra_icons(), wm_block_file_close_cancel_button(), wm_block_file_close_discard_button(), wm_block_file_close_save_button(), and wm_block_splash_add_label().
Definition at line 5873 of file interface.cc.
References uiBut::drawflag.
Referenced by blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_content_cell(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_left_column_cell(), outliner_draw_restrictbuts(), template_add_button_search_menu(), template_ID_tabs(), template_search_add_button_operator(), UI_but_type_set_menu_from_pulldown(), ui_item_enum_expand_tabs(), ui_item_menu(), ui_template_list_layout_draw(), uiTemplateMarker(), uiTemplateNodeLink(), view3d_panel_vgroup(), and wm_block_splash_add_label().
Definition at line 726 of file interface.cc.
References BLI_assert, uiBut::dragtype, ELEM, uiBut::func, uiBut::func_arg1, uiBut::func_arg2, uiBut::funcN, uiBut::identity_cmp_func, uiBut::optype, uiBut::poin, uiBut::pointype, uiBut::retval, uiBut::type, UI_BTYPE_VIEW_ITEM, ui_but_rna_equals(), UI_view_item_matches(), and uiButViewItem::view_item.
Referenced by ui_but_find_new(), ui_but_find_old(), and ui_but_update_from_old_block().
|
static |
Definition at line 1329 of file interface.cc.
References C, uiBut::opcontext, uiBut::opptr, uiBut::optype, params, ui_but_event_operator_string_from_menu(), ui_but_event_operator_string_from_operator(), ui_but_event_operator_string_from_panel(), UI_but_menutype_get(), and UI_but_paneltype_get().
Referenced by UI_but_string_info_get(), and ui_menu_block_set_keymaps().
|
static |
Definition at line 1265 of file interface.cc.
References BLI_assert, C, MenuType::idname, IDP_AddToGroup(), IDP_FreeProperty(), IDP_GROUP, IDP_New(), IDP_NewString(), UI_but_menutype_get(), WM_key_event_operator_string(), and WM_OP_INVOKE_REGION_WIN.
Referenced by ui_but_event_operator_string().
|
static |
Definition at line 1242 of file interface.cc.
References BLI_assert, C, PointerRNA::data, wmOperatorType::idname, wmOperatorCallParams::opcontext, wmOperatorCallParams::opptr, wmOperatorCallParams::optype, and WM_key_event_operator_string().
Referenced by ui_but_event_operator_string(), and ui_but_extra_icon_event_operator_string().
|
static |
Nearly exact copy of ui_but_event_operator_string_from_menu
Definition at line 1289 of file interface.cc.
References BLI_assert, C, IDPropertyTemplate::i, PanelType::idname, IDP_AddToGroup(), IDP_FreeProperty(), IDP_GROUP, IDP_INT, IDP_New(), IDP_NewString(), IDP_ReplaceInGroup(), PanelType::region_type, PanelType::space_type, UI_but_paneltype_get(), WM_key_event_operator_string(), and WM_OP_INVOKE_REGION_WIN.
Referenced by ui_but_event_operator_string().
|
static |
Definition at line 1367 of file interface.cc.
References ARRAY_SIZE, uiBut::block, uiPopupBlockCreate::but, C, ELEM, free(), GS, uiBlock::handle, uiBut::hardmin, IDPropertyTemplate::i, id, ID_SCR, EnumPropertyItem::identifier, IDP_AddToGroup(), IDP_FreeProperty(), IDP_GROUP, IDP_INT, IDP_New(), IDP_NewString(), MEM_freeN, uiBut::menu_create_func, ID::name, PointerRNA::owner_id, uiPopupBlockHandle::popup_create_vars, PROP_ENUM, ptr, RNA_enum_from_value(), RNA_property_enum_items(), RNA_property_identifier(), RNA_property_type(), RNA_struct_find_property(), RNA_struct_is_a(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, STREQ, uiBut::type, PointerRNA::type, UI_BTYPE_BUT_MENU, ui_def_but_rna__menu(), ui_def_but_rna__menu_type(), ui_def_but_rna__panel_type(), EnumPropertyItem::value, WM_context_path_resolve_property_full(), WM_key_event_operator_string(), and WM_OP_INVOKE_REGION_WIN.
Referenced by UI_but_string_info_get(), and ui_menu_block_set_keymaps().
Definition at line 1093 of file interface.cc.
References C, ui_but_execute_begin(), and ui_but_execute_end().
|
static |
Definition at line 1353 of file interface.cc.
References C, uiButExtraOpIcon::optype_params, ui_but_event_operator_string_from_operator(), and UI_but_extra_operator_icon_optype_get().
Referenced by UI_but_extra_icon_string_info_get().
|
static |
Definition at line 811 of file interface.cc.
References uiBut::extra_op_icons, LISTBASE_FOREACH, and ui_but_extra_icons_equals_old().
Referenced by ui_but_extra_icons_update_from_old_but().
void UI_but_extra_icon_string_info_get | ( | struct bContext * | C, |
uiButExtraOpIcon * | extra_icon, | ||
... | |||
) |
Definition at line 6733 of file interface.cc.
References BLI_strdup(), BUT_GET_LABEL, BUT_GET_OP_KEYMAP, BUT_GET_TIP, C, uiStringInfo::strinfo, uiStringInfo::type, ui_but_extra_icon_event_operator_string(), UI_but_extra_operator_icon_opptr_get(), UI_but_extra_operator_icon_optype_get(), WM_operatortype_description(), and WM_operatortype_name().
Referenced by ui_tooltip_data_from_button_or_extra_icon().
|
static |
Definition at line 804 of file interface.cc.
References uiButExtraOpIcon::icon, wmOperatorCallParams::optype, and uiButExtraOpIcon::optype_params.
Referenced by ui_but_extra_icon_find_old().
|
static |
Definition at line 822 of file interface.cc.
References uiBut::active, BLI_assert, uiBut::extra_op_icons, uiButExtraOpIcon::highlighted, LISTBASE_FOREACH, and ui_but_extra_icon_find_old().
Referenced by ui_but_update_old_active_from_new().
PointerRNA* UI_but_extra_operator_icon_add | ( | uiBut * | but, |
const char * | opname, | ||
wmOperatorCallContext | opcontext, | ||
int | icon | ||
) |
Definition at line 1682 of file interface.cc.
References ui_but_extra_operator_icon_add_ptr(), and WM_operatortype_find().
Referenced by blender::ed::asset_browser::AssetCatalogTreeViewItem::build_row(), file_panel_execution_buttons_draw(), and template_id_workspace_pin_extra_icon().
|
static |
Definition at line 1644 of file interface.cc.
References BLI_addtail(), uiButExtraOpIcon::disabled, uiBut::extra_op_icons, uiButExtraOpIcon::highlighted, uiButExtraOpIcon::icon, wmOperatorCallParams::opcontext, wmOperatorCallParams::opptr, wmOperatorCallParams::optype, uiButExtraOpIcon::optype_params, and WM_operator_properties_create_ptr().
Referenced by UI_but_extra_operator_icon_add(), and ui_but_predefined_extra_operator_icons_add().
|
static |
Definition at line 1666 of file interface.cc.
References MEM_freeN, wmOperatorCallParams::opptr, uiButExtraOpIcon::optype_params, and WM_operator_properties_free().
Referenced by ui_but_extra_operator_icons_free().
PointerRNA* UI_but_extra_operator_icon_opptr_get | ( | uiButExtraOpIcon * | extra_icon | ) |
Definition at line 1701 of file interface.cc.
References wmOperatorCallParams::opptr, and uiButExtraOpIcon::optype_params.
Referenced by UI_but_extra_icon_string_info_get(), and ui_tooltip_data_from_button_or_extra_icon().
wmOperatorType* UI_but_extra_operator_icon_optype_get | ( | uiButExtraOpIcon * | extra_icon | ) |
Definition at line 1696 of file interface.cc.
References wmOperatorCallParams::optype, and uiButExtraOpIcon::optype_params.
Referenced by ui_but_extra_icon_event_operator_string(), UI_but_extra_icon_string_info_get(), and ui_tooltip_data_from_button_or_extra_icon().
Definition at line 1674 of file interface.cc.
References BLI_listbase_clear(), uiBut::extra_op_icons, LISTBASE_FOREACH_MUTABLE, and ui_but_extra_operator_icon_free().
Referenced by ui_but_extra_operator_icon_apply(), and ui_but_free().
Definition at line 794 of file interface.cc.
References uiBlock::buttons, LISTBASE_FOREACH, and ui_but_equals_old().
Referenced by UI_butstore_update().
Definition at line 784 of file interface.cc.
References uiBlock::buttons, LISTBASE_FOREACH, and ui_but_equals_old().
Referenced by UI_but_active_only_ex(), and ui_but_update_from_old_block().
Definition at line 5863 of file interface.cc.
References uiBut::flag.
Referenced by blender::ui::AbstractViewItem::add_rename_button(), file_draw_list(), outliner_draw_mode_column_toggle(), outliner_draw_warning_tree_element(), template_operator_property_buts_draw_single(), ui_block_colorpicker(), ui_template_list_layout_draw(), and ui_update_color_picker_buts_rgb().
Definition at line 5858 of file interface.cc.
References uiBut::flag.
Referenced by add_attribute_search_button(), block_create_autorun_warning(), blender::ed::space_node::create_search_popup_block(), curvemap_buttons_layout(), CurveProfile_buttons_layout(), ED_file_path_button(), file_draw_list(), file_panel_execution_buttons_draw(), merged_element_search_menu(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_extra_info_row(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_find_menu(), blender::ed::space_node::node_socket_draw_nested(), outliner_draw_mode_column_toggle(), outliner_draw_overrides_restrictbuts(), outliner_draw_overrides_rna_buts(), outliner_draw_restrictbuts(), outliner_draw_rnabuts(), outliner_draw_userbuts(), save_file_forwardcompat_overwrite_button(), save_file_forwardcompat_saveas_button(), template_add_button_search_menu(), template_ID(), template_id_def_new_but(), UI_but_disable(), ui_but_search_refresh(), ui_item_with_label(), ui_layout_list_set_labels_active(), ui_popup_context_menu_for_button(), ui_template_list_layout_draw(), uiDefAutoButR(), uiItemFullO_ptr_ex(), uiItemFullR(), uiItemL_(), uiItemL_ex(), uiTemplateKeymapItemProperties(), view3d_panel_vgroup(), wm_block_dialog_create(), wm_block_file_close_save_button(), wm_block_search_menu(), and wm_block_splash_add_label().
Definition at line 5868 of file interface.cc.
References uiBut::flag.
Referenced by datadropper_init(), depthdropper_init(), driverdropper_init(), ED_file_path_button(), eyedropper_colorband_init(), eyedropper_init(), file_panel_execution_buttons_draw(), and insert_key_button_exec().
push a new event onto event queue to activate the given button (usually a text-field) upon entering a popup
Definition at line 6474 of file interface.cc.
References EVT_BUT_OPEN, KM_PRESS, wm_event_add(), and wm_event_init_from_window().
Referenced by template_common_search_menu(), template_operator_property_buts_draw_single(), and wm_enum_search_menu().
a full doc with API notes can be found in 'blender/doc/guides/interface_API.txt'
uiBlahBlah()
external function. ui_blah_blah()
internal function.
Definition at line 3406 of file interface.cc.
References uiBut::active, BLI_assert, uiBut::block, C, uiBut::func_argN, uiBut::hold_argN, IMB_freeImBuf(), MEM_freeN, uiBut::opptr, uiBut::poin, uiBut::str, uiBut::strdata, uiBut::tip_arg, uiBut::tip_arg_free, uiBut::type, UI_BTYPE_IMAGE, ui_but_active_free(), ui_but_drag_free(), ui_but_extra_operator_icons_free(), ui_but_free_type_specific(), UI_butstore_is_registered(), and WM_operator_properties_free().
Referenced by UI_block_free(), UI_but_active_only_ex(), and ui_but_update_from_old_block().
Free data specific to a certain button type. For now just do in a switch-case, we could instead have a callback stored in uiBut and set that in ui_but_alloc_info().
Definition at line 3388 of file interface.cc.
References uiButSearch::arg, uiButSearch::arg_free_fn, uiBut::type, and UI_BTYPE_SEARCH_MENU.
Referenced by ui_but_free().
void UI_but_func_complete_set | ( | uiBut * | but, |
uiButCompleteFunc | func, | ||
void * | arg | ||
) |
Definition at line 6018 of file interface.cc.
References uiBut::autocomplete_func, and uiBut::autofunc_arg.
Referenced by ED_file_path_button(), and file_panel_execution_buttons_draw().
void UI_but_func_drawextra_set | ( | uiBlock * | block, |
void(*)(const bContext *C, void *idv, void *arg1, void *arg2, rcti *rect) | func, | ||
void * | arg1, | ||
void * | arg2 | ||
) |
Definition at line 5989 of file interface.cc.
References uiBlock::drawextra, uiBlock::drawextra_arg1, and uiBlock::drawextra_arg2.
void UI_but_func_hold_set | ( | uiBut * | but, |
uiButHandleHoldFunc | func, | ||
void * | argN | ||
) |
Definition at line 6488 of file interface.cc.
References uiBut::hold_argN, and uiBut::hold_func.
Referenced by uiItemFullOMenuHold_ptr().
void UI_but_func_menu_step_set | ( | uiBut * | but, |
uiMenuStepFunc | func | ||
) |
Definition at line 6024 of file interface.cc.
References uiBut::menu_step_func.
Referenced by uiblock_layer_pass_buttons().
void UI_but_func_pushed_state_set | ( | uiBut * | but, |
uiButPushedStateFunc | func, | ||
const void * | arg | ||
) |
Definition at line 6039 of file interface.cc.
References uiBut::pushed_state_arg, uiBut::pushed_state_func, and ui_but_update().
void UI_but_func_rename_set | ( | uiBut * | but, |
uiButHandleRenameFunc | func, | ||
void * | arg1 | ||
) |
Definition at line 5983 of file interface.cc.
References uiBut::rename_arg1, and uiBut::rename_func.
Referenced by blender::ui::AbstractViewItem::add_rename_button(), file_draw_list(), and outliner_buttons().
void UI_but_func_search_set | ( | uiBut * | but, |
uiButSearchCreateFn | search_create_fn, | ||
uiButSearchUpdateFn | search_update_fn, | ||
void * | arg, | ||
bool | free_arg, | ||
uiFreeArgFunc | search_arg_free_fn, | ||
uiButHandleFunc | search_exec_fn, | ||
void * | active | ||
) |
search_create_fn | Function to create the menu. |
search_update_fn | Function to refresh search content after the search text has changed. |
arg | user value. |
free_arg | Set to true if the argument is newly allocated memory for every redraw and should be freed when the button is destroyed. |
search_arg_free_fn | When non-null, use this function to free arg. |
search_exec_fn | Function that executes the action, gets arg as the first argument. The second argument as the active item-pointer |
active | When non-null, this item-pointer item will be visible and selected, otherwise the first item will be selected. |
Definition at line 6242 of file interface.cc.
References blender::compositor::active, uiButSearch::arg, uiButSearch::arg_free_fn, BLI_assert, uiBut::block, uiButSearch::but, uiBut::drawstr, uiBlock::flag, uiBut::func, uiButSearch::item_active, uiButSearch::items_update_fn, uiButSearch::popup_create_fn, uiButSearch::results_are_suggestions, uiBut::type, UI_BLOCK_LOOP, UI_BTYPE_SEARCH_MENU, UI_but_func_set(), UI_but_funcN_set(), ui_but_search_refresh(), and ui_searchbox_create_generic().
Referenced by add_attribute_search_button(), blender::ed::space_node::create_search_popup_block(), merged_element_search_menu(), blender::ed::space_node::node_find_menu(), blender::ed::space_node::node_geometry_add_attribute_search_button(), template_common_search_menu(), ui_but_add_search(), UI_but_func_menu_search(), UI_but_func_operator_search(), and uiDefSearchButO_ptr().
void UI_but_func_search_set_context_menu | ( | uiBut * | but, |
uiButSearchContextMenuFn | context_menu_fn | ||
) |
Definition at line 6300 of file interface.cc.
References BLI_assert, uiButSearch::item_context_menu_fn, uiBut::type, and UI_BTYPE_SEARCH_MENU.
Referenced by UI_but_func_menu_search().
Definition at line 6324 of file interface.cc.
References BLI_assert, uiButSearch::results_are_suggestions, uiBut::type, and UI_BTYPE_SEARCH_MENU.
Referenced by add_attribute_search_button(), blender::ed::space_node::node_geometry_add_attribute_search_button(), and ui_but_add_search().
search_sep_string | when not NULL, this string is used as a separator, showing the icon and highlighted text after the last instance of this string. |
Definition at line 6308 of file interface.cc.
References BLI_assert, uiButSearch::item_sep_string, uiBut::type, and UI_BTYPE_SEARCH_MENU.
Referenced by add_attribute_search_button(), blender::ed::space_node::create_search_popup_block(), blender::ed::space_node::node_geometry_add_attribute_search_button(), and UI_but_func_menu_search().
void UI_but_func_search_set_tooltip | ( | uiBut * | but, |
uiButSearchTooltipFn | tooltip_fn | ||
) |
Definition at line 6316 of file interface.cc.
References BLI_assert, uiButSearch::item_tooltip_fn, uiBut::type, and UI_BTYPE_SEARCH_MENU.
Referenced by template_common_search_menu(), and UI_but_func_menu_search().
void UI_but_func_set | ( | uiBut * | but, |
uiButHandleFunc | func, | ||
void * | arg1, | ||
void * | arg2 | ||
) |
Definition at line 6000 of file interface.cc.
References uiBut::func, uiBut::func_arg1, and uiBut::func_arg2.
Referenced by ANIM_channel_draw_widgets(), block_create__close_file_dialog(), block_create_autorun_warning(), colorband_buttons_layout(), curvemap_buttons_layout(), curvemap_clipping_func(), CurveProfile_buttons_layout(), draw_setting_widget(), envelope_panel_draw(), graph_draw_driver_settings_panel(), graph_panel_key_properties(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_hidden(), outliner_draw_mode_column_toggle(), outliner_draw_restrictbuts(), outliner_draw_userbuts(), save_file_forwardcompat_cancel_button(), save_file_forwardcompat_overwrite_button(), save_file_forwardcompat_saveas_button(), template_operator_property_buts_draw_single(), ui_block_colorpicker(), UI_but_func_search_set(), ui_colorpicker_circle(), ui_colorpicker_square(), ui_item_array(), ui_item_enum_expand_elem_exec(), ui_item_with_label(), ui_popup_context_menu_for_button(), ui_template_list_layout_draw(), uiItemDecoratorR_prop(), uiTemplateKeymapItemProperties(), uiTemplateLayers(), uiTemplateTextureShow(), wm_block_create_splash(), wm_block_dialog_create(), wm_block_file_close_cancel_button(), wm_block_file_close_discard_button(), and wm_block_file_close_save_button().
void UI_but_func_tooltip_set | ( | uiBut * | but, |
uiButToolTipFunc | func, | ||
void * | arg, | ||
uiFreeArgFunc | free_arg | ||
) |
Definition at line 6029 of file interface.cc.
References uiBut::tip_arg, uiBut::tip_arg_free, and uiBut::tip_func.
Referenced by blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), draw_channel_widget_lock(), draw_channel_widget_mute(), file_draw_icon(), blender::ed::space_node::node_add_error_message_button(), blender::ed::space_node::node_draw_extra_info_row(), blender::ed::space_node::node_socket_draw_nested(), ui_template_list_layout_draw(), uiLayoutSetTooltipFunc(), and uiTemplateRunningJobs().
void UI_but_funcN_set | ( | uiBut * | but, |
uiButHandleNFunc | funcN, | ||
void * | argN, | ||
void * | arg2 | ||
) |
Definition at line 6007 of file interface.cc.
References uiBut::func_arg2, uiBut::func_argN, uiBut::funcN, and MEM_freeN.
Referenced by colorband_buttons_layout(), curvemap_buttons_layout(), CurveProfile_buttons_layout(), draw_setting_widget(), ED_file_path_button(), file_panel_execution_buttons_draw(), fmodifier_panel_header(), template_ID(), template_id_def_new_but(), template_ID_tabs(), template_texture_user_menu(), UI_but_func_search_set(), blender::ed::space_node::ui_node_menu_column(), ui_pie_menu_level_create(), blender::ed::space_node::ui_template_node_link_menu(), uiblock_layer_pass_buttons(), and uiTemplateMarker().
Definition at line 639 of file interface.cc.
References uiBut::a2, uiBut::type, and UI_BTYPE_NUM.
Referenced by ui_but_calc_float_precision(), and ui_get_but_string_unit().
Definition at line 648 of file interface.cc.
References uiBut::a1, uiBut::type, and UI_BTYPE_NUM.
Referenced by ui_but_hide_fraction().
Definition at line 657 of file interface.cc.
References blender::math::floor(), floorf, PROP_UNIT_NONE, PROP_UNIT_TIME, ui_but_get_float_step_size(), UI_but_unit_type_get(), and UI_PRECISION_FLOAT_SCALE.
Referenced by ui_but_calc_float_precision(), and ui_but_string_get_ex().
Adds a hint to the button which draws right aligned, grayed out and never clipped.
Definition at line 6443 of file interface.cc.
References ui_but_add_shortcut().
Referenced by blender::ed::spreadsheet::GeometryDataSetTreeViewItem::build_row().
|
static |
Definition at line 1733 of file interface.cc.
References uiBut::flag, PREDEFINED_EXTRA_OP_ICON_CLEAR, PREDEFINED_EXTRA_OP_ICON_EYEDROPPER, PREDEFINED_EXTRA_OP_ICON_NONE, uiBut::type, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TEXT, ui_but_icon_extra_is_visible_search_eyedropper(), ui_but_icon_extra_is_visible_search_unlink(), ui_but_icon_extra_is_visible_text_clear(), and UI_BUT_VALUE_CLEAR.
Referenced by ui_but_predefined_extra_operator_icons_add().
Definition at line 1719 of file interface.cc.
References BLI_assert, uiBut::editstr, uiBut::flag, ID_OB, OB_DATA_SUPPORT_ID, RNA_property_pointer_type(), RNA_type_to_ID_code(), uiBut::rnapoin, uiBut::rnaprop, uiBut::type, type, UI_BTYPE_SEARCH_MENU, and UI_BUT_VALUE_CLEAR.
Referenced by ui_but_icon_extra_get().
Definition at line 1712 of file interface.cc.
References BLI_assert, uiBut::drawstr, uiBut::editstr, ELEM, uiBut::flag, uiBut::type, UI_BTYPE_SEARCH_MENU, and UI_BUT_VALUE_CLEAR.
Referenced by ui_but_icon_extra_get().
Definition at line 1706 of file interface.cc.
References BLI_assert, uiBut::drawstr, uiBut::flag, uiBut::type, UI_BTYPE_TEXT, and UI_BUT_VALUE_CLEAR.
Referenced by ui_but_icon_extra_get().
Definition at line 2397 of file interface.cc.
References ELEM, PROP_BOOLEAN, PROP_ENUM, RNA_property_type(), uiBut::rnaprop, uiBut::type, UI_BTYPE_ICON_TOGGLE, UI_BTYPE_ICON_TOGGLE_N, UI_BTYPE_ROW, UI_BTYPE_TAB, UI_BTYPE_TOGGLE, and UI_BTYPE_TOGGLE_N.
Referenced by ui_drag_toggle_but_is_supported(), and ui_drag_toggle_but_pushed_state().
Check if this button is similar enough to be grouped with another.
Definition at line 2449 of file interface.cc.
References uiBut::pointype, RNA_property_subtype(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, uiBut::type, and PointerRNA::type.
Referenced by ui_multibut_states_tag().
Definition at line 2376 of file interface.cc.
References uiBut::poin, uiBut::pointype, PROP_FLOAT, RNA_property_type(), uiBut::rnaprop, and UI_BUT_POIN_FLOAT.
Referenced by ui_but_string_eval_number(), ui_but_string_get_ex(), ui_but_string_set(), ui_but_update_ex(), ui_do_but_NUM(), ui_do_but_SLI(), ui_numedit_begin(), ui_numedit_but_NUM(), ui_numedit_but_SLI(), and ui_textedit_begin().
int ui_but_is_pushed | ( | uiBut * | but | ) |
Definition at line 2253 of file interface.cc.
References ui_but_is_pushed_ex(), and UI_BUT_VALUE_UNSET.
Referenced by ui_drag_toggle_but_pushed_state().
Check if the button is pushed, this is only meaningful for some button types.
Definition at line 2156 of file interface.cc.
References uiBut::bit, uiBut::bitnr, bool, uiBut::custom_data, PointerRNA::data, uiBut::drawflag, ELEM, uiBut::hardmax, uiBut::hardmin, uiBut::optype, PROP_ENUM_FLAG, PROP_POINTER, uiBut::pushed_state_arg, uiBut::pushed_state_func, RNA_property_flag(), RNA_property_pointer_get(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, state, uiBut::type, UI_BITBUT_TEST, UI_BTYPE_BUT, UI_BTYPE_BUT_TOGGLE, UI_BTYPE_CHECKBOX, UI_BTYPE_CHECKBOX_N, UI_BTYPE_COLOR, UI_BTYPE_DECORATOR, UI_BTYPE_HOTKEY_EVENT, UI_BTYPE_ICON_TOGGLE, UI_BTYPE_ICON_TOGGLE_N, UI_BTYPE_KEY_EVENT, UI_BTYPE_LISTROW, UI_BTYPE_ROW, UI_BTYPE_TAB, UI_BTYPE_TOGGLE, UI_BTYPE_TOGGLE_N, UI_BTYPE_VIEW_ITEM, UI_BUT_CHECKBOX_INVERT, UI_GET_BUT_VALUE_INIT, UI_view_item_is_active(), and uiButViewItem::view_item.
Referenced by ui_but_is_pushed(), and ui_but_update_select_flag().
Definition at line 1103 of file interface.cc.
References ID_CHECK_UNDO, PointerRNA::owner_id, RNA_struct_undo_check(), uiBut::rnapoin, and PointerRNA::type.
Referenced by ui_def_but_rna().
Definition at line 2475 of file interface.cc.
References uiBut::drawstr, RNA_struct_contains_property(), uiBut::rnapoin, and uiBut::rnaprop.
Referenced by ui_button_value_default().
Definition at line 365 of file interface.cc.
Referenced by ui_block_bounds_calc_text().
Definition at line 2420 of file interface.cc.
References uiBut::block, PROP_UNIT_NONE, PROP_UNIT_ROTATION, PROP_UNIT_TIME, UnitSettings::system, ui_but_is_unit_radians_ex(), UI_but_unit_type_get(), uiBlock::unit, and USER_UNIT_NONE.
Referenced by ui_but_build_drawstr_float(), ui_but_convert_to_unit_alt_name(), ui_but_string_eval_number(), ui_but_string_get_ex(), ui_def_but_rna(), ui_numedit_apply_snapf(), and ui_textedit_begin().
Definition at line 113 of file interface.cc.
References uiBut::block, ui_but_is_unit_radians_ex(), UI_but_unit_type_get(), and uiBlock::unit.
Referenced by ui_but_calc_float_precision().
|
static |
Definition at line 108 of file interface.cc.
References PROP_UNIT_ROTATION, UnitSettings::system_rotation, and USER_UNIT_ROT_RADIANS.
Referenced by ui_but_is_unit(), and ui_but_is_unit_radians().
Definition at line 4494 of file interface.cc.
References uiBut::menu_create_func, and ui_def_but_rna__panel_type().
Referenced by button_activate_state(), ui_block_open_begin(), and widget_roundbox_set().
void UI_but_node_link_set | ( | uiBut * | but, |
bNodeSocket * | socket, | ||
const float | draw_color[4] | ||
) |
Definition at line 6448 of file interface.cc.
References uiBut::col, uiBut::custom_data, uiBut::flag, rgba_float_to_uchar(), and UI_BUT_NODE_LINK.
Referenced by uiTemplateNodeLink().
Definition at line 6464 of file interface.cc.
References BLI_assert, uiButNumber::precision, uiBut::type, and UI_BTYPE_NUM.
Referenced by curvemap_buttons_layout(), curvemap_clipping_func(), CurveProfile_buttons_layout(), ui_def_but_rna(), uiTemplateMarker(), uvedit_vertex_buttons(), v3d_editvertex_buts(), v3d_object_dimension_buts(), and view3d_panel_vgroup().
Definition at line 6455 of file interface.cc.
References BLI_assert, uiButNumber::step_size, uiBut::type, and UI_BTYPE_NUM.
Referenced by colorband_buttons_layout(), curvemap_buttons_layout(), curvemap_clipping_func(), CurveProfile_buttons_layout(), ui_def_but_rna(), uiTemplateMarker(), uvedit_vertex_buttons(), v3d_editvertex_buts(), v3d_object_dimension_buts(), and view3d_panel_vgroup().
PointerRNA* UI_but_operator_ptr_get | ( | uiBut * | but | ) |
Definition at line 5908 of file interface.cc.
References uiBut::opptr, uiBut::optype, and WM_operator_properties_create_ptr().
Referenced by ANIM_channel_draw_widgets(), copy_python_command_button_exec(), file_draw_invalid_asset_library_hint(), operator_enum_search_exec_fn(), operator_enum_search_update_fn(), template_ID(), ui_but_copy_operator(), UI_but_string_info_get(), ui_tooltip_data_from_button_or_extra_icon(), uiDefSearchButO_ptr(), uiItemFullO_ptr_ex(), uiTemplatePalette(), and view3d_panel_vgroup().
Definition at line 1613 of file interface.cc.
References uiBut::flag, RNA_OVERRIDE_STATUS_OVERRIDDEN, RNA_property_override_library_status(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, and UI_BUT_OVERRIDDEN.
Referenced by UI_block_end_ex(), and UI_context_update_anim_flag().
Definition at line 1558 of file interface.cc.
References ARRAY_SIZE, BLI_assert, BLI_snprintf(), uiBut::pie_dir, size(), and ui_radial_dir_to_numpad.
Referenced by ui_menu_block_set_keymaps().
Definition at line 2032 of file interface.cc.
References BLI_rcti_isect(), BLI_rcti_translate(), ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by UI_block_draw().
While some extra operator icons have to be set explicitly upon button creating, this code adds some generic ones based on button data. Currently these are mutually exclusive, so there's only ever one predefined extra icon.
Definition at line 1764 of file interface.cc.
References BLI_assert, uiBut::extra_op_icons, LISTBASE_FOREACH, PREDEFINED_EXTRA_OP_ICON_CLEAR, PREDEFINED_EXTRA_OP_ICON_EYEDROPPER, ui_but_extra_operator_icon_add_ptr(), ui_but_icon_extra_get(), WM_OP_INVOKE_DEFAULT, and WM_operatortype_find().
Referenced by UI_block_end_ex().
Definition at line 3258 of file interface.cc.
References uiBut::hardmax, uiBut::hardmin, PROP_FLOAT, PROP_INT, RNA_property_float_range(), RNA_property_int_range(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, and type.
Referenced by ui_handle_button_event().
Definition at line 3280 of file interface.cc.
References CLAMP, double(), e, uiBut::hardmax, uiBut::hardmin, CCL_NAMESPACE_BEGIN::isfinite(), max_ff(), min_ff(), uiBut::poin, uiBut::pointype, PROP_COLOR, PROP_FLOAT, PROP_INT, RNA_property_array_check(), RNA_property_float_get_array_range(), RNA_property_float_ui_range(), RNA_property_int_get_array_range(), RNA_property_int_ui_range(), RNA_property_subtype(), RNA_property_type(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, soft_range_round_down(), soft_range_round_up(), uiBut::softmax, uiBut::softmin, type, UI_BUT_POIN_TYPES, and ui_but_value_get().
Referenced by ui_but_update_ex(), and ui_handle_button_event().
int UI_but_return_value_get | ( | uiBut * | but | ) |
Definition at line 5903 of file interface.cc.
References uiBut::retval.
Definition at line 705 of file interface.cc.
References Freestyle::a, usdtokens::b(), and ui_but_rna_equals_ex().
Referenced by ui_but_equals_old(), and ui_list_contains_row().
bool ui_but_rna_equals_ex | ( | const uiBut * | but, |
const PointerRNA * | ptr, | ||
const PropertyRNA * | prop, | ||
int | index | ||
) |
Definition at line 710 of file interface.cc.
References PointerRNA::data, ptr, uiBut::rnaindex, uiBut::rnapoin, and uiBut::rnaprop.
Referenced by ui_but_anim_decorate_find_attached_button(), and ui_but_rna_equals().
Definition at line 4514 of file interface.cc.
References BLI_assert, BLI_strdup(), uiBut::func_argN, uiBut::menu_create_func, uiBut::poin, uiBut::type, UI_BTYPE_MENU, ui_def_but_rna__menu(), and ui_def_but_rna__menu_type().
Referenced by uiItemFullR_with_menu().
Definition at line 4485 of file interface.cc.
References BLI_assert, BLI_strdup(), ELEM, uiBut::func_argN, uiBut::menu_create_func, uiBut::type, UI_BTYPE_COLOR, UI_BTYPE_MENU, and ui_def_but_rna__panel_type().
Referenced by uiItemFullR_with_popover().
PropertyScaleType ui_but_scale_type | ( | const uiBut * | but | ) |
Definition at line 2389 of file interface.cc.
References PROP_SCALE_LINEAR, RNA_property_ui_scale(), and uiBut::rnaprop.
Referenced by ui_do_but_NUM(), ui_do_but_SLI(), ui_numedit_apply_snapf(), ui_numedit_begin(), ui_numedit_but_NUM(), ui_numedit_but_SLI(), and widget_numslider().
bool ui_but_string_eval_number | ( | bContext * | C, |
const uiBut * | but, | ||
const char * | str, | ||
double * | r_value | ||
) |
Definition at line 3044 of file interface.cc.
References C, PROP_FACTOR, PROP_NONE, PROP_PERCENTAGE, RNA_property_subtype(), uiBut::rnaprop, str, ui_but_is_float(), ui_but_is_unit(), ui_number_from_string(), ui_number_from_string_factor(), ui_number_from_string_percentage(), and ui_number_from_string_units_with_but().
Referenced by ui_apply_but_NUM(), ui_but_paste_numeric_value(), and ui_but_string_set().
Definition at line 3087 of file interface.cc.
References MEM_freeN, uiBut::str, and uiBut::strdata.
Referenced by ui_but_update_ex().
Definition at line 2911 of file interface.cc.
References str, and ui_but_string_get_ex().
Referenced by ui_but_copy_text(), ui_but_update_ex(), and ui_tooltip_data_from_button_or_extra_icon().
char* ui_but_string_get_dynamic | ( | uiBut * | but, |
int * | r_str_size | ||
) |
A version of ui_but_string_get_ex for dynamic buffer sizes (where ui_but_string_get_max_length returns 0).
r_str_size | size of the returned string (including terminator). |
Definition at line 2916 of file interface.cc.
References BLI_assert, BLI_strdup(), BLI_strdupn(), uiBut::block, ELEM, uiBlock::evil_C, PROP_ENUM, PROP_POINTER, PROP_STRING, ptr, RNA_property_enum_get(), RNA_property_enum_name(), RNA_property_pointer_get(), RNA_property_string_get_alloc(), RNA_property_type(), RNA_struct_name_get_alloc(), uiBut::rnapoin, uiBut::rnaprop, str, uiBut::type, type, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TEXT, and UNLIKELY.
Referenced by ui_textedit_begin().
void ui_but_string_get_ex | ( | uiBut * | but, |
char * | str, | ||
const size_t | maxlen, | ||
const int | float_precision, | ||
const bool | use_exp_float, | ||
bool * | r_use_exp_float | ||
) |
Definition at line 2781 of file interface.cc.
References BLI_assert, BLI_snprintf(), BLI_strncpy(), BLI_strncpy_utf8(), uiBut::block, CLAMP, uiBut::custom_data, ELEM, uiBlock::evil_C, integer_digits_f(), MAX2, MEM_freeN, PointerRNA::owner_id, uiBut::poin, PROP_ENUM, PROP_FACTOR, PROP_NONE, PROP_POINTER, PROP_STRING, ptr, RNA_pointer_create(), RNA_property_enum_get(), RNA_property_enum_name(), RNA_property_pointer_get(), RNA_property_pointer_type(), RNA_property_string_get_alloc(), RNA_property_subtype(), RNA_property_type(), RNA_struct_name_get_alloc(), uiBut::rnapoin, uiBut::rnaprop, str, uiBut::type, type, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TAB, UI_BTYPE_TEXT, ui_but_anim_expression_get(), ui_but_calc_float_precision(), ui_but_hide_fraction(), ui_but_is_float(), ui_but_is_unit(), UI_but_is_utf8(), ui_but_value_get(), ui_get_but_string_unit(), UI_PRECISION_FLOAT_MAX, and USER_FACTOR_AS_FACTOR.
Referenced by ui_but_copy_numeric_value(), ui_but_string_get(), and ui_textedit_begin().
int ui_but_string_get_max_length | ( | uiBut * | but | ) |
Definition at line 2653 of file interface.cc.
References ELEM, uiBut::hardmax, uiBut::type, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TEXT, and UI_MAX_DRAW_STR.
Referenced by ui_searchbox_autocomplete(), and ui_textedit_begin().
Definition at line 6494 of file interface.cc.
References BLI_strdup(), BLI_strdupn(), uiBut::block, BLT_I18NCONTEXT_DEFAULT, BLT_I18NCONTEXT_DEFAULT_BPYRNA, BLT_is_default_context(), BUT_GET_LABEL, BUT_GET_OP_KEYMAP, BUT_GET_PROP_KEYMAP, BUT_GET_RNA_LABEL, BUT_GET_RNA_LABEL_CONTEXT, BUT_GET_RNA_TIP, BUT_GET_RNAENUM_IDENTIFIER, BUT_GET_RNAENUM_LABEL, BUT_GET_RNAENUM_TIP, BUT_GET_RNAPROP_IDENTIFIER, BUT_GET_RNASTRUCT_IDENTIFIER, BUT_GET_TIP, C, CTX_TIP_, PointerRNA::data, ELEM, uiBut::flag, uiBut::hardmax, PanelType::idname, MenuType::idname, wmOperatorType::idname, PanelType::label, MenuType::label, MEM_freeN, uiBut::opptr, uiBut::optype, ot, wmOperatorType::prop, PROP_ENUM, ptr, PanelType::rna_ext, MenuType::rna_ext, RNA_property_enum_get(), RNA_property_enum_items_gettexted(), RNA_property_identifier(), RNA_property_translation_context(), RNA_property_type(), RNA_property_ui_description(), RNA_property_ui_name(), RNA_struct_contains_property(), RNA_struct_identifier(), RNA_struct_translation_context(), RNA_struct_ui_description(), uiBut::rnapoin, uiBut::rnaprop, ExtensionRNA::srna, wmOperatorType::srna, uiBut::str, uiStringInfo::strinfo, t, uiBut::tip, uiBut::tip_arg, uiBut::tip_func, PanelType::translation_context, MenuType::translation_context, uiStringInfo::type, uiBut::type, type, PointerRNA::type, ui_block_is_menu(), UI_BTYPE_MENU, UI_BTYPE_POPOVER, UI_BTYPE_PULLDOWN, UI_BTYPE_ROW, UI_BTYPE_TAB, ui_but_event_operator_string(), ui_but_event_property_operator_string(), UI_BUT_HAS_SEP_CHAR, UI_but_menutype_get(), UI_but_operator_ptr_get(), UI_but_operatortype_get_from_enum_menu(), UI_but_paneltype_get(), ui_but_value_get(), UI_SEP_CHAR, WM_operator_properties_sanitize(), WM_operatortype_description(), and WM_operatortype_name().
Referenced by ui_popup_context_menu_for_button(), ui_tooltip_data_from_button_or_extra_icon(), and ui_tooltip_data_from_tool().
Definition at line 3098 of file interface.cc.
References BLI_assert, BLI_strncpy(), BLI_strncpy_utf8(), uiBut::block, C, uiBut::custom_data, PointerRNA::data, ELEM, uiBlock::evil_C, blender::math::floor(), uiBut::hardmax, uiBut::hardmin, uiButSearch::item_active, PointerRNA::owner_id, uiBut::poin, PointerRNA_NULL, PROP_ENUM, PROP_POINTER, PROP_STRING, ptr, RNA_pointer_create(), RNA_property_collection_lookup_string(), RNA_property_editable(), RNA_property_enum_set(), RNA_property_enum_value(), RNA_property_pointer_set(), RNA_property_pointer_type(), RNA_property_string_set(), RNA_property_type(), RNA_struct_name_property(), uiBut::rnapoin, uiBut::rnaprop, uiButSearch::rnasearchpoin, uiButSearch::rnasearchprop, str, uiBut::type, type, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TAB, UI_BTYPE_TEXT, ui_but_anim_expression_create(), ui_but_anim_expression_set(), ui_but_is_float(), UI_but_is_utf8(), ui_but_string_eval_number(), ui_but_value_set(), and WM_report_banner_show().
Referenced by ui_apply_but_NUM(), ui_apply_but_TAB(), ui_apply_but_TEX(), ui_but_paste_numeric_value(), and ui_multibut_states_apply().
Definition at line 3072 of file interface.cc.
References BLI_assert, MEM_mallocN, str, uiBut::str, uiBut::strdata, and UI_MAX_NAME_STR.
Referenced by ui_but_update_ex(), and ui_def_but().
Definition at line 4523 of file interface.cc.
References uiBlock::content_hints, uiBut::flag, UI_BLOCK_CONTAINS_SUBMENU_BUT, and UI_BUT_ICON_SUBMENU.
Referenced by ui_def_but_rna(), uiDefIconTextBlockBut(), and uiDefIconTextMenuBut().
Checks if the button supports cycling next/previous menu items (ctrl+mouse-wheel).
Definition at line 2484 of file interface.cc.
References ELEM, uiBut::menu_step_func, uiBut::type, UI_BTYPE_COLOR, UI_BTYPE_LISTBOX, UI_BTYPE_MENU, UI_BTYPE_NUM, UI_BTYPE_NUM_SLIDER, UI_BTYPE_ROW, and ui_but_menu_step_poll().
Referenced by ui_do_but_BLOCK(), and ui_handle_panel_category_cycling().
|
static |
Definition at line 2020 of file interface.cc.
References BLI_rcti_rctf_copy_round(), BLI_rcti_translate(), uiBut::rect, uiBlock::rect, ui_block_to_window_rctf(), ARegion::winrct, rcti::xmin, and rcti::ymin.
|
static |
Referenced by UI_block_draw(), and ui_update_flexible_spacing().
Definition at line 5895 of file interface.cc.
References BLI_assert, uiBut::type, UI_BTYPE_MENU, UI_BTYPE_PULLDOWN, UI_but_drawflag_disable(), UI_but_drawflag_enable(), UI_BUT_TEXT_LEFT, and UI_BUT_TEXT_RIGHT.
Referenced by ui_item_menu(), uiblock_layer_pass_buttons(), uiTemplateNodeLink(), and uiTemplateTextureUser().
int UI_but_unit_type_get | ( | const uiBut * | but | ) |
Definition at line 5939 of file interface.cc.
References if(), RNA_property_subtype(), RNA_SUBTYPE_UNIT, uiBut::rnaprop, and uiBut::unit_type.
Referenced by ui_but_convert_to_unit_alt_name(), ui_but_hide_fraction(), ui_but_is_unit(), ui_but_is_unit_radians(), ui_get_but_scale_unit(), ui_get_but_step_unit(), ui_get_but_string_unit(), ui_number_from_string_units_with_but(), ui_numedit_apply_snapf(), and ui_tooltip_data_from_button_or_extra_icon().
Definition at line 5934 of file interface.cc.
References RNA_SUBTYPE_UNIT_VALUE, and uiBut::unit_type.
Referenced by graph_panel_key_properties(), ui_item_array(), v3d_editvertex_buts(), and v3d_object_dimension_buts().
Definition at line 3900 of file interface.cc.
References ui_but_update_ex().
Referenced by button_activate_exit(), button_activate_state(), ui_block_bounds_calc_text(), UI_block_update_from_old(), ui_but_add_shortcut(), UI_but_func_pushed_state_set(), ui_but_update_and_icon_set(), UI_context_active_but_prop_handle(), ui_do_but_HOTKEYEVT(), ui_do_but_textedit_select(), ui_handle_button_return_submenu(), ui_item_move(), ui_item_position(), ui_layer_but_cb(), ui_numedit_apply(), ui_popup_block_position(), ui_textedit_begin(), ui_textedit_move(), ui_textedit_set_cursor_select(), ui_update_color_picker_buts_rgb(), uiDefBlockBut(), uiDefBlockButN(), uiDefBut(), uiDefButImage(), uiDefButO_ptr(), uiDefButR(), uiDefButR_prop(), uiDefIconBlockBut(), uiDefIconMenuBut(), uiDefIconTextBlockBut(), uiDefIconTextMenuBut(), uiDefMenuBut(), uiDefPulldownBut(), and uiDefSearchBut().
Definition at line 4998 of file interface.cc.
References ui_but_update(), ui_def_but_icon(), and UI_HAS_ICON.
Referenced by uiDefIconBut(), uiDefIconButO_ptr(), uiDefIconButR(), uiDefIconButR_prop(), uiDefIconTextBut(), uiDefIconTextButO_ptr(), uiDefIconTextButR(), and uiDefIconTextButR_prop().
Definition at line 3905 of file interface.cc.
References ui_but_update_ex().
Referenced by ui_apply_but_BLOCK(), ui_apply_but_NUM(), ui_apply_but_ROW(), ui_apply_but_TAB(), ui_apply_but_TEX(), ui_apply_but_TOG(), ui_apply_but_VEC(), ui_do_but_textedit(), and ui_drag_toggle_set_xy_xy().
but | Button to update. |
validate | When set, this function may change the button value. Otherwise treat the button value as read-only. |
Definition at line 3722 of file interface.cc.
References BLI_assert, BLI_rctf_size_x(), BLI_snprintf(), BLI_strcpy_rlen(), BLI_strncpy(), uiBut::block, uiBut::drawflag, uiBut::drawstr, uiBut::editstr, uiBlock::evil_C, uiBut::flag, uiBlock::flag, uiBut::hardmax, uiBut::hardmin, uiBut::icon, EnumPropertyItem::icon, uiBut::iconadd, KM_ALT, KM_CTRL, KM_OSKEY, KM_SHIFT, uiButHotkeyEvent::modifier_key, EnumPropertyItem::name, uiBut::poin, uiBut::pointype, PROP_ENUM, PROP_ICONS_CONSECUTIVE, PROP_ICONS_REVERSE, uiBut::rect, RNA_property_enum_get(), RNA_property_enum_item_from_value_gettexted(), RNA_property_flag(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, uiBut::softmax, uiBut::softmin, str, uiBut::str, uiBut::type, UI_BLOCK_LOOP, UI_BTYPE_HOTKEY_EVENT, UI_BTYPE_HSVCIRCLE, UI_BTYPE_HSVCUBE, UI_BTYPE_ICON_TOGGLE, UI_BTYPE_ICON_TOGGLE_N, UI_BTYPE_KEY_EVENT, UI_BTYPE_LABEL, UI_BTYPE_MENU, UI_BTYPE_NUM, UI_BTYPE_NUM_SLIDER, UI_BTYPE_SCROLL, UI_BTYPE_SEARCH_MENU, UI_BTYPE_TEXT, ui_but_build_drawstr_float(), ui_but_build_drawstr_int(), ui_but_calc_float_precision(), UI_BUT_ICON_REVERSE, ui_but_is_editing(), ui_but_is_float(), UI_BUT_POIN_TYPES, ui_but_range_set_soft(), ui_but_string_free_internal(), ui_but_string_get(), ui_but_string_set_internal(), ui_but_update_select_flag(), ui_but_value_set(), UI_BUT_VALUE_UNSET, UI_GET_BUT_VALUE_INIT, UI_MAX_DRAW_STR, UI_SELECT, UI_UNIT_X, void, and WM_key_event_string().
Referenced by ui_but_update(), and ui_but_update_edited().
|
static |
Definition at line 943 of file interface.cc.
References uiBut::active, BLI_assert, BLI_findindex(), BLI_insertlinkafter(), BLI_listbase_is_empty(), BLI_remlink(), uiBut::block, uiBlock::butstore, uiBlock::buttons, C, uiBut::flag, LIKELY, uiBut::next, uiBlock::oldblock, uiBut::type, UI_ACTIVE, UI_BTYPE_VIEW_ITEM, UI_BUT_DRAG_MULTI, ui_but_equals_old(), ui_but_find_old(), ui_but_free(), ui_but_update_old_active_from_new(), UI_butstore_register_update(), ui_button_group_replace_but_ptr(), and UNUSED_VARS.
Referenced by UI_block_update_from_old().
Update pointers and other information in the old active button based on new information in the corresponding new button from the current layout pass.
oldbut | The button from the last layout pass that will be moved to the new block. |
but | The newly added button with much of the up to date information, to be feed later. |
Definition at line 846 of file interface.cc.
References uiBut::active, uiBut::alignnr, uiButSearch::arg, uiButSearch::arg_free_fn, BLI_assert, BLI_strncpy(), uiBut::context, uiBut::dragpoin, uiBut::drawflag, ELEM, uiBut::extra_op_icons, uiBut::flag, uiBut::func_argN, uiBut::hardmax, uiBut::icon, uiBut::iconadd, uiBut::imb, MEM_freeN, uiBut::poin, uiButProgressbar::progress, uiBut::rect, uiBut::str, uiBut::strdata, SWAP, uiBut::tip_arg, uiBut::tip_arg_free, uiBut::tip_func, uiBut::type, UI_BTYPE_LISTROW, UI_BTYPE_PROGRESS_BAR, UI_BTYPE_ROW, UI_BTYPE_SEARCH_MENU, UI_BTYPE_VIEW_ITEM, ui_but_extra_icons_update_from_old_but(), UI_BUT_REDALERT, UI_HAS_ICON, UI_SELECT_DRAW, and uiButViewItem::view_item.
Referenced by ui_but_update_from_old_block().
Definition at line 2259 of file interface.cc.
References uiBut::flag, ui_but_is_pushed_ex(), and UI_SELECT.
Referenced by ui_but_update_ex(), and ui_but_value_set().
For buttons pointing to color for example.
Definition at line 2291 of file interface.cc.
References Freestyle::a, BLI_assert, copy_v3_v3(), uiBut::editvec, float(), min_ii(), normalize_v3(), uiBut::poin, uiBut::pointype, PROP_FLOAT, RNA_property_array_length(), RNA_property_float_get_array(), RNA_property_float_get_index(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, uiBut::type, UI_BTYPE_UNITVEC, UI_BUT_POIN_CHAR, UI_BUT_POIN_FLOAT, and zero_v3().
Referenced by ui_block_open_begin(), ui_but_copy_color(), ui_but_drag_init(), ui_colorpicker_small_wheel_cb(), ui_do_but_COLOR(), ui_do_but_HSVCIRCLE(), ui_do_but_HSVCUBE(), ui_draw_but_HSV_v(), ui_draw_but_HSVCIRCLE(), ui_draw_but_HSVCUBE(), ui_draw_but_UNITVEC(), ui_numedit_begin(), ui_numedit_but_HSVCIRCLE(), ui_numedit_but_HSVCUBE(), and widget_swatch().
For buttons pointing to color for example.
Definition at line 2338 of file interface.cc.
References Freestyle::a, BLI_assert, copy_v3_v3(), uiBut::editvec, min_ii(), uiBut::poin, uiBut::pointype, PROP_FLOAT, RNA_property_array_length(), RNA_property_float_set_array(), RNA_property_float_set_index(), RNA_property_type(), uiBut::rnapoin, uiBut::rnaprop, UI_BUT_POIN_CHAR, and UI_BUT_POIN_FLOAT.
Referenced by ui_apply_but_VEC(), ui_but_hsv_set(), ui_colorpicker_small_wheel_cb(), ui_do_but_COLOR(), ui_do_but_HSVCIRCLE(), ui_do_but_HSVCUBE(), ui_numedit_but_HSVCIRCLE(), and ui_update_color_picker_buts_rgb().
Extra sanity checks for invariants (debug builds only).
Definition at line 1848 of file interface.cc.
References BLI_assert, ELEM, uiBut::pointype, uiButNumber::step_size, uiBut::type, UI_BTYPE_NUM, UI_BUT_POIN_CHAR, UI_BUT_POIN_INT, and UI_BUT_POIN_SHORT.
Referenced by UI_block_end_ex().
Definition at line 2492 of file interface.cc.
References BLI_assert, PointerRNA::data, uiBut::editval, uiBut::poin, uiBut::pointype, PROP_BOOLEAN, PROP_ENUM, PROP_FLOAT, PROP_INT, RNA_property_array_check(), RNA_property_boolean_get(), RNA_property_boolean_get_index(), RNA_property_enum_get(), RNA_property_float_get(), RNA_property_float_get_index(), RNA_property_int_get(), RNA_property_int_get_index(), RNA_property_type(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, UI_BUT_POIN_CHAR, UI_BUT_POIN_FLOAT, UI_BUT_POIN_INT, and UI_BUT_POIN_SHORT.
Referenced by ui_apply_but_NUM(), ui_apply_but_TOG(), ui_but_drag_start(), ui_but_range_set_soft(), ui_but_string_get_ex(), UI_but_string_info_get(), ui_colorpicker_create_mode_cb(), ui_multibut_add(), ui_numedit_begin_set_values(), widget_numslider(), and widget_scroll().
Definition at line 2557 of file interface.cc.
References uiBut::editval, float(), uiBut::poin, uiBut::pointype, PROP_BOOLEAN, PROP_ENUM, PROP_ENUM_FLAG, PROP_FLOAT, PROP_INT, RNA_property_array_check(), RNA_property_boolean_set(), RNA_property_boolean_set_index(), RNA_property_editable(), RNA_property_enum_get(), RNA_property_enum_set(), RNA_property_flag(), RNA_property_float_set(), RNA_property_float_set_index(), RNA_property_int_set(), RNA_property_int_set_index(), RNA_property_type(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, round_db_to_int_clamp(), round_db_to_short_clamp(), round_db_to_uchar_clamp(), UI_BUT_POIN_CHAR, UI_BUT_POIN_FLOAT, UI_BUT_POIN_INT, UI_BUT_POIN_SHORT, ui_but_update_select_flag(), and UI_BUT_VALUE_UNSET.
Referenced by ui_apply_but_BLOCK(), ui_apply_but_BUTM(), ui_apply_but_NUM(), ui_apply_but_ROW(), ui_apply_but_TAB(), ui_apply_but_TOG(), ui_but_string_set(), ui_but_update_ex(), ui_do_but_HOTKEYEVT(), ui_do_but_KEYEVT(), ui_handle_button_event(), ui_multibut_restore(), and ui_update_color_picker_buts_rgb().
|
static |
ui_def_but is the function that draws many button types
x,y | The lower left hand corner of the button (X axis) |
width,height | The size of the button. |
for float buttons:
a1 | Click Step (how much to change the value each click) |
a2 | Number of decimal point values to display. 0 defaults to 3 (0.000) 1,2,3, and a maximum of 4, all greater values will be clamped to 4. |
Definition at line 4087 of file interface.cc.
References uiBut::a1, uiBut::a2, uiBut::alignnr, uiBlock::alignnr, uiBut::bit, uiBut::bitnr, BLI_addtail(), BLI_assert, uiBut::block, uiBlock::buttons, BUTTYPE, uiBlock::curlayout, uiBut::disabled_info, uiBut::drawflag, ELEM, uiBut::emboss, uiBlock::emboss, uiBut::flag, uiBlock::flag, uiBut::func, uiBlock::func, uiBut::func_arg1, uiBlock::func_arg1, uiBut::func_arg2, uiBlock::func_arg2, uiBut::func_argN, uiBlock::func_argN, uiBut::funcN, uiBlock::funcN, uiBut::hardmax, uiBut::hardmin, height, uiBut::icon, uiBut::iconadd, uiBlock::lock, uiBlock::lockstr, max, MEM_dupallocN, min, uiBut::pie_dir, uiBut::poin, uiBut::pointype, uiBut::pos, uiBut::rect, uiBut::retval, uiBut::softmax, uiBut::softmin, str, uiBut::str, uiBut::tip, uiBut::type, type, ui_block_is_popover(), UI_BLOCK_LOOP, UI_BLOCK_QUICK_SETUP, UI_BLOCK_RADIAL, UI_BTYPE_BLOCK, UI_BTYPE_BUT, UI_BTYPE_BUT_MENU, UI_BTYPE_DECORATOR, UI_BTYPE_GRIP, UI_BTYPE_LABEL, UI_BTYPE_LISTBOX, UI_BTYPE_MENU, UI_BTYPE_NUM, UI_BTYPE_NUM_SLIDER, UI_BTYPE_POPOVER, UI_BTYPE_PULLDOWN, UI_BTYPE_ROUNDBOX, UI_BTYPE_SCROLL, UI_BTYPE_SEARCH_MENU, UI_BTYPE_SEPR, UI_BTYPE_SEPR_LINE, UI_BTYPE_SEPR_SPACER, UI_BTYPE_TEXT, UI_BUT_ALIGN, ui_but_alloc(), ui_but_can_align(), UI_BUT_DISABLED, UI_BUT_ICON_LEFT, UI_BUT_POIN_BIT, UI_BUT_POIN_TYPES, ui_but_string_set_internal(), UI_BUT_TEXT_LEFT, UI_BUT_UNDO, UI_editsource_active_but_test(), UI_editsource_enable_check(), ui_layout_add_but(), UI_MAX_NAME_STR, UI_RADIAL_NONE, width, x, rctf::xmax, rctf::xmin, y, rctf::ymax, and rctf::ymin.
Referenced by ui_def_but_operator_ptr(), ui_def_but_rna(), ui_def_but_rna_propname(), uiDefBlockBut(), uiDefBlockButN(), uiDefBut(), uiDefButImage(), uiDefIconBlockBut(), uiDefIconBut(), uiDefIconMenuBut(), uiDefIconTextBlockBut(), uiDefIconTextBut(), uiDefIconTextMenuBut(), uiDefMenuBut(), uiDefPulldownBut(), and uiDefSearchBut().
Definition at line 4244 of file interface.cc.
References uiBut::block, uiBut::drawflag, uiBlock::evil_C, uiBut::flag, uiBut::icon, uiBut::str, UI_BUT_ICON_LEFT, UI_BUT_ICON_PREVIEW, and ui_icon_ensure_deferred().
Referenced by asset_view_draw_item(), blender::ui::PreviewGridItem::build_grid_tile(), template_add_button_search_menu(), UI_but_drag_set_asset(), UI_but_drag_set_image(), ui_but_update_and_icon_set(), ui_def_but_rna(), ui_icon_view_menu_cb(), uiDefIconBlockBut(), uiDefIconMenuBut(), uiDefIconTextBlockBut(), uiDefIconTextMenuBut(), uiDefSearchBut(), uiTemplateIcon(), and uiTemplateIconView().
Avoid using this where possible since it's better not to ask for an icon in the first place.
Definition at line 4259 of file interface.cc.
References uiBut::drawflag, uiBut::flag, uiBut::icon, UI_BUT_ICON_LEFT, and UI_HAS_ICON.
Referenced by uiItemFullR().
|
static |
Definition at line 4770 of file interface.cc.
References uiBut::flag, wmOperatorType::get_description, height, uiBut::opcontext, uiBut::optype, ot, RNA_struct_ui_description(), wmOperatorType::srna, str, type, UI_but_disable(), UI_BUT_UNDO, ui_def_but(), width, WM_operatortype_name(), x, and y.
Referenced by uiDefButO_ptr(), uiDefIconButO_ptr(), and uiDefIconTextButO_ptr().
|
static |
ui_def_but_rna_propname and ui_def_but_rna both take the same args except for propname vs prop, this is done so we can avoid an extra lookup on 'prop' when its already available.
When this kind of change won't disrupt branches, best look into making more of our UI functions take prop rather than propname.
Definition at line 4537 of file interface.cc.
References uiBut::a1, BLI_assert, uiBut::context, uiBlock::contexts, CTX_IFACE_, CTX_store_add(), PointerRNA::data, ELEM, uiBut::emboss, uiBlock::evil_C, uiBut::flag, free(), height, EnumPropertyItem::icon, ColorManagedDisplay::index, max, MEM_freeN, uiBut::menu_create_func, min, EnumPropertyItem::name, uiBut::poin, PROP_ENUM, PROP_FLOAT, PROP_INT, PROP_POINTER, PROP_STRING, ptr, RNA_enum_from_value(), RNA_property_array_check(), RNA_property_editable_info(), RNA_property_enum_get(), RNA_property_enum_items(), RNA_property_float_range(), RNA_property_float_ui_range(), RNA_property_int_range(), RNA_property_int_ui_range(), RNA_property_pointer_get(), RNA_property_string_maxlength(), RNA_property_translation_context(), RNA_property_type(), RNA_property_ui_description(), RNA_property_ui_icon(), RNA_property_ui_name(), RNA_struct_is_ID(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, uiButNumber::step_size, str, uiBut::type, type, PointerRNA::type, UI_BTYPE_COLOR, UI_BTYPE_HSVCIRCLE, UI_BTYPE_HSVCUBE, UI_BTYPE_LISTROW, UI_BTYPE_MENU, UI_BTYPE_NUM, UI_BTYPE_ROW, UI_BTYPE_SEARCH_MENU, UI_but_disable(), ui_but_is_rna_undo(), ui_but_is_unit(), UI_but_number_precision_set(), UI_but_number_step_size_set(), ui_but_submenu_enable(), UI_BUT_UNDO, ui_def_but(), ui_def_but_icon(), ui_def_but_rna__menu(), UI_EMBOSS_PULLDOWN, ui_get_but_step_unit(), UI_HAS_ICON, width, x, and y.
Referenced by ui_def_but_rna_propname(), uiDefButR_prop(), uiDefIconButR_prop(), and uiDefIconTextButR_prop().
Definition at line 4266 of file interface.cc.
References Freestyle::a, usdtokens::b(), B_NOP, BLI_assert, EnumPropertyItem::description, uiBlock::evil_C, uiBlock::flag, free(), uiBlock::handle, EnumPropertyItem::icon, EnumPropertyItem::identifier, MEM_freeN, EnumPropertyItem::name, uiPopupBlockHandle::retvalue, RNA_property_enum_items_gettexted(), RNA_property_ui_name(), uiBut::rnapoin, uiBut::rnaprop, blender::io::alembic::split(), UI_block_flag_enable(), UI_BLOCK_IS_FLIP, UI_block_layout_set_current(), UI_BLOCK_MOVEMOUSE_QUIT, UI_BLOCK_NO_FLIP, UI_BTYPE_BUT_MENU, UI_BTYPE_LABEL, UI_UNIT_X, UI_UNIT_Y, uiDefBut(), uiDefButI(), uiDefIconTextButI(), uiItemL(), uiItemS(), uiLayoutColumn(), uiLayoutGetBlock(), uiLayoutSplit(), and EnumPropertyItem::value.
Referenced by ui_but_event_property_operator_string(), ui_but_rna_menu_convert_to_menu_type(), and ui_def_but_rna().
Definition at line 4499 of file interface.cc.
References C, uiBut::func_argN, SNPRINTF, TIP_, ui_item_menutype_func(), uiItemL(), and WM_menutype_find().
|
static |
Referenced by ui_but_event_property_operator_string(), and ui_but_rna_menu_convert_to_menu_type().
Definition at line 4470 of file interface.cc.
References C, uiBut::func_argN, SNPRINTF, TIP_, ui_item_paneltype_func(), uiItemL(), and WM_paneltype_find().
|
static |
Definition at line 4736 of file interface.cc.
References height, ColorManagedDisplay::index, max, min, ptr, RNA_struct_find_property(), str, type, UI_but_disable(), ui_def_but(), ui_def_but_rna(), width, x, and y.
Referenced by uiDefButR(), uiDefIconButR(), and uiDefIconTextButR().
Definition at line 6787 of file interface.cc.
References ui_but_clipboard_free(), and ui_resources_free().
Referenced by WM_exit_ex().
Definition at line 2014 of file interface.cc.
Referenced by UI_block_draw(), UI_fontstyle_string_width_with_block_aspect(), UI_panel_category_draw_all(), ui_searchbox_create_generic_ex(), ui_textedit_set_cursor_pos(), and ui_tooltip_create_with_data().
Definition at line 2677 of file interface.cc.
References BKE_scene_unit_scale(), uiBut::block, CTX_data_scene(), uiBlock::evil_C, FRA2TIME, PROP_UNIT_TIME, RNA_SUBTYPE_UNIT_VALUE, scene, UI_but_unit_type_get(), and uiBlock::unit.
Referenced by ui_get_but_step_unit(), and ui_get_but_string_unit().
Definition at line 2745 of file interface.cc.
References BKE_unit_closest_scalar(), BLI_assert, uiBut::block, RNA_SUBTYPE_UNIT_VALUE, UnitSettings::system, UI_but_unit_type_get(), ui_get_but_scale_unit(), UI_PRECISION_FLOAT_SCALE, and uiBlock::unit.
Referenced by ui_def_but_rna().
|
static |
float_precision | Override the button precision. |
Definition at line 2710 of file interface.cc.
References BKE_unit_value_as_string(), uiBut::block, pad, RNA_SUBTYPE_UNIT_VALUE, UnitSettings::scale_length, str, ui_but_get_float_precision(), UI_but_unit_type_get(), ui_get_but_scale_unit(), UI_PRECISION_FLOAT_MAX, and uiBlock::unit.
Referenced by ui_but_build_drawstr_float(), and ui_but_string_get_ex().
Definition at line 6771 of file interface.cc.
References ui_resources_init().
Referenced by WM_init().
Definition at line 6776 of file interface.cc.
References uiStyleInit().
Referenced by wm_init_userdef().
Definition at line 6793 of file interface.cc.
References ui_interface_tag_script_reload_queries().
Referenced by WM_script_tag_reload().
Definition at line 1124 of file interface.cc.
References uiBlock::buttons, ELEM, LISTBASE_FOREACH, uiBlock::rect, UI_BTYPE_BLOCK, UI_BTYPE_BUT, UI_BTYPE_BUT_MENU, UI_BTYPE_MENU, UI_BTYPE_PULLDOWN, UI_BTYPE_ROW, UI_HIDDEN, rctf::xmax, and rctf::xmin.
Referenced by UI_block_end_ex().
Definition at line 1564 of file interface.cc.
References BLI_assert, uiBlock::buttons, C, uiBlock::flag, LISTBASE_FOREACH, uiBlock::name, uiBlock::rect, STREQ, UI_BLOCK_LOOP, UI_BLOCK_POPOVER, UI_BLOCK_RADIAL, UI_BLOCK_SHOW_SHORTCUT_ALWAYS, ui_but_add_shortcut(), ui_but_event_operator_string(), ui_but_event_property_operator_string(), UI_but_is_tool(), ui_but_pie_direction_string(), UI_EMBOSS_PULLDOWN, UI_RADIAL_NONE, rctf::xmax, and rctf::xmin.
Referenced by UI_block_end_ex().
Definition at line 2997 of file interface.cc.
References BPY_run_string_as_number(), C, CTX_wm_reports(), BPy_RunErrInfo::report_prefix, BPy_RunErrInfo::reports, str, UI_NUMBER_EVAL_ERROR_PREFIX, and UNUSED_VARS.
Referenced by ui_but_string_eval_number(), ui_number_from_string_factor(), and ui_number_from_string_percentage().
|
static |
Definition at line 3013 of file interface.cc.
References BLI_strdupn(), BLI_strn_endswith(), C, len, MEM_freeN, str, ui_number_from_string(), and USER_FACTOR_AS_PERCENTAGE.
Referenced by ui_but_string_eval_number().
|
static |
Definition at line 3032 of file interface.cc.
References BLI_strdupn(), BLI_strn_endswith(), C, len, MEM_freeN, str, and ui_number_from_string().
Referenced by ui_but_string_eval_number().
|
static |
Definition at line 2974 of file interface.cc.
References BKE_reportf(), C, CTX_wm_reports(), error(), MEM_freeN, RPT_ERROR, str, UI_NUMBER_EVAL_ERROR_PREFIX, and user_string_to_number().
Referenced by ui_number_from_string_units_with_but().
|
static |
Definition at line 2987 of file interface.cc.
References uiBut::block, C, RNA_SUBTYPE_UNIT_VALUE, str, UI_but_unit_type_get(), ui_number_from_string_units(), and uiBlock::unit.
Referenced by ui_but_string_eval_number().
int UI_preview_tile_size_x | ( | void | ) |
A decent size for a button (typically UI_BTYPE_PREVIEW_TILE) to display a nicely readable preview with label in.
Definition at line 4973 of file interface.cc.
References pad, PREVIEW_TILE_PAD, round_fl_to_int(), and UI_UNIT_X.
Referenced by ui_template_list_layout_draw().
int UI_preview_tile_size_y | ( | void | ) |
Definition at line 4979 of file interface.cc.
References pad, uiFontStyle::points, PREVIEW_TILE_PAD, round_fl_to_int(), UI_DPI_FAC, UI_preview_tile_size_y_no_label(), UI_style_get(), and uiStyle::widget.
Referenced by ui_template_list_layout_draw().
int UI_preview_tile_size_y_no_label | ( | void | ) |
Definition at line 4990 of file interface.cc.
References pad, PREVIEW_TILE_PAD, round_fl_to_int(), and UI_UNIT_Y.
Referenced by UI_preview_tile_size_y(), and ui_template_list_layout_draw().
Definition at line 2147 of file interface.cc.
References LISTBASE_FOREACH, ui_block_message_subscribe(), and ARegion::uiblocks.
Referenced by ED_region_message_subscribe().
Definition at line 261 of file interface.cc.
References ARegion::winrct, rcti::xmin, and rcti::ymin.
Popups will add a margin to ARegion.winrct for shadow, for interactivity (point-inside tests for eg), we want the winrct without the margin added.
Definition at line 342 of file interface.cc.
References BLI_rcti_rctf_copy_floor(), BLI_rcti_translate(), ListBase::first, uiBlock::flag, uiBlock::rect, UI_BLOCK_LOOP, UI_BLOCK_RADIAL, ARegion::uiblocks, ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by ui_region_contains_point_px(), ui_region_contains_rect_px(), and ui_screen_region_find_mouse_over_ex().
Definition at line 6782 of file interface.cc.
References uiStyleInit().
Referenced by reloadtranslation_exec().
Definition at line 267 of file interface.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BLI_rctf_translate(), uiBlock::buttons, float(), ListBase::last, LISTBASE_FOREACH, min_ff(), offset, ARegion::sizex, ui_block_bounds_calc(), UI_BTYPE_SEPR_SPACER, ui_but_to_pixelrect(), UI_HEADER_OFFSET, UI_view2d_scale_get_x(), ARegion::v2d, and rcti::xmax.
Referenced by UI_block_end_ex().
|
static |
Definition at line 322 of file interface.cc.
References uiBlock::aspect, fabsf, GPU_matrix_projection_get, height, ARegion::visible, width, uiBlock::winmat, ARegion::winx, WM_window_pixels_x(), WM_window_pixels_y(), and wmGetProjectionMatrix().
Referenced by UI_block_begin(), and UI_blocklist_update_window_matrix().
Definition at line 228 of file interface.cc.
References ui_window_to_block_fl().
Referenced by ui_but_contains_point_px_icon(), ui_but_extra_operator_icon_mouse_over_get(), ui_do_but_COLORBAND(), ui_do_but_CURVE(), ui_do_but_CURVEPROFILE(), ui_do_but_GRIP(), ui_do_but_HISTOGRAM(), ui_do_but_HSVCIRCLE(), ui_do_but_HSVCUBE(), ui_do_but_NUM(), ui_do_but_SCROLL(), ui_do_but_SLI(), ui_do_but_textedit_select(), ui_do_but_TRACKPREVIEW(), ui_do_but_UNITVEC(), ui_do_but_WAVEFORM(), ui_handle_list_event(), ui_handle_menu_event(), ui_handle_menus_recursive(), ui_handler_panel_region(), ui_numedit_but_CURVE(), ui_numedit_but_CURVEPROFILE(), ui_numedit_set_active(), and UI_region_panel_custom_data_under_cursor().
Definition at line 191 of file interface.cc.
References Freestyle::a, usdtokens::b(), BLI_rcti_size_x(), BLI_rcti_size_y(), Freestyle::c, e, float(), Panel::ofsx, Panel::ofsy, uiBlock::panel, sx, sy, uiBlock::winmat, ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by ui_block_find_mouse_over_ex(), ui_but_contains_point_px(), ui_but_find_mouse_over_ex(), ui_do_but_textedit(), ui_drag_toggle_set_xy_xy(), ui_draw_popover_back(), ui_list_find_mouse_over_ex(), ui_multibut_states_tag(), ui_panel_drag_collapse(), ui_pie_handler(), ui_search_menu_create_tooltip(), ui_window_to_block(), and ui_window_to_block_rctf().
void ui_window_to_block_rctf | ( | const struct ARegion * | region, |
uiBlock * | block, | ||
rctf * | rct_dst, | ||
const rctf * | rct_src | ||
) |
Definition at line 218 of file interface.cc.
References ui_window_to_block_fl(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ui_but_find_rect_over().
Definition at line 239 of file interface.cc.
References ARegion::winrct, rcti::xmin, and rcti::ymin.
Referenced by ui_region_contains_point_px().
Definition at line 253 of file interface.cc.
References ARegion::winrct, rctf::xmax, rcti::xmin, rctf::xmin, rctf::ymax, rcti::ymin, and rctf::ymin.
Definition at line 245 of file interface.cc.
References ARegion::winrct, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by ui_region_contains_rect_px().
uiBut* uiDefBlockBut | ( | uiBlock * | block, |
uiBlockCreateFunc | func, | ||
void * | arg, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6046 of file interface.cc.
References uiBut::block_create_func, height, str, UI_BTYPE_BLOCK, ui_but_update(), ui_def_but(), width, x, and y.
Referenced by CurveProfile_buttons_layout(), and ui_popup_context_menu_for_button().
uiBut* uiDefBlockButN | ( | uiBlock * | block, |
uiBlockCreateFunc | func, | ||
void * | argN, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6063 of file interface.cc.
References uiBut::block_create_func, uiBut::func_argN, height, MEM_freeN, str, UI_BTYPE_BLOCK, ui_but_update(), ui_def_but(), width, x, and y.
Referenced by template_add_button_search_menu(), uiTemplateComponentMenu(), and uiTemplateIconView().
uiBut* uiDefBut | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
void * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 4806 of file interface.cc.
References height, max, min, str, type, ui_but_update(), ui_def_but(), width, x, and y.
Referenced by blender::ui::AbstractViewItem::add_rename_button(), blender::ui::PreviewGridItem::build_grid_tile(), colorband_buttons_layout(), blender::ed::space_node::create_search_popup_block(), curvemap_buttons_layout(), CurveProfile_buttons_layout(), draw_channel_labels(), envelope_panel_draw(), file_draw_list(), file_draw_preview(), merged_element_search_menu(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_extra_info_row(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_find_menu(), outliner_buttons(), outliner_draw_overrides_rna_buts(), outliner_draw_userbuts(), blender::ed::space_node::reroute_node_draw(), template_common_search_menu(), template_ID(), ui_block_colorpicker(), ui_def_but_rna__menu(), ui_imageuser_layer_menu(), ui_imageuser_pass_menu(), ui_imageuser_slot_menu(), ui_imageuser_view_menu_multiview(), ui_imageuser_view_menu_rr(), ui_item_array(), ui_item_disabled(), ui_item_with_label(), ui_layout_add_padding_button(), ui_layout_box(), blender::ed::space_node::ui_node_menu_column(), UI_pie_menu_begin(), UI_popup_menu_begin_ex(), ui_template_list_layout_draw(), blender::ed::space_node::ui_template_node_link_menu(), uiDefAutoButR(), uiDefButBit(), uiDefButC(), uiDefButF(), uiDefButI(), uiDefButS(), uiItemFullR(), uiItemL_(), uiItemS_ex(), uiItemsFullEnumO_items(), uiItemSpacer(), uiTemplateHistogram(), uiTemplateMarker(), uiTemplateMovieClip(), uiTemplateNodeSocket(), uiTemplatePreview(), uiTemplateReportsBanner(), uiTemplateStatusInfo(), uiTemplateTrack(), uiTemplateVectorscope(), uiTemplateWaveform(), v3d_editvertex_buts(), v3d_object_dimension_buts(), wm_block_dialog_create(), wm_block_search_menu(), wm_block_splash_add_label(), and wm_enum_search_menu().
Definition at line 4847 of file interface.cc.
References height, uiWidgetColors::text, bTheme::tui, UI_GetTheme(), UI_icon_alert_imbuf_get(), uiDefButImage(), ThemeUI::wcol_menu_back, width, x, and y.
Referenced by uiItemsAlertBox().
|
static |
Definition at line 5007 of file interface.cc.
References findBitIndex(), height, max, min, str, type, UI_BUT_POIN_BIT, uiDefBut(), width, x, and y.
Referenced by uiDefButBitC(), uiDefButBitI(), and uiDefButBitS().
uiBut* uiDefButBitC | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
char * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5226 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_CHAR, uiDefButBit(), width, x, and y.
Referenced by block_create__close_file_dialog().
uiBut* uiDefButBitI | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
int * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5102 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_INT, uiDefButBit(), width, x, and y.
Referenced by curvemap_clipping_func(), and uiTemplateMarker().
uiBut* uiDefButBitS | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
short * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5164 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_SHORT, uiDefButBit(), width, x, and y.
Referenced by v3d_editvertex_buts().
uiBut* uiDefButC | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
char * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5196 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_CHAR, uiDefBut(), width, x, and y.
Referenced by ui_block_colorpicker().
uiBut* uiDefButF | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
float * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5042 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_FLOAT, uiDefBut(), width, x, and y.
Referenced by curvemap_buttons_layout(), curvemap_clipping_func(), CurveProfile_buttons_layout(), ui_block_colorpicker(), uiTemplateMarker(), uvedit_vertex_buttons(), v3d_editvertex_buts(), v3d_object_dimension_buts(), and view3d_panel_vgroup().
uiBut* uiDefButI | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
int * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5072 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_INT, uiDefBut(), width, x, and y.
Referenced by curvemap_buttons_layout(), ui_def_but_rna__menu(), ui_template_list_layout_draw(), and uiItemV().
uiBut* uiDefButImage | ( | uiBlock * | block, |
void * | imbuf, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const uchar | color[4] | ||
) |
Definition at line 4829 of file interface.cc.
References uiBut::col, color, copy_v4_v4_uchar(), height, UI_BTYPE_IMAGE, ui_but_update(), ui_def_but(), width, x, and y.
Referenced by uiDefButAlert(), wm_block_create_about(), and wm_block_create_splash().
uiBut* uiDefButO | ( | uiBlock * | block, |
int | type, | ||
const char * | opname, | ||
wmOperatorCallContext | opcontext, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5318 of file interface.cc.
References height, ot, str, type, uiDefButO_ptr(), width, WM_operatortype_find(), x, and y.
Referenced by uiTemplateReportsBanner().
uiBut* uiDefButO_ptr | ( | uiBlock * | block, |
int | type, | ||
wmOperatorType * | ot, | ||
wmOperatorCallContext | opcontext, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5303 of file interface.cc.
References height, ot, str, type, ui_but_update(), ui_def_but_operator_ptr(), width, x, and y.
Referenced by uiDefButO(), uiItemFullO_ptr_ex(), and view3d_panel_vgroup().
uiBut* uiDefButR | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
const char * | propname, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5258 of file interface.cc.
References height, max, min, ptr, str, type, ui_but_update(), ui_def_but_rna_propname(), width, x, and y.
Referenced by ANIM_channel_draw_widgets(), draw_channel_labels(), ED_area_header_switchbutton(), ED_file_path_button(), file_panel_execution_buttons_draw(), graph_panel_key_properties(), template_ID(), uiTemplatePalette(), and v3d_editvertex_buts().
uiBut* uiDefButR_prop | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
PropertyRNA * | prop, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5280 of file interface.cc.
References height, max, min, ptr, str, type, ui_but_update(), ui_def_but_rna(), width, x, and y.
Referenced by template_ID_tabs(), ui_block_colorpicker(), ui_colorpicker_circle(), ui_colorpicker_square(), ui_item_array(), ui_item_enum_expand_elem_exec(), ui_item_with_label(), ui_template_list_layout_draw(), uiDefAutoButR(), uiItemFullR(), and uiTemplateColorPicker().
uiBut* uiDefButS | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
short * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5134 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_SHORT, uiDefBut(), width, x, and y.
Referenced by colorband_buttons_layout(), ui_imageuser_layer_menu(), ui_imageuser_pass_menu(), ui_imageuser_slot_menu(), ui_imageuser_view_menu_multiview(), ui_imageuser_view_menu_rr(), and uiTemplatePreview().
uiBut* uiDefIconBlockBut | ( | uiBlock * | block, |
uiBlockCreateFunc | func, | ||
void * | arg, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Block button containing icon.
Definition at line 6193 of file interface.cc.
References uiBut::block_create_func, uiBut::drawflag, height, UI_BTYPE_BLOCK, UI_BUT_ICON_LEFT, ui_but_update(), ui_def_but(), ui_def_but_icon(), UI_HAS_ICON, width, x, and y.
Referenced by colorband_buttons_layout(), curvemap_buttons_layout(), and CurveProfile_buttons_layout().
uiBut* uiDefIconBut | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
void * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
If a1==1.0 then a2 is an extra icon blending factor (alpha 0.0 - 1.0).
Definition at line 5336 of file interface.cc.
References height, max, min, type, ui_but_update_and_icon_set(), ui_def_but(), width, x, and y.
Referenced by curvemap_buttons_layout(), CurveProfile_buttons_layout(), envelope_panel_draw(), file_draw_icon(), fmodifier_panel_header(), graph_draw_driver_settings_panel(), blender::ed::space_node::node_add_error_message_button(), blender::ed::space_node::node_draw_basis(), blender::ed::space_node::node_draw_extra_info_row(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_socket_draw_nested(), outliner_draw_mode_column_toggle(), outliner_draw_warning_tree_element(), template_ID(), tselem_draw_icon(), uiDefIconButBit(), uiDefIconButI(), uiDefIconButS(), uiItemDecoratorR_prop(), uiItemL_(), uiItemsFullEnumO_items(), uiTemplateIcon(), uiTemplateIconView(), uiTemplateStatusInfo(), and uiTemplateTextureShow().
|
static |
Definition at line 5356 of file interface.cc.
References findBitIndex(), height, max, min, type, UI_BUT_POIN_BIT, uiDefIconBut(), width, x, and y.
Referenced by uiDefIconButBitC(), uiDefIconButBitI(), and uiDefIconButBitS().
uiBut* uiDefIconButBitC | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
char * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5516 of file interface.cc.
References height, max, min, type, UI_BUT_POIN_CHAR, uiDefIconButBit(), width, x, and y.
Referenced by draw_setting_widget().
uiBut* uiDefIconButBitI | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
int * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5422 of file interface.cc.
References height, max, min, type, UI_BUT_POIN_INT, uiDefIconButBit(), width, x, and y.
Referenced by draw_setting_widget(), modifier_panel_header(), outliner_draw_restrictbuts(), ui_template_list_layout_draw(), and uiTemplateMarker().
uiBut* uiDefIconButBitS | ( | uiBlock * | block, |
int | type, | ||
int | bit, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
short * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5484 of file interface.cc.
References height, max, min, type, UI_BUT_POIN_SHORT, uiDefIconButBit(), width, x, and y.
Referenced by draw_setting_widget(), outliner_draw_restrictbuts(), and outliner_draw_userbuts().
uiBut* uiDefIconButI | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
int * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5392 of file interface.cc.
References height, max, min, type, UI_BUT_POIN_INT, uiDefIconBut(), width, x, and y.
Referenced by ui_template_list_layout_draw(), uiItemV(), uiTemplateHistogram(), uiTemplateTrack(), uiTemplateVectorscope(), and uiTemplateWaveform().
uiBut* uiDefIconButO | ( | uiBlock * | block, |
int | type, | ||
const char * | opname, | ||
wmOperatorCallContext | opcontext, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5608 of file interface.cc.
References height, ot, type, uiDefIconButO_ptr(), width, WM_operatortype_find(), x, and y.
Referenced by ANIM_channel_draw_widgets(), outliner_draw_overrides_restrictbuts(), template_ID(), template_keymap_item_properties(), template_search_add_button_operator(), ui_block_colorpicker(), ui_item_with_label(), uiTemplatePalette(), and uiTemplateReportsBanner().
uiBut* uiDefIconButO_ptr | ( | uiBlock * | block, |
int | type, | ||
wmOperatorType * | ot, | ||
wmOperatorCallContext | opcontext, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5593 of file interface.cc.
References height, ot, type, ui_but_update_and_icon_set(), ui_def_but_operator_ptr(), width, x, and y.
Referenced by uiDefIconButO(), uiDefIconTextButO(), and uiItemFullO_ptr_ex().
uiBut* uiDefIconButR | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
const char * | propname, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5548 of file interface.cc.
References height, max, min, ptr, type, ui_but_update_and_icon_set(), ui_def_but_rna_propname(), width, x, and y.
Referenced by template_ID().
uiBut* uiDefIconButR_prop | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
PropertyRNA * | prop, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5570 of file interface.cc.
References height, max, min, ptr, type, ui_but_update_and_icon_set(), ui_def_but_rna(), width, x, and y.
Referenced by clip_draw_dopesheet_channels(), draw_channel_widget_lock(), draw_channel_widget_mute(), outliner_draw_restrictbuts(), ui_icon_view_menu_cb(), ui_item_enum_expand_elem_exec(), uiDefAutoButR(), and uiItemFullR().
uiBut* uiDefIconButS | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
short * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5454 of file interface.cc.
References height, max, min, type, UI_BUT_POIN_SHORT, uiDefIconBut(), width, x, and y.
Referenced by uiTemplatePreview().
uiBut* uiDefIconMenuBut | ( | uiBlock * | block, |
uiMenuCreateFunc | func, | ||
void * | arg, | ||
int | icon, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6143 of file interface.cc.
References uiBut::drawflag, height, uiBut::menu_create_func, UI_BTYPE_PULLDOWN, UI_BUT_ICON_LEFT, ui_but_update(), ui_def_but(), ui_def_but_icon(), UI_HAS_ICON, width, x, and y.
Referenced by ui_item_menu(), uiTemplateNodeLink(), and uiTemplatePalette().
uiBut* uiDefIconTextBlockBut | ( | uiBlock * | block, |
uiBlockCreateFunc | func, | ||
void * | arg, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Block button containing both string label and icon.
Definition at line 6165 of file interface.cc.
References uiBut::block_create_func, uiBut::drawflag, uiBut::flag, height, str, UI_BTYPE_BLOCK, UI_BUT_ICON_LEFT, ui_but_submenu_enable(), ui_but_update(), ui_def_but(), ui_def_but_icon(), UI_HAS_ICON, width, x, and y.
uiBut* uiDefIconTextBut | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
void * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5623 of file interface.cc.
References uiBut::drawflag, height, max, min, str, type, UI_BUT_ICON_LEFT, ui_but_update_and_icon_set(), ui_def_but(), width, x, and y.
Referenced by asset_view_draw_item(), block_create_autorun_warning(), colorband_buttons_layout(), colorband_tools_func(), curvemap_tools_func(), CurveProfile_buttons_layout(), CurveProfile_presets_func(), CurveProfile_tools_func(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_content_cell(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_left_column_cell(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_top_row_cell(), graph_draw_driver_settings_panel(), save_file_forwardcompat_cancel_button(), save_file_forwardcompat_overwrite_button(), save_file_forwardcompat_saveas_button(), template_ID(), template_id_def_new_but(), template_operator_property_buts_draw_single(), template_texture_user_menu(), blender::ed::space_node::ui_node_menu_column(), UI_pie_menu_begin(), ui_pie_menu_level_create(), ui_popup_context_menu_for_button(), UI_popup_menu_begin_ex(), uiDefIconTextButF(), uiDefIconTextButI(), uiItemL_(), uiTemplateRunningJobs(), wm_block_file_close_cancel_button(), wm_block_file_close_discard_button(), and wm_block_file_close_save_button().
uiBut* uiDefIconTextButF | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
float * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5645 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_FLOAT, uiDefIconTextBut(), width, x, and y.
uiBut* uiDefIconTextButI | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
int * | poin, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5677 of file interface.cc.
References height, max, min, str, type, UI_BUT_POIN_INT, uiDefIconTextBut(), width, x, and y.
Referenced by ui_def_but_rna__menu(), and uiItemV().
uiBut* uiDefIconTextButO | ( | uiBlock * | block, |
int | type, | ||
const char * | opname, | ||
wmOperatorCallContext | opcontext, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5774 of file interface.cc.
References height, ot, str, type, uiDefIconButO_ptr(), uiDefIconTextButO_ptr(), width, WM_operatortype_find(), x, and y.
Referenced by file_draw_invalid_asset_library_hint(), template_ID(), template_id_def_new_but(), and uiTemplateCryptoPicker().
uiBut* uiDefIconTextButO_ptr | ( | uiBlock * | block, |
int | type, | ||
wmOperatorType * | ot, | ||
wmOperatorCallContext | opcontext, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 5757 of file interface.cc.
References uiBut::drawflag, height, ot, str, type, UI_BUT_ICON_LEFT, ui_but_update_and_icon_set(), ui_def_but_operator_ptr(), width, x, and y.
Referenced by uiDefIconTextButO(), and uiItemFullO_ptr_ex().
uiBut* uiDefIconTextButR | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
const char * | propname, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5709 of file interface.cc.
References uiBut::drawflag, height, max, min, ptr, str, type, UI_BUT_ICON_LEFT, ui_but_update_and_icon_set(), ui_def_but_rna_propname(), width, x, and y.
Referenced by add_attribute_search_button(), and blender::ed::space_node::node_geometry_add_attribute_search_button().
uiBut* uiDefIconTextButR_prop | ( | uiBlock * | block, |
int | type, | ||
int | retval, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
PointerRNA * | ptr, | ||
PropertyRNA * | prop, | ||
int | index, | ||
float | min, | ||
float | max, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Definition at line 5733 of file interface.cc.
References uiBut::drawflag, height, max, min, ptr, str, type, UI_BUT_ICON_LEFT, ui_but_update_and_icon_set(), ui_def_but_rna(), width, x, and y.
Referenced by ui_icon_view_menu_cb(), ui_item_enum_expand_elem_exec(), ui_template_list_layout_draw(), uiDefAutoButR(), and uiItemFullR().
uiBut* uiDefIconTextMenuBut | ( | uiBlock * | block, |
uiMenuCreateFunc | func, | ||
void * | arg, | ||
int | icon, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6118 of file interface.cc.
References uiBut::drawflag, height, uiBut::menu_create_func, str, UI_BTYPE_PULLDOWN, UI_BUT_ICON_LEFT, ui_but_submenu_enable(), ui_but_update(), ui_def_but(), ui_def_but_icon(), UI_HAS_ICON, width, x, and y.
Referenced by ui_item_menu(), and uiTemplateTextureUser().
uiBut* uiDefMenuBut | ( | uiBlock * | block, |
uiMenuCreateFunc | func, | ||
void * | arg, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6101 of file interface.cc.
References height, uiBut::menu_create_func, str, UI_BTYPE_PULLDOWN, ui_but_update(), ui_def_but(), width, x, and y.
Referenced by ui_item_menu(), uiblock_layer_pass_buttons(), uiTemplateNodeLink(), and uiTemplateTextureUser().
uiBut* uiDefPulldownBut | ( | uiBlock * | block, |
uiBlockCreateFunc | func, | ||
void * | arg, | ||
const char * | str, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
const char * | tip | ||
) |
Definition at line 6084 of file interface.cc.
References uiBut::block_create_func, height, str, UI_BTYPE_PULLDOWN, ui_but_update(), ui_def_but(), width, x, and y.
uiBut* uiDefSearchBut | ( | uiBlock * | block, |
void * | arg, | ||
int | retval, | ||
int | icon, | ||
int | maxlen, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
arg | A pointer to string/name, use UI_but_func_search_set() below to make this work. here a1 and a2 , if set, control thumbnail preview rows/cols. |
Definition at line 6217 of file interface.cc.
References uiBut::drawflag, height, UI_BTYPE_SEARCH_MENU, UI_BUT_ICON_LEFT, UI_BUT_TEXT_LEFT, ui_but_update(), ui_def_but(), ui_def_but_icon(), UI_HAS_ICON, width, x, and y.
Referenced by blender::ed::space_node::create_search_popup_block(), merged_element_search_menu(), blender::ed::space_node::node_find_menu(), template_common_search_menu(), uiDefSearchButO_ptr(), uiTemplateMenuSearch(), uiTemplateOperatorSearch(), and wm_block_search_menu().
uiBut* uiDefSearchButO_ptr | ( | uiBlock * | block, |
struct wmOperatorType * | ot, | ||
struct IDProperty * | properties, | ||
void * | arg, | ||
int | retval, | ||
int | icon, | ||
int | maxlen, | ||
int | x, | ||
int | y, | ||
short | width, | ||
short | height, | ||
float | a1, | ||
float | a2, | ||
const char * | tip | ||
) |
Same parameters as for uiDefSearchBut, with additional operator type and properties, used by callback to call again the right op with the right options (properties values).
Definition at line 6406 of file interface.cc.
References PointerRNA::data, height, IDP_CopyProperty(), uiBut::opcontext, operator_enum_search_exec_fn(), operator_enum_search_update_fn(), uiBut::optype, ot, ptr, UI_but_func_search_set(), UI_but_operator_ptr_get(), ui_searchbox_create_generic(), uiDefSearchBut(), width, WM_OP_EXEC_DEFAULT, x, and y.
Referenced by wm_enum_search_menu().
const char ui_radial_dir_order[8] |
This goes in a seemingly weird pattern:
4 5 6 1 2 7 8 3
but it's actually quite logical. It's designed to be 'upwards compatible' for muscle memory so that the menu item locations are fixed and don't move as new items are added to the menu later on. It also optimizes efficiency - a radial menu is best kept symmetrical, with as large an angle between items as possible, so that the gestural mouse movements can be fast and inexact.
It starts off with two opposite sides for the first two items then joined by the one below for the third (this way, even with three items, the menu seems to still be 'in order' reading left to right). Then the fourth is added to complete the compass directions. From here, it's just a matter of subdividing the rest of the angles for the last 4 items.
–Matt 07/2006
Definition at line 1544 of file interface.cc.
Referenced by ui_get_radialbut_vec().
const short ui_radial_dir_to_angle[8] = {90, 45, 0, 315, 270, 225, 180, 135} |
Definition at line 1556 of file interface.cc.
Referenced by ui_but_pie_dir().
const char ui_radial_dir_to_numpad[8] = {8, 9, 6, 3, 2, 1, 4, 7} |
Definition at line 1555 of file interface.cc.
Referenced by ui_but_pie_direction_string().