[Bf-blender-cvs] [1051c17af37] temp-ui-cpp: Cleanup: Move interface_query.c to C++

Hans Goudey noreply at git.blender.org
Sat Apr 2 21:08:00 CEST 2022


Commit: 1051c17af3714f43ee9004092f11ce0a2c01154c
Author: Hans Goudey
Date:   Sat Apr 2 14:07:43 2022 -0500
Branches: temp-ui-cpp
https://developer.blender.org/rB1051c17af3714f43ee9004092f11ce0a2c01154c

Cleanup: Move interface_query.c to C++

===================================================================

M	source/blender/editors/interface/CMakeLists.txt
M	source/blender/editors/interface/interface_intern.h
R091	source/blender/editors/interface/interface_query.c	source/blender/editors/interface/interface_query.cc

===================================================================

diff --git a/source/blender/editors/interface/CMakeLists.txt b/source/blender/editors/interface/CMakeLists.txt
index 100be2c10c9..e298d595294 100644
--- a/source/blender/editors/interface/CMakeLists.txt
+++ b/source/blender/editors/interface/CMakeLists.txt
@@ -46,7 +46,7 @@ set(SRC
   interface_layout.c
   interface_ops.c
   interface_panel.c
-  interface_query.c
+  interface_query.cc
   interface_region_color_picker.c
   interface_region_hud.c
   interface_region_menu_pie.c
diff --git a/source/blender/editors/interface/interface_intern.h b/source/blender/editors/interface/interface_intern.h
index a7a2409ef17..ddea37e8dfe 100644
--- a/source/blender/editors/interface/interface_intern.h
+++ b/source/blender/editors/interface/interface_intern.h
@@ -214,8 +214,8 @@ struct uiBut {
   BIFIconID icon;
   /** Copied from the #uiBlock.emboss */
   eUIEmbossType emboss;
-  /** direction in a pie menu, used for collision detection (RadialDirection) */
-  signed char pie_dir;
+  /** direction in a pie menu, used for collision detection. */
+  RadialDirection pie_dir;
   /** could be made into a single flag */
   bool changed;
   /** so buttons can support unit systems which are not RNA */
diff --git a/source/blender/editors/interface/interface_query.c b/source/blender/editors/interface/interface_query.cc
similarity index 91%
rename from source/blender/editors/interface/interface_query.c
rename to source/blender/editors/interface/interface_query.cc
index 4703367671d..2767a184619 100644
--- a/source/blender/editors/interface/interface_query.c
+++ b/source/blender/editors/interface/interface_query.cc
@@ -61,7 +61,7 @@ bool ui_but_is_toggle(const uiBut *but)
 bool ui_but_is_interactive(const uiBut *but, const bool labeledit)
 {
   /* NOTE: #UI_BTYPE_LABEL is included for highlights, this allows drags. */
-  if ((but->type == UI_BTYPE_LABEL) && but->dragpoin == NULL) {
+  if ((but->type == UI_BTYPE_LABEL) && but->dragpoin == nullptr) {
     return false;
   }
   if (ELEM(but->type, UI_BTYPE_ROUNDBOX, UI_BTYPE_SEPR, UI_BTYPE_SEPR_LINE, UI_BTYPE_LISTBOX)) {
@@ -119,12 +119,12 @@ bool ui_but_has_array_value(const uiBut *but)
                PROP_COORDS));
 }
 
-static wmOperatorType *g_ot_tool_set_by_id = NULL;
+static wmOperatorType *g_ot_tool_set_by_id = nullptr;
 bool UI_but_is_tool(const uiBut *but)
 {
   /* very evil! */
-  if (but->optype != NULL) {
-    if (g_ot_tool_set_by_id == NULL) {
+  if (but->optype != nullptr) {
+    if (g_ot_tool_set_by_id == nullptr) {
       g_ot_tool_set_by_id = WM_operatortype_find("WM_OT_tool_set_by_id", false);
     }
     if (but->optype == g_ot_tool_set_by_id) {
@@ -198,7 +198,7 @@ bool ui_but_contains_pt(const uiBut *but, float mx, float my)
 
 bool ui_but_contains_rect(const uiBut *but, const rctf *rect)
 {
-  return BLI_rctf_isect(&but->rect, rect, NULL);
+  return BLI_rctf_isect(&but->rect, rect, nullptr);
 }
 
 bool ui_but_contains_point_px(const uiBut *but, const ARegion *region, const int xy[2])
@@ -260,7 +260,7 @@ static uiBut *ui_but_find(const ARegion *region,
     }
   }
 
-  return NULL;
+  return nullptr;
 }
 
 uiBut *ui_but_find_mouse_over_ex(const ARegion *region,
@@ -269,10 +269,10 @@ uiBut *ui_but_find_mouse_over_ex(const ARegion *region,
                                  const uiButFindPollFn find_poll,
                                  const void *find_custom_data)
 {
-  uiBut *butover = NULL;
+  uiBut *butover = nullptr;
 
   if (!ui_region_contains_point_px(region, xy)) {
-    return NULL;
+    return nullptr;
   }
   LISTBASE_FOREACH (uiBlock *, block, &region->uiblocks) {
     float mx = xy[0], my = xy[1];
@@ -310,20 +310,20 @@ uiBut *ui_but_find_mouse_over_ex(const ARegion *region,
 
 uiBut *ui_but_find_mouse_over(const ARegion *region, const wmEvent *event)
 {
-  return ui_but_find_mouse_over_ex(region, event->xy, event->modifier & KM_CTRL, NULL, NULL);
+  return ui_but_find_mouse_over_ex(region, event->xy, event->modifier & KM_CTRL, nullptr, nullptr);
 }
 
 uiBut *ui_but_find_rect_over(const struct ARegion *region, const rcti *rect_px)
 {
   if (!ui_region_contains_rect_px(region, rect_px)) {
-    return NULL;
+    return nullptr;
   }
 
   /* Currently no need to expose this at the moment. */
   const bool labeledit = true;
   rctf rect_px_fl;
   BLI_rctf_rcti_copy(&rect_px_fl, rect_px);
-  uiBut *butover = NULL;
+  uiBut *butover = nullptr;
 
   LISTBASE_FOREACH (uiBlock *, block, &region->uiblocks) {
     rctf rect_block;
@@ -343,7 +343,7 @@ uiBut *ui_but_find_rect_over(const struct ARegion *region, const rcti *rect_px)
     /* CLIP_EVENTS prevents the event from reaching other blocks */
     if (block->flag & UI_BLOCK_CLIP_EVENTS) {
       /* check if mouse is inside block */
-      if (BLI_rctf_isect(&block->rect, &rect_block, NULL)) {
+      if (BLI_rctf_isect(&block->rect, &rect_block, nullptr)) {
         break;
       }
     }
@@ -354,7 +354,7 @@ uiBut *ui_but_find_rect_over(const struct ARegion *region, const rcti *rect_px)
 uiBut *ui_list_find_mouse_over_ex(const ARegion *region, const int xy[2])
 {
   if (!ui_region_contains_point_px(region, xy)) {
-    return NULL;
+    return nullptr;
   }
   LISTBASE_FOREACH (uiBlock *, block, &region->uiblocks) {
     float mx = xy[0], my = xy[1];
@@ -366,14 +366,14 @@ uiBut *ui_list_find_mouse_over_ex(const ARegion *region, const int xy[2])
     }
   }
 
-  return NULL;
+  return nullptr;
 }
 
 uiBut *ui_list_find_mouse_over(const ARegion *region, const wmEvent *event)
 {
-  if (event == NULL) {
+  if (event == nullptr) {
     /* If there is no info about the mouse, just act as if there is nothing underneath it. */
-    return NULL;
+    return nullptr;
   }
   return ui_list_find_mouse_over_ex(region, event->xy);
 }
@@ -382,10 +382,10 @@ uiList *UI_list_find_mouse_over(const ARegion *region, const wmEvent *event)
 {
   uiBut *list_but = ui_list_find_mouse_over(region, event);
   if (!list_but) {
-    return NULL;
+    return nullptr;
   }
 
-  return list_but->custom_data;
+  return static_cast<uiList *>(list_but->custom_data);
 }
 
 static bool ui_list_contains_row(const uiBut *listbox_but, const uiBut *listrow_but)
@@ -398,7 +398,7 @@ static bool ui_list_contains_row(const uiBut *listbox_but, const uiBut *listrow_
 
 static bool ui_but_is_listbox_with_row(const uiBut *but, const void *customdata)
 {
-  const uiBut *row_but = customdata;
+  const uiBut *row_but = static_cast<const uiBut *>(customdata);
   return (but->type == UI_BTYPE_LISTBOX) && ui_list_contains_row(but, row_but);
 }
 
@@ -414,7 +414,7 @@ static bool ui_but_is_listrow(const uiBut *but, const void *UNUSED(customdata))
 
 uiBut *ui_list_row_find_mouse_over(const ARegion *region, const int xy[2])
 {
-  return ui_but_find_mouse_over_ex(region, xy, false, ui_but_is_listrow, NULL);
+  return ui_but_find_mouse_over_ex(region, xy, false, ui_but_is_listrow, nullptr);
 }
 
 struct ListRowFindIndexData {
@@ -424,19 +424,18 @@ struct ListRowFindIndexData {
 
 static bool ui_but_is_listrow_at_index(const uiBut *but, const void *customdata)
 {
-  const struct ListRowFindIndexData *find_data = customdata;
+  const ListRowFindIndexData *find_data = static_cast<const ListRowFindIndexData *>(customdata);
 
-  return ui_but_is_listrow(but, NULL) && ui_list_contains_row(find_data->listbox, but) &&
+  return ui_but_is_listrow(but, nullptr) && ui_list_contains_row(find_data->listbox, but) &&
          (but->hardmax == find_data->index);
 }
 
 uiBut *ui_list_row_find_from_index(const ARegion *region, const int index, uiBut *listbox)
 {
   BLI_assert(listbox->type == UI_BTYPE_LISTBOX);
-  struct ListRowFindIndexData data = {
-      .index = index,
-      .listbox = listbox,
-  };
+  ListRowFindIndexData data = {};
+  data.index = index;
+  data.listbox = listbox;
   return ui_but_find(region, ui_but_is_listrow_at_index, &data);
 }
 
@@ -447,7 +446,7 @@ static bool ui_but_is_treerow(const uiBut *but, const void *UNUSED(customdata))
 
 uiBut *ui_tree_row_find_mouse_over(const ARegion *region, const int xy[2])
 {
-  return ui_but_find_mouse_over_ex(region, xy, false, ui_but_is_treerow, NULL);
+  return ui_but_find_mouse_over_ex(region, xy, false, ui_but_is_treerow, nullptr);
 }
 
 static bool ui_but_is_active_treerow(const uiBut *but, const void *customdata)
@@ -462,7 +461,7 @@ static bool ui_but_is_active_treerow(const uiBut *but, const void *customdata)
 
 uiBut *ui_tree_row_find_active(const ARegion *region)
 {
-  return ui_but_find(region, ui_but_is_active_treerow, NULL);
+  return ui_but_find(region, ui_but_is_active_treerow, nullptr);
 }
 
 /** \} */
@@ -479,7 +478,7 @@ uiBut *ui_but_prev(uiBut *but)
       return but;
     }
   }
-  return NULL;
+  return nullptr;
 }
 
 uiBut *ui_but_next(uiBut *but)
@@ -490,7 +489,7 @@ uiBut *ui_but_next(uiBut *but)
       return but;
     }
   }
-  return NULL;
+  return nullptr;
 }
 
 uiBut *ui_but_first(uiBlock *block)
@@ -500,21 +499,19 @@ uiBut *ui_but_first(uiBlock *block)
       return but;
     }
   }
-  return NULL;
+  return nullptr;
 }
 
 uiBut *ui_but_last(uiBlock *block)
 {
-  uiBut *but;
-
-  but = block->buttons.last;
+  uiBut *but = static_cast<uiBut *>(block->buttons.last);
   while (but) {
     if (ui_but_is_editable(but)) {
       return but;
     }
     but = but->prev;
   }
-  return NULL;
+  return nullptr;
 }
 
 bool ui_but_is_cursor_warp(const uiBut *but)
@@ -550,7 +547,7 @@ size_t ui_but_drawstr_len_without_sep_char(const uiBut *but)
 {
   if (but->flag & UI_BUT_HAS_SEP_CHAR) {
     const char *str_sep = strrchr(but->drawstr, UI_SEP_CHAR);
-    if (str_sep != NULL) {
+    if (str_sep != nullptr) {
       return (str_sep - but->drawstr);
     }
   }
@@ -565,12 +562,12 @@ size_t ui_but_drawstr_without_sep_char(const uiBut *but, char *str, size_t str_m
 
 size_t ui_but_tip_len_only_first_line(const uiBut *but)
 {
-  if (but->tip == NULL) {
+  if (but->tip == nullptr) {
     return 0;
   }
 
   const char *str_sep = strchr(but->tip, '\n');
-  if (str_sep != NULL) {
+  if (str_sep != nullptr) {
     return (str_sep - but->tip);
   }
   return strlen(but->tip);
@@ -590,7 +587,7 @@ uiBut *ui_block_active_but_get(const uiBlock *block)
     }
   }
 
-  return NULL;
+  return nullptr;
 }
 
 bool ui_block_is_menu(const uiBlock *block)
@@ -622,12 +61

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list