Ok, thanks for the quick answer :)

Is there a way to know the double quick delay time with ecore_x so we
can implement this whole thing "manually" in evas or in etk by
comparing the event timestamps?

Simon

On Wed, 15 Feb 2006 09:59:55 +0900
Carsten Haitzler (The Rasterman) <[EMAIL PROTECTED]> wrote:

> On Tue, 14 Feb 2006 20:09:06 +0100 Simon TRENY <[EMAIL PROTECTED]>
> babbled:
> 
> > Hey there!
> > 
> > I'd like to know when one of my Evas_Object is double or triple
> > clicked. So I use event->flags with EVAS_BUTTON_DOUBLE_CLICK or
> > EVAS_BUTTON_TRIPLE_CLICK. It works almost fine but I noticed 2
> > bugs/features with it:
> > 
> > - First, event->flags does not reflect the number of clicks on the
> > Evas_Object but on the canvas. It means that if you click on an
> > object and then quickly move the mouse over another object, and
> > click again, event->flags will be set to EVAS_BUTTON_DOUBLE_CLICK
> > while you only single clicked on the second object. A consequence
> > of this is, in efm for example, if you want to select several
> > folders with the ctrl key, if you are too fast, the last clicked
> > folder can be opened instead of being selected. You can still check
> > if the folder was already selected and open it only if it was, but
> > in the case you want to deselect the folder with the ctrl key,
> > you'll have the same problem.
> > 
> > - Another bug/feature is that event->flags is set only with the
> > MOUSE_DOWN event. With the MOUSE_UP event, it's always set to 0. It
> > make things a little bit incoherent to code: to detect if an object
> > is "single-clicked", you have to add a callback on the MOUSE_UP
> > event, and to check if it is "double or triple clicked", you have
> > to add a callback on the MOUSE_DOWN event. But I can see a reason
> > why event->flags is not set for the MOUSE_UP event: it doesn't
> > always make sense: how do you estimate the time of the double
> > click? Between the first mouse down and the second mouse release?
> > Or between the first and the second mouse releases? ...
> 
> ok - the REASON for this is these flags come directly from ecore_x -
> as it determines a double or triple click and simply sets flags -
> thus it knows nothing about evas objects.  up events dont have this
> flag as the "click" is the mouse down event as such - well in
> ecore_x's view of the world, so a double click happens when a 2nd
> mouse down happens within a short enough time from a previous mouse
> down on the same window. triple is the same but withint another
> period from the first mouse down too. so that's why - evas doesnt
> process this
> - it simply shrugs and passes it on to the objects. now yes - you are
> right. evas shoudl be looking at the double and triple flags and if
> the objects receiving them have changed  between the last 1/2 events
> - unset those flags.
> 
> > So what do you guys think?
> > 
> > Regards,
> > Simon TRENY <MoOm>
> > 
> > 
> > -------------------------------------------------------
> > This SF.net email is sponsored by: Splunk Inc. Do you grep through
> > log files for problems?  Stop!  Download the new AJAX search engine
> > that makes searching your log files as easy as surfing the  web.
> > DOWNLOAD SPLUNK!
> > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
> > _______________________________________________ enlightenment-devel
> > mailing list enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > 
> 
> 


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to