21#include "RNA_prototypes.hh"
60 if (drop_target ==
nullptr) {
125 const int target_slot =
RNA_int_get(&mat_slot,
"slot_index") + 1;
131 if (prev_mat_in_slot) {
132 return fmt::format(
TIP_(
"Drop {} on slot {} (replacing {}) of {}"),
133 dragged_material_name,
135 prev_mat_in_slot->
id.
name + 2,
138 if (target_slot == ob->
actcol) {
139 return fmt::format(
TIP_(
"Drop {} on slot {} (active slot) of {}"),
140 dragged_material_name,
145 TIP_(
"Drop {} on slot {} of {}"), dragged_material_name, target_slot, ob->
id.
name + 2);
166 "UI_OT_drop_material",
PointerRNA CTX_data_pointer_get_type(const bContext *C, const char *member, StructRNA *type)
wmWindow * CTX_wm_window(const bContext *C)
ARegion * CTX_wm_region(const bContext *C)
#define ID_IS_EDITABLE(_id)
#define ID_IS_OVERRIDE_LIBRARY(_id)
Read Guarded memory(de)allocation.
bool UI_but_active_drop_name(const bContext *C)
static void ui_drop_material_copy(bContext *C, wmDrag *drag, wmDropBox *drop)
static bool ui_drop_material_poll(bContext *C, wmDrag *drag, const wmEvent *)
static void ui_drop_name_copy(bContext *, wmDrag *drag, wmDropBox *drop)
static std::string ui_view_drop_tooltip(bContext *C, wmDrag *drag, const int xy[2], wmDropBox *)
static bool ui_drop_name_poll(bContext *C, wmDrag *drag, const wmEvent *)
static std::string ui_drop_material_tooltip(bContext *C, wmDrag *drag, const int[2], wmDropBox *)
static bool ui_view_drop_poll(bContext *C, wmDrag *drag, const wmEvent *event)
std::string drop_target_tooltip(const ARegion ®ion, const DropTargetInterface &drop_target, const wmDrag &drag, const wmEvent &event)
std::unique_ptr< DropTargetInterface > region_views_find_drop_target_at(const ARegion *region, const int xy[2])
void RNA_string_set(PointerRNA *ptr, const char *name, const char *value)
PointerRNA RNA_pointer_get(PointerRNA *ptr, const char *name)
void RNA_int_set(PointerRNA *ptr, const char *name, int value)
int RNA_int_get(PointerRNA *ptr, const char *name)
bool RNA_pointer_is_null(const PointerRNA *ptr)
const char * disabled_info
wmDragActiveDropState drop_state
struct wmEvent * eventstate
wmDropBox * WM_dropbox_add(ListBase *lb, const char *idname, bool(*poll)(bContext *C, wmDrag *drag, const wmEvent *event), void(*copy)(bContext *C, wmDrag *drag, wmDropBox *drop), void(*cancel)(Main *bmain, wmDrag *drag, wmDropBox *drop), WMDropboxTooltipFunc tooltip)
void WM_drag_free_imported_drag_ID(Main *bmain, wmDrag *drag, wmDropBox *drop)
Free asset ID imported for canceled drop.
const char * WM_drag_get_item_name(wmDrag *drag)
bool WM_drag_is_ID_type(const wmDrag *drag, int idcode)
ID * WM_drag_get_local_ID_or_import_from_asset(const bContext *C, const wmDrag *drag, int idcode)
ListBase * WM_dropboxmap_find(const char *idname, int spaceid, int regionid)
ID * WM_drag_get_local_ID(const wmDrag *drag, short idcode)