[PD-dev] [ pure-data-Patches-1948287 ] Throttle speed of mouse motion events whhen moving objects.

SourceForge.net noreply at sourceforge.net
Fri Jul 30 04:37:18 CEST 2010


Patches item #1948287, was opened at 2008-04-21 17:50
Message generated for change (Comment added) made by eighthave
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=1948287&group_id=55736

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: feature
Status: Closed
Resolution: Accepted
Priority: 5
Private: No
Submitted By: Stephen Sinclair (radarsat1)
Assigned to: Nobody/Anonymous (nobody)
Summary: Throttle speed of mouse motion events whhen moving objects.

Initial Comment:
Use a clock to throttle mouse motion events when objects are being moved in the editor.

This improves GUI responsiveness when moving many objects at once.  Perhaps there is a better way than adding a clock instance to each and every canvas.


----------------------------------------------------------------------

>Comment By: Hans-Christoph Steiner (eighthave)
Date: 2010-07-29 22:37

Message:
git commit 97247a280cfa4cf36ca4ffad4f012018401d28c2

----------------------------------------------------------------------

Comment By: Miller Puckette (millerpuckette)
Date: 2010-07-28 20:19

Message:
cool  - I should have done this 10 years ago.

----------------------------------------------------------------------

Comment By: Stephen Sinclair (radarsat1)
Date: 2008-04-21 21:20

Message:
Logged In: YES 
user_id=616837
Originator: YES

It would probably help to use 'move', but this doesn't really conflict
with that idea.  Either way I think it's somewhat wasteful to redraw the
screen on every mouse move event.  It's only necessary to redraw as fast
as:

- a human can move the mouse
- the screen can refresh

Some tests I did with moving lots of objects (and large arrays) were much
smoother using this clock.  Probably one global clock could be used, since
only one canvas can receive mouse motion events at a time.  But that might
require more complicated changes.  I wasn't sure about adding the e_xnew
and e_ynew variables, but I couldn't think of a better way.  I'm open to
ideas.

----------------------------------------------------------------------

Comment By: Hans-Christoph Steiner (eighthave)
Date: 2008-04-21 19:51

Message:
Logged In: YES 
user_id=27104
Originator: NO

This in interesting idea, I think some of the IEMGUIs have built-in clocks
for drawing, like [vu]. IIRC.  I wonder if it would be necessary if the
displace_fn stuff was cleaned up to use 'move' instead of 'delete' then
'create', like in patch #1948146.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=1948287&group_id=55736



More information about the Pd-dev mailing list