[Bf-blender-cvs] [1fdaf748bf4] master: Add poll messages for marker operators
Colin Basnett
noreply at git.blender.org
Fri Nov 11 20:13:40 CET 2022
Commit: 1fdaf748bf4a6b65465602aefa36868e69b4c30f
Author: Colin Basnett
Date: Fri Nov 11 11:13:00 2022 -0800
Branches: master
https://developer.blender.org/rB1fdaf748bf4a6b65465602aefa36868e69b4c30f
Add poll messages for marker operators
A number of operators were missing poll messages when disabled.
These are the following new error messages:
1. "No markers are selected"
2. "Markers are locked"
Reviewed By: sybren
Differential Revision: https://developer.blender.org/D16403
===================================================================
M source/blender/editors/animation/anim_markers.c
===================================================================
diff --git a/source/blender/editors/animation/anim_markers.c b/source/blender/editors/animation/anim_markers.c
index 94746837259..c980fd73342 100644
--- a/source/blender/editors/animation/anim_markers.c
+++ b/source/blender/editors/animation/anim_markers.c
@@ -663,11 +663,16 @@ static bool ed_markers_poll_selected_markers(bContext *C)
ListBase *markers = ED_context_get_markers(C);
if (!ED_operator_markers_region_active(C)) {
- return 0;
+ return false;
}
/* check if some marker is selected */
- return ED_markers_get_first_selected(markers) != NULL;
+ if (ED_markers_get_first_selected(markers) == NULL) {
+ CTX_wm_operator_poll_msg_set(C, "No markers are selected");
+ return false;
+ }
+
+ return true;
}
static bool ed_markers_poll_selected_no_locked_markers(bContext *C)
@@ -675,12 +680,22 @@ static bool ed_markers_poll_selected_no_locked_markers(bContext *C)
ListBase *markers = ED_context_get_markers(C);
ToolSettings *ts = CTX_data_tool_settings(C);
- if (ts->lock_markers || !ED_operator_markers_region_active(C)) {
- return 0;
+ if (!ED_operator_markers_region_active(C)) {
+ return false;
+ }
+
+ if (ts->lock_markers) {
+ CTX_wm_operator_poll_msg_set(C, "Markers are locked");
+ return false;
}
/* check if some marker is selected */
- return ED_markers_get_first_selected(markers) != NULL;
+ if (ED_markers_get_first_selected(markers) == NULL) {
+ CTX_wm_operator_poll_msg_set(C, "No markers are selected");
+ return false;
+ }
+
+ return true;
}
/* special poll() which checks if there are any markers at all first */
More information about the Bf-blender-cvs
mailing list