I want to handle some gui updates myself and use
app.handlers.scene_update_post.append(myFunction)
with this code
def myFunction(context):
if bpy.context.scene.is_updated:
if myPropertyChanged():
print(bpy.context.scene.myProperty)
It works flawless, except that I can't detect when I stop dragging a slider value (= mouseUp). The problem is that Blender returns values while dragging an input. While draggin an input x from 0 to 100, Blender returns multiple values like "1,23,24,38,49,99,100". I just want the value when a) the user stops dragging completely or b) the user stops clicking (mouseUp). I the returned values in between 1 and 100 are from Blender guessing wrong that the user stopped dragging. A hacky way would be to measure time and then decide "oh nothing is changing anymore" but that could conflict with a user inputing value very fast with the keyboard.
I don't want to use a modal operator for this. Is there a way of getting a mouseUp-event without a modal operator?
event.typewill tell youLEFT_MOUSEwhile theevent.valuewill tell youPRESSRELEASE– sambler Jan 21 '15 at 15:01