From 49fd02de61d4fa1fbd29df82987cc9be064537d8 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 24 Jun 2022 23:10:51 +1000 Subject: PyAPI: Expose event.type_prev, value_prev Before [0] mouse-motion events left the 'event.value' un-changed, so a mouse-move would be set to PRESS/RELEASE based on previous events. Support accessing the previous event value directly to address feedback from T99102. Note that the previous cursor location is already exposed. [0]: 52af3b20d45ea525a0ce66b2613ac132c9032a3f --- source/blender/makesrna/intern/rna_wm.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/source/blender/makesrna/intern/rna_wm.c b/source/blender/makesrna/intern/rna_wm.c index b09a9ab0733..c1b74c56dd4 100644 --- a/source/blender/makesrna/intern/rna_wm.c +++ b/source/blender/makesrna/intern/rna_wm.c @@ -2047,6 +2047,12 @@ static void rna_def_event(BlenderRNA *brna) RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_ui_text(prop, "Value", "The type of event, only applies to some"); + prop = RNA_def_property(srna, "value_prev", PROP_ENUM, PROP_NONE); + RNA_def_property_enum_sdna(prop, NULL, "prev_val"); + RNA_def_property_enum_items(prop, rna_enum_event_value_items); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_ui_text(prop, "Previous Value", "The type of event, only applies to some"); + prop = RNA_def_property(srna, "type", PROP_ENUM, PROP_NONE); RNA_def_property_enum_sdna(prop, NULL, "type"); RNA_def_property_enum_items(prop, rna_enum_event_type_items); @@ -2054,6 +2060,13 @@ static void rna_def_event(BlenderRNA *brna) RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_ui_text(prop, "Type", ""); + prop = RNA_def_property(srna, "type_prev", PROP_ENUM, PROP_NONE); + RNA_def_property_enum_sdna(prop, NULL, "prev_type"); + RNA_def_property_enum_items(prop, rna_enum_event_type_items); + RNA_def_property_translation_context(prop, BLT_I18NCONTEXT_UI_EVENTS); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_ui_text(prop, "Previous Type", ""); + prop = RNA_def_property(srna, "direction", PROP_ENUM, PROP_NONE); RNA_def_property_enum_sdna(prop, NULL, "direction"); RNA_def_property_enum_items(prop, rna_enum_event_direction_items); -- cgit v1.2.3