Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2022-07-30 07:16:58 +0300
committerHans Goudey <h.goudey@me.com>2022-07-30 07:22:31 +0300
commit599a7ddf1784882ae796d94f148aa2a830639bc0 (patch)
tree5b01057eeb9b57c4e5d2a1ff229b8f2f89cbbc26 /source/blender/editors/interface/interface_template_search_operator.c
parente6b1e97dd70d5cae9d6cf06256be77e0bafa6554 (diff)
Cleanup: Move five interface files to C++
Builds on all four platforms on the buildbot. Includes clang tidy fixes.
Diffstat (limited to 'source/blender/editors/interface/interface_template_search_operator.c')
-rw-r--r--source/blender/editors/interface/interface_template_search_operator.c129
1 files changed, 0 insertions, 129 deletions
diff --git a/source/blender/editors/interface/interface_template_search_operator.c b/source/blender/editors/interface/interface_template_search_operator.c
deleted file mode 100644
index 41de2ab197d..00000000000
--- a/source/blender/editors/interface/interface_template_search_operator.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-
-/** \file
- * \ingroup edinterface
- *
- * Search available operators by scanning all and checking their poll function.
- * accessed via the #WM_OT_search_operator operator.
- */
-
-#include <string.h>
-
-#include "DNA_object_types.h"
-#include "DNA_scene_types.h"
-#include "DNA_texture_types.h"
-
-#include "BLI_alloca.h"
-#include "BLI_ghash.h"
-#include "BLI_string.h"
-#include "BLI_utildefines.h"
-
-#include "BLT_translation.h"
-
-#include "BKE_context.h"
-#include "BKE_global.h"
-
-#include "WM_api.h"
-#include "WM_types.h"
-
-#include "UI_interface.h"
-#include "interface_intern.h"
-
-/* -------------------------------------------------------------------- */
-/** \name Operator Search Template Implementation
- * \{ */
-
-static void operator_search_exec_fn(bContext *C, void *UNUSED(arg1), void *arg2)
-{
- wmOperatorType *ot = arg2;
-
- if (ot) {
- WM_operator_name_call_ptr(C, ot, WM_OP_INVOKE_DEFAULT, NULL, NULL);
- }
-}
-
-static void operator_search_update_fn(const bContext *C,
- void *UNUSED(arg),
- const char *str,
- uiSearchItems *items,
- const bool UNUSED(is_first))
-{
- GHashIterator iter;
-
- /* Prepare BLI_string_all_words_matched. */
- const size_t str_len = strlen(str);
- const int words_max = BLI_string_max_possible_word_count(str_len);
- int(*words)[2] = BLI_array_alloca(words, words_max);
- const int words_len = BLI_string_find_split_words(str, str_len, ' ', words, words_max);
-
- for (WM_operatortype_iter(&iter); !BLI_ghashIterator_done(&iter);
- BLI_ghashIterator_step(&iter)) {
- wmOperatorType *ot = BLI_ghashIterator_getValue(&iter);
- const char *ot_ui_name = CTX_IFACE_(ot->translation_context, ot->name);
-
- if ((ot->flag & OPTYPE_INTERNAL) && (G.debug & G_DEBUG_WM) == 0) {
- continue;
- }
-
- if (BLI_string_all_words_matched(ot_ui_name, str, words, words_len)) {
- if (WM_operator_poll((bContext *)C, ot)) {
- char name[256];
- const int len = strlen(ot_ui_name);
-
- /* display name for menu, can hold hotkey */
- BLI_strncpy(name, ot_ui_name, sizeof(name));
-
- /* check for hotkey */
- if (len < sizeof(name) - 6) {
- if (WM_key_event_operator_string(C,
- ot->idname,
- WM_OP_EXEC_DEFAULT,
- NULL,
- true,
- &name[len + 1],
- sizeof(name) - len - 1)) {
- name[len] = UI_SEP_CHAR;
- }
- }
-
- if (!UI_search_item_add(items, name, ot, ICON_NONE, 0, 0)) {
- break;
- }
- }
- }
- }
-}
-
-/** \} */
-
-/* -------------------------------------------------------------------- */
-/** \name Operator Search Template API
- * \{ */
-
-void UI_but_func_operator_search(uiBut *but)
-{
- UI_but_func_search_set(but,
- ui_searchbox_create_operator,
- operator_search_update_fn,
- NULL,
- false,
- NULL,
- operator_search_exec_fn,
- NULL);
-}
-
-void uiTemplateOperatorSearch(uiLayout *layout)
-{
- uiBlock *block;
- uiBut *but;
- static char search[256] = "";
-
- block = uiLayoutGetBlock(layout);
- UI_block_layout_set_current(block, layout);
-
- but = uiDefSearchBut(
- block, search, 0, ICON_VIEWZOOM, sizeof(search), 0, 0, UI_UNIT_X * 6, UI_UNIT_Y, 0, 0, "");
- UI_but_func_operator_search(but);
-}
-
-/** \} */