Commit: 59cd616534b46ab85b4324a0886bd9eb8876a48b Author: Julian Eisel Date: Wed May 11 17:05:24 2022 +0200 Branches: master https://developer.blender.org/rB59cd616534b46ab85b4324a0886bd9eb8876a48b
UI: Update rest of UI code for increased button flag bitfield Needed after 98a04ed45242. =================================================================== M source/blender/editors/include/UI_interface.h M source/blender/editors/interface/interface.cc M source/blender/editors/interface/interface_anim.c M source/blender/editors/interface/interface_intern.h M source/blender/editors/interface/interface_layout.c M source/blender/editors/interface/interface_query.cc M source/blender/editors/interface/interface_region_search.cc M source/blender/editors/interface/interface_template_search_menu.cc M source/blender/editors/interface/interface_utils.cc M source/blender/editors/interface/interface_widgets.c M source/blender/editors/interface/view2d.cc =================================================================== diff --git a/source/blender/editors/include/UI_interface.h b/source/blender/editors/include/UI_interface.h index 301171a284d..0b507c6a4ab 100644 --- a/source/blender/editors/include/UI_interface.h +++ b/source/blender/editors/include/UI_interface.h @@ -462,7 +462,7 @@ enum { void UI_draw_widget_scroll(struct uiWidgetColors *wcol, const struct rcti *rect, const struct rcti *slider, - int state); + uint64_t state); /** * Shortening string helper. @@ -887,9 +887,9 @@ uiBut *UI_but_active_drop_name_button(const struct bContext *C); bool UI_but_active_drop_name(const struct bContext *C); bool UI_but_active_drop_color(struct bContext *C); -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_flag_enable(uiBut *but, uint64_t flag); +void UI_but_flag_disable(uiBut *but, uint64_t flag); +bool UI_but_flag_is_set(uiBut *but, uint64_t flag); void UI_but_drawflag_enable(uiBut *but, int flag); void UI_but_drawflag_disable(uiBut *but, int flag); @@ -1682,7 +1682,7 @@ bool UI_search_item_add(uiSearchItems *items, const char *name, void *poin, int iconid, - int state, + uint64_t state, uint8_t name_prefix_offset); /** diff --git a/source/blender/editors/interface/interface.cc b/source/blender/editors/interface/interface.cc index b7098c26bcd..effd3a64fcd 100644 --- a/source/blender/editors/interface/interface.cc +++ b/source/blender/editors/interface/interface.cc @@ -848,7 +848,7 @@ static void ui_but_update_old_active_from_new(uiBut *oldbut, uiBut *but) BLI_assert(oldbut->active); /* flags from the buttons we want to refresh, may want to add more here... */ - const int flag_copy = UI_BUT_REDALERT | UI_HAS_ICON | UI_SELECT_DRAW; + const uint64_t flag_copy = UI_BUT_REDALERT | UI_HAS_ICON | UI_SELECT_DRAW; const int drawflag_copy = 0; /* None currently. */ /* still stuff needs to be copied */ @@ -991,7 +991,7 @@ static bool ui_but_update_from_old_block(const bContext *C, found_active = true; } else { - int flag_copy = UI_BUT_DRAG_MULTI; + uint64_t flag_copy = UI_BUT_DRAG_MULTI; /* Stupid special case: The active button may be inside (as in, overlapped on top) a tree-row * button which we also want to keep highlighted then. */ @@ -4219,7 +4219,7 @@ static uiBut *ui_def_but(uiBlock *block, return but; } -void ui_def_but_icon(uiBut *but, const int icon, const int flag) +void ui_def_but_icon(uiBut *but, const int icon, const uint64_t flag) { if (icon) { ui_icon_ensure_deferred(static_cast<const bContext *>(but->block->evil_C), @@ -5806,17 +5806,17 @@ void UI_block_flag_disable(uiBlock *block, int flag) block->flag &= ~flag; } -void UI_but_flag_enable(uiBut *but, int flag) +void UI_but_flag_enable(uiBut *but, uint64_t flag) { but->flag |= flag; } -void UI_but_flag_disable(uiBut *but, int flag) +void UI_but_flag_disable(uiBut *but, uint64_t flag) { but->flag &= ~flag; } -bool UI_but_flag_is_set(uiBut *but, int flag) +bool UI_but_flag_is_set(uiBut *but, uint64_t flag) { return (but->flag & flag) != 0; } diff --git a/source/blender/editors/interface/interface_anim.c b/source/blender/editors/interface/interface_anim.c index e838ce37d8e..b77d48552c7 100644 --- a/source/blender/editors/interface/interface_anim.c +++ b/source/blender/editors/interface/interface_anim.c @@ -144,7 +144,7 @@ void ui_but_anim_decorate_update_from_flag(uiButDecorator *decorator_but) return; } - const int flag = but_anim->flag; + const uint64_t flag = but_anim->flag; if (flag & UI_BUT_DRIVEN) { but->icon = ICON_DECORATE_DRIVER; @@ -162,7 +162,7 @@ void ui_but_anim_decorate_update_from_flag(uiButDecorator *decorator_but) but->icon = ICON_DECORATE; } - const int flag_copy = (UI_BUT_DISABLED | UI_BUT_INACTIVE); + const uint64_t flag_copy = (UI_BUT_DISABLED | UI_BUT_INACTIVE); but->flag = (but->flag & ~flag_copy) | (flag & flag_copy); } diff --git a/source/blender/editors/interface/interface_intern.h b/source/blender/editors/interface/interface_intern.h index 88e00cc5bec..98aed39c2ac 100644 --- a/source/blender/editors/interface/interface_intern.h +++ b/source/blender/editors/interface/interface_intern.h @@ -710,7 +710,7 @@ extern void ui_but_active_string_clear_and_exit(struct bContext *C, uiBut *but) extern void ui_but_set_string_interactive(struct bContext *C, uiBut *but, const char *value); extern uiBut *ui_but_drag_multi_edit_get(uiBut *but); -void ui_def_but_icon(uiBut *but, int icon, int flag); +void ui_def_but_icon(uiBut *but, int icon, uint64_t flag); /** * Avoid using this where possible since it's better not to ask for an icon in the first place. */ @@ -1217,14 +1217,14 @@ void ui_draw_menu_item(const struct uiFontStyle *fstyle, rcti *rect, const char *name, int iconid, - int state, + uint64_t state, uiMenuItemSeparatorType separator_type, int *r_xmax); void ui_draw_preview_item(const struct uiFontStyle *fstyle, rcti *rect, const char *name, int iconid, - int state, + uint64_t state, eFontStyle_Align text_align); /** * Version of #ui_draw_preview_item() that does not draw the menu background and item text based on @@ -1425,8 +1425,8 @@ uiBlock *ui_block_find_mouse_over(const struct ARegion *region, bool only_clip); uiBut *ui_region_find_first_but_test_flag(struct ARegion *region, - int flag_include, - int flag_exclude); + uint64_t flag_include, + uint64_t flag_exclude); uiBut *ui_region_find_active_but(struct ARegion *region) ATTR_WARN_UNUSED_RESULT; bool ui_region_contains_point_px(const struct ARegion *region, const int xy[2]) ATTR_NONNULL(1, 2) ATTR_WARN_UNUSED_RESULT; diff --git a/source/blender/editors/interface/interface_layout.c b/source/blender/editors/interface/interface_layout.c index c1bb2ed6d18..198195f1d9a 100644 --- a/source/blender/editors/interface/interface_layout.c +++ b/source/blender/editors/interface/interface_layout.c @@ -5316,7 +5316,7 @@ static void ui_item_align(uiLayout *litem, short nr) } } -static void ui_item_flag(uiLayout *litem, int flag) +static void ui_item_flag(uiLayout *litem, uint64_t flag) { LISTBASE_FOREACH_BACKWARD (uiItem *, item, &litem->items) { if (item->type == ITEM_BUTTON) { diff --git a/source/blender/editors/interface/interface_query.cc b/source/blender/editors/interface/interface_query.cc index 337b2852d57..b1619df7e4c 100644 --- a/source/blender/editors/interface/interface_query.cc +++ b/source/blender/editors/interface/interface_query.cc @@ -699,7 +699,9 @@ uiBut *ui_region_find_active_but(ARegion *region) return nullptr; } -uiBut *ui_region_find_first_but_test_flag(ARegion *region, int flag_include, int flag_exclude) +uiBut *ui_region_find_first_but_test_flag(ARegion *region, + uint64_t flag_include, + uint64_t flag_exclude) { LISTBASE_FOREACH (uiBlock *, block, ®ion->uiblocks) { LISTBASE_FOREACH (uiBut *, but, &block->buttons) { diff --git a/source/blender/editors/interface/interface_region_search.cc b/source/blender/editors/interface/interface_region_search.cc index bc497e2647c..016abb2f021 100644 --- a/source/blender/editors/interface/interface_region_search.cc +++ b/source/blender/editors/interface/interface_region_search.cc @@ -58,7 +58,7 @@ struct uiSearchItems { char **names; void **pointers; int *icons; - int *states; + uint64_t *states; uint8_t *name_prefix_offsets; /** Is there any item with an icon? */ @@ -94,7 +94,7 @@ bool UI_search_item_add(uiSearchItems *items, const char *name, void *poin, int iconid, - int state, + uint64_t state, const uint8_t name_prefix_offset) { /* hijack for autocomplete */ @@ -556,7 +556,7 @@ static void ui_searchbox_region_draw_fn(const bContext *C, ARegion *region) if (data->preview) { /* draw items */ for (int a = 0; a < data->items.totitem; a++) { - const int state = ((a == data->active) ? UI_ACTIVE : 0) | data->items.states[a]; + const uint64_t state = ((a == data->active) ? UI_ACTIVE : 0) | data->items.states[a]; /* ensure icon is up-to-date */ ui_icon_ensure_deferred(C, data->items.icons[a], data->preview); @@ -590,7 +590,7 @@ static void ui_searchbox_region_draw_fn(const bContext *C, ARegion *region) const int search_sep_len = data->sep_string ? strlen(data->sep_string) : 0; /* draw items */ for (int a = 0; a < data->items.totitem; a++) { - const int state = ((a == data->active) ? UI_ACTIVE : 0) | data->items.states[a]; + const uint64_t state = ((a == data->active) ? UI_ACTIVE : 0) | data->items.states[a]; char *name = data->items.names[a]; int icon = data->items.icons[a]; char *name_sep_test = nullptr; @@ -847,7 +847,7 @@ static ARegion *ui_searchbox_create_generic_ex(bContext *C, data->items.names = (char **)MEM_callocN(data->items.maxitem * sizeof(void *), __func__); data->items.pointers = (void **)MEM_callocN(data->items.maxitem * sizeof(void *), __func__); data->items.icons = (int *)MEM_callocN(data->items.maxitem * sizeof(int), __func__); - data->items.states = (int *)MEM_callocN(data->items.maxitem * sizeof(int), __func__); + data->items.states = (uint64_t *)M @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs