diff options
author | Colin Basnett <cmbasnett@gmail.com> | 2022-11-09 02:29:57 +0300 |
---|---|---|
committer | Colin Basnett <cmbasnett@gmail.com> | 2022-11-09 02:29:57 +0300 |
commit | ee5b6f7150109a62b2a435ecd011316ffceb9e59 (patch) | |
tree | e2ee377e716d1646135dcaf339e2a3607dd314bf /source/blender/editors/space_graph | |
parent | 62e32e7c2e039415f91cb5578c462f98417bad0b (diff) |
Hide ratio when using error margin mode in decimate keyframes operator
This fixes a bug in the function that determines what properties to show
on the Decimate Keyframes operator.
Before the fix, the "Remove" (i.e., `factor`) slider was visible no
matter what "Mode" was being used. This meant that the slider was
visible and modifiable when it had no effect, creating confusion.
Reviewed By: sybren
Differential Revision: https://developer.blender.org/D16318
Diffstat (limited to 'source/blender/editors/space_graph')
-rw-r--r-- | source/blender/editors/space_graph/graph_slider_ops.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/source/blender/editors/space_graph/graph_slider_ops.c b/source/blender/editors/space_graph/graph_slider_ops.c index f3d92911155..62aecf930d3 100644 --- a/source/blender/editors/space_graph/graph_slider_ops.c +++ b/source/blender/editors/space_graph/graph_slider_ops.c @@ -458,16 +458,13 @@ static bool decimate_poll_property(const bContext *UNUSED(C), const PropertyRNA *prop) { const char *prop_id = RNA_property_identifier(prop); + const int mode = RNA_enum_get(op->ptr, "mode"); - if (STRPREFIX(prop_id, "remove")) { - int mode = RNA_enum_get(op->ptr, "mode"); - - if (STREQ(prop_id, "factor") && mode != DECIM_RATIO) { - return false; - } - if (STREQ(prop_id, "remove_error_margin") && mode != DECIM_ERROR) { - return false; - } + if (STREQ(prop_id, "factor") && mode != DECIM_RATIO) { + return false; + } + if (STREQ(prop_id, "remove_error_margin") && mode != DECIM_ERROR) { + return false; } return true; |