[Bf-blender-cvs] [9549df341c2] temp-pbvh-split: UI: Update rest of UI code for increased button flag bitfield

Julian Eisel noreply at git.blender.org
Fri Jun 3 01:16:32 CEST 2022


Commit: 9549df341c2ef0539e885419ab8c1ab3560a8762
Author: Julian Eisel
Date:   Wed May 11 17:05:24 2022 +0200
Branches: temp-pbvh-split
https://developer.blender.org/rB9549df341c2ef0539e885419ab8c1ab3560a8762

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, &region->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. @@



More information about the Bf-blender-cvs mailing list