Merge branch 'blender-v3.3-release'
This commit is contained in:
commit
206272621e
|
@ -286,8 +286,10 @@ static void pose_slide_exit(bContext *C, wmOperator *op)
|
|||
ED_slider_destroy(C, pso->slider);
|
||||
|
||||
/* Hide Bone Overlay. */
|
||||
View3D *v3d = pso->area->spacedata.first;
|
||||
v3d->overlay.flag = pso->overlay_flag;
|
||||
if (pso->area) {
|
||||
View3D *v3d = pso->area->spacedata.first;
|
||||
v3d->overlay.flag = pso->overlay_flag;
|
||||
}
|
||||
|
||||
/* Free the temp pchan links and their data. */
|
||||
poseAnim_mapping_free(&pso->pfLinks);
|
||||
|
|
|
@ -2353,6 +2353,9 @@ static bool ui_view_drop_poll(bContext *C)
|
|||
{
|
||||
const wmWindow *win = CTX_wm_window(C);
|
||||
const ARegion *region = CTX_wm_region(C);
|
||||
if (region == nullptr) {
|
||||
return false;
|
||||
}
|
||||
const uiViewItemHandle *hovered_item = UI_region_views_find_item_at(region, win->eventstate->xy);
|
||||
|
||||
return hovered_item != nullptr;
|
||||
|
@ -2401,6 +2404,9 @@ static void UI_OT_view_drop(wmOperatorType *ot)
|
|||
static bool ui_view_item_rename_poll(bContext *C)
|
||||
{
|
||||
const ARegion *region = CTX_wm_region(C);
|
||||
if (region == nullptr) {
|
||||
return false;
|
||||
}
|
||||
const uiViewItemHandle *active_item = UI_region_views_find_active_item(region);
|
||||
return active_item != nullptr && UI_view_item_can_rename(active_item);
|
||||
}
|
||||
|
|
|
@ -680,8 +680,7 @@ static int gpencil_modifier_move_to_index_exec(bContext *C, wmOperator *op)
|
|||
Object *ob = ED_object_active_context(C);
|
||||
GpencilModifierData *md = gpencil_edit_modifier_property_get(op, ob, 0);
|
||||
int index = RNA_int_get(op->ptr, "index");
|
||||
|
||||
if (!ED_object_gpencil_modifier_move_to_index(op->reports, ob, md, index)) {
|
||||
if (!(md && ED_object_gpencil_modifier_move_to_index(op->reports, ob, md, index))) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
|
||||
|
|
|
@ -1367,7 +1367,7 @@ static int modifier_move_to_index_exec(bContext *C, wmOperator *op)
|
|||
ModifierData *md = edit_modifier_property_get(op, ob, 0);
|
||||
int index = RNA_int_get(op->ptr, "index");
|
||||
|
||||
if (!ED_object_modifier_move_to_index(op->reports, ob, md, index)) {
|
||||
if (!(md && ED_object_modifier_move_to_index(op->reports, ob, md, index))) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
|
||||
|
@ -3349,6 +3349,7 @@ void OBJECT_OT_geometry_nodes_input_attribute_toggle(wmOperatorType *ot)
|
|||
ot->idname = "OBJECT_OT_geometry_nodes_input_attribute_toggle";
|
||||
|
||||
ot->exec = geometry_nodes_input_attribute_toggle_exec;
|
||||
ot->poll = ED_operator_object_active;
|
||||
|
||||
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO | OPTYPE_INTERNAL;
|
||||
|
||||
|
@ -3366,9 +3367,8 @@ static int geometry_node_tree_copy_assign_exec(bContext *C, wmOperator *UNUSED(o
|
|||
{
|
||||
Main *bmain = CTX_data_main(C);
|
||||
Object *ob = ED_object_active_context(C);
|
||||
|
||||
ModifierData *md = BKE_object_active_modifier(ob);
|
||||
if (md->type != eModifierType_Nodes) {
|
||||
if (!(md && md->type == eModifierType_Nodes)) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
|
||||
|
@ -3400,6 +3400,7 @@ void OBJECT_OT_geometry_node_tree_copy_assign(wmOperatorType *ot)
|
|||
ot->idname = "OBJECT_OT_geometry_node_tree_copy_assign";
|
||||
|
||||
ot->exec = geometry_node_tree_copy_assign_exec;
|
||||
ot->poll = ED_operator_object_active;
|
||||
|
||||
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
|
||||
}
|
||||
|
|
|
@ -481,12 +481,15 @@ static int shaderfx_remove_exec(bContext *C, wmOperator *op)
|
|||
Main *bmain = CTX_data_main(C);
|
||||
Object *ob = ED_object_active_context(C);
|
||||
ShaderFxData *fx = edit_shaderfx_property_get(op, ob, 0);
|
||||
if (!fx) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
|
||||
/* Store name temporarily for report. */
|
||||
char name[MAX_NAME];
|
||||
strcpy(name, fx->name);
|
||||
|
||||
if (!fx || !ED_object_shaderfx_remove(op->reports, bmain, ob, fx)) {
|
||||
if (!ED_object_shaderfx_remove(op->reports, bmain, ob, fx)) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
|
||||
|
@ -671,7 +674,9 @@ static int shaderfx_copy_exec(bContext *C, wmOperator *op)
|
|||
{
|
||||
Object *ob = ED_object_active_context(C);
|
||||
ShaderFxData *fx = edit_shaderfx_property_get(op, ob, 0);
|
||||
|
||||
if (!fx) {
|
||||
return OPERATOR_CANCELLED;
|
||||
}
|
||||
ShaderFxData *nfx = BKE_shaderfx_new(fx->type);
|
||||
if (!nfx) {
|
||||
return OPERATOR_CANCELLED;
|
||||
|
|
|
@ -370,11 +370,13 @@ tSlider *ED_slider_create(struct bContext *C)
|
|||
slider->factor = 0.5;
|
||||
|
||||
/* Add draw callback. Always in header. */
|
||||
LISTBASE_FOREACH (ARegion *, region, &slider->area->regionbase) {
|
||||
if (region->regiontype == RGN_TYPE_HEADER) {
|
||||
slider->region_header = region;
|
||||
slider->draw_handle = ED_region_draw_cb_activate(
|
||||
region->type, slider_draw, slider, REGION_DRAW_POST_PIXEL);
|
||||
if (slider->area) {
|
||||
LISTBASE_FOREACH (ARegion *, region, &slider->area->regionbase) {
|
||||
if (region->regiontype == RGN_TYPE_HEADER) {
|
||||
slider->region_header = region;
|
||||
slider->draw_handle = ED_region_draw_cb_activate(
|
||||
region->type, slider_draw, slider, REGION_DRAW_POST_PIXEL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -465,7 +467,9 @@ void ED_slider_status_string_get(const struct tSlider *slider,
|
|||
void ED_slider_destroy(struct bContext *C, tSlider *slider)
|
||||
{
|
||||
/* Remove draw callback. */
|
||||
ED_region_draw_cb_exit(slider->region_header->type, slider->draw_handle);
|
||||
if (slider->draw_handle) {
|
||||
ED_region_draw_cb_exit(slider->region_header->type, slider->draw_handle);
|
||||
}
|
||||
ED_area_status_text(slider->area, NULL);
|
||||
ED_workspace_status_text(C, NULL);
|
||||
MEM_freeN(slider);
|
||||
|
|
Loading…
Reference in New Issue