29 const char *name =
nullptr;
36 const char *name =
nullptr;
53 const bool can_create_attribute,
62 bool contained =
false;
64 if (attribute_info->name ==
str) {
74 can_create_attribute ? ICON_ADD : ICON_NONE,
80 if (
str[0] ==
'\0' && !is_first) {
89 const char *
string = is_first ?
"" :
str.c_str();
108 for (
const int i :
IndexRange(filtered_amount)) {
void BLI_string_search_add(StringSearch *search, const char *str, void *user_data, int weight)
void BLI_string_search_free(StringSearch *search)
StringSearch * BLI_string_search_new(void)
int BLI_string_search_query(StringSearch *search, const char *query, void ***r_data)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
bool UI_search_item_add(uiSearchItems *items, const char *name, void *poin, int iconid, int but_flag, uint8_t name_prefix_offset)
void(* MEM_freeN)(void *vmemh)
bool allow_procedural_attribute_access(StringRef attribute_name)
static bool attribute_search_item_add(uiSearchItems *items, const GeometryAttributeInfo &item)
void attribute_search_add_items(StringRefNull str, bool can_create_attribute, Span< const nodes::geometry_nodes_eval_log::GeometryAttributeInfo * > infos, uiSearchItems *items, bool is_first)
static StringRef attribute_domain_string(const eAttrDomain domain)
static StringRef attribute_data_type_string(const eCustomDataType type)
bool RNA_enum_name_from_value(const EnumPropertyItem *item, int value, const char **r_name)
const EnumPropertyItem rna_enum_attribute_domain_items[]
const EnumPropertyItem rna_enum_attribute_type_items[]
#define UI_MENU_ARROW_SEP
std::optional< eCustomDataType > data_type
std::optional< eAttrDomain > domain