Help - Search - Members - Calendar
Full Version: foo_gestures 0.1
Hydrogenaudio Forums > Hosted Forums > foobar2000 > 3rd Party Plugins - (fb2k)
Phi
I figured this would be a handy feature to add to foobar. smile.gif

Features:
- native support of all main, context, and context/now playing commands
- gesture learning
- cancels gesture if no mouse motion detected for a specified time
- configuration of minimum gesture length
- allows key modifiers in combination with gestures (i.e., Ctrl/Shift/Alt)

Gestures are performed via middle-click-drag in any foobar window (or left/right-click drag in combination with key modifiers: ctrl, alt, or shift). Uses libstroke for gesture recognition. If you're wondering how the "gesture code" (in the interface) works, see standard strokes.

I hope somebody else finds this useful. tongue.gif

Latest version:
Plugin: foo_gestures-0.4.zip
Source: foo_gestures-0.4-src.zip (GPL)

Please post any bugs, suggestions, or feature requests to this thread or feel free to send me a PM.

-phi
EDIT: updated description for v0.4
Smiff
please allow an option for right-click-drag because that's what i use in all my other mouse gesture apps (unless there's some reason you can't?) great idea for a plug! will try it later.
sdbarker
http://www.tcbmi.com/strokeit

-Scott
Siku
Awesome Phi! It's working like a charm! As mentioned before, could you make the gestures work with some other mouse button, like right or left button?
sdbarker
Siku, if you check the link I posted, you'll find an application that'll add mouse gestures to ANY application that you want, to do anything you want, and it's not limited to the predefined 20 gestures. You can also configure it to work with your other mouse button.

-Scott
Andreasvb
Very cool plugin Phi, thanks.

As i'm using MyIE2, Mouse Gestures is very welcome =)

And I would like right button too, I'm sure StrokeIt is good too, but a plugin is better IMO. Thanks again.
Siku
sdbarker, I'm aware of that app but I don't want to use any external app to make mouse gestures. I prefer 'build-in' gestures like this plugin. But thanks anyway smile.gif

-Siku
Radion
Great! Please make global mouse gestures!!!
atici
I too know of StrokeIt but I find is applicability limited. If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.
gwaihir
QUOTE(atici @ Mar 8 2004, 10:55 PM)
I too know of StrokeIt but I find is applicability limited. If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.

Unless, i didn't understand you correctly, the gesture is available in 0.8 by default.
foosion
QUOTE(atici @ Mar 8 2004, 06:25 PM)
If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.

I seriously doubt that this will be possible with an arbitrary user interface, unless the user interface itself supports this.
Gemini
Cool plugin. I use mouse gestures all the time for browsing the internet, but never even thought about it for media players. Pretty interesting. smile.gif Being able to assign the mouse button would make this perfect.
atici
QUOTE
Unless, i didn't understand you correctly, the gesture is available in 0.8 by default.

Hey thanks. I never realized my wish has been granted. I checked it out and it works.

I am not so much a fan of StrokeIt to be honest, somehow its gesture recognition is not as smooth as Opera (sometimes it misses my gestures). I don't know how good libstroke is, but it's good to have alternatives.
Phi
QUOTE(Smiff @ Mar 8 2004, 10:23 PM)
please allow an option for right-click-drag because that's what i use in all my other mouse gesture apps (unless there's some reason you can't?) great idea for a plug! will try it later.

Right click drag (and left-click, for that matter) is already used in the core for drag and drop operations in the playlist. It may or may not be possible to override this, but I don't think its a very good idea anyway, so you will just have to get used to it wink.gif

I would prefer right-click myself too, but middle integrates into foobar a lot better.
Phi
QUOTE(Radion @ Mar 9 2004, 01:22 AM)
Great! Please make global mouse gestures!!!

I think StrokeIt would be more suitable for global gestures, but I might look into adding this anyway.
skwire
Unfortunately, the gestures don't work when tried on the secondary monitor of a dual-monitor setup. They work fine in the primary, though. If you want to fix this, I'd be more than happy to test it out for you as I run duals at both home and work.
Phi
QUOTE(skwire @ Mar 11 2004, 08:16 AM)
Unfortunately, the gestures don't work when tried on the secondary monitor of a dual-monitor setup.  They work fine in the primary, though.  If you want to fix this, I'd be more than happy to test it out for you as I run duals at both home and work.

Thanks for the report and offer to test. I think I've fixed the problem, I'll post a new version soon.
Phi
Okay, new version posted (see first post).

New in version 0.2:

- Fixed multi-monitor support (hopefully)
- Added gesture learning
- Will now cancel gestures if the mouse isn't moved for a certain amount of time

I'm pretty sure the multi-monitor support is fixed, if not feel free to post here and abuse me about it tongue.gif

PS:
I didn't think ahead in the initial version, so when you upgrade you will lose any gestures you had previously defined. Future versions won't have this problem though.
neoufo51
Love the new mouse gesture learning.

Replaygaining tracks doesnt seem to work, however. Is the Playback/Replaygain/Track command mean that it will replaygain whatever is highlighted in the playlist? Its not working for me.

Keep up the good work though.
Phi
QUOTE(neoufo51 @ Mar 13 2004, 11:48 PM)
Love the new mouse gesture learning.

Replaygaining tracks doesnt seem to work, however. Is the Playback/Replaygain/Track  command mean that it will replaygain whatever is highlighted in the playlist? Its not working for me.

Keep up the good work though.

Thats something I need to add to my todo list. At the moment I've only added support for the "main" commands (i.e., commands found on the main menu). I'll add the playlist commands sometime soon so that will get replaygain (and any other context command) working properly for you. I'm not exactly sure what the Playback/Replaygain/* commands are for.

Oh and thanks for the positive comments! biggrin.gif
Andreasvb
Thanks Phi.

Just a small bug I think, I can't get it to be Enabled, it resets all the time.
Phi
QUOTE(Andreasvb @ Mar 14 2004, 12:20 AM)
Thanks Phi.

Just a small bug I think, I can't get it to be Enabled, it resets all the time.

Fixed. Re-download from first link.

Thanks for the report!
Phi
Version 0.3 uploaded.

- Added support for context and context/now playing commands wink.gif
b-j
O.k. I give in. What's a Mouse Gesture?
Andreasvb
For a example, if you hold the middle button and then drag the mouse let say UP then RIGHT and then release the button you have performed a gesture. That gesture can you bind to an action, let say Next Playlist. So when you perform your gesture it changes playlist =)

Hold middle > Up > Right > Release > voila

Hope that cleared it up
Radion
Version 0.3 dont work with my foobra 0.8.When i start foo window appears with:

' Failed to find main FooBar2000 window '

what happend?
tk32
working great

although i'd love the ability for them to be made global, ideally so that i can skip tracks using the mouse while i am browsing the web

that seems like the best use i can think of for it, but if it's not possible then i understand

did i mention 'great work'

wink.gif
Phi
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears  with:

' Failed to find main FooBar2000 window '

what happend?

Are you using the default user interface for foobar or something else?
Phi
QUOTE(tk32 @ Mar 18 2004, 03:29 AM)
although i'd love the ability for them to be made global, ideally so that i can skip tracks using the mouse while i am browsing the web

that seems like the best use i can think of for it, but if it's not possible then i understand

I've been looking into this lately. Its definitely possible (I have it working already), but it will take some work before I have anything reliable to release.
QUOTE
did i mention 'great work'

wink.gif

Thanks smile.gif

PS. A global hide/show foobar command is also very handy wink.gif
bleh
QUOTE(Phi @ Mar 17 2004, 07:37 PM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears  with:

' Failed to find main FooBar2000 window '

what happend?

Are you using the default user interface for foobar or something else?

For getting a handle to the main window, it's really better to use core_api::get_main_window() than FindWindow(). That should make it work with other user interfaces (though, to be honest, I haven't bothered to compile the source with that modification and check).
lightbulb
How bout that... a plugin author on the BB4win crew just released a gesture plug for their win32 alternate shell.

Optimoz, what have you started? Someday we won't need keyboards :-p
Phi
QUOTE(bleh @ Mar 18 2004, 12:29 PM)
For getting a handle to the main window, it's really better to use core_api::get_main_window() than FindWindow().

Ahh yes, I'm suprised I missed that function in the SDK. I only knew about the FindWindow + GUID method from the foo_lirc plugin, so I'll add this in to foo_gestures as soon as I can. Thanks for the tip.
Radion
QUOTE(Phi @ Mar 17 2004, 04:37 PM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears  with:

' Failed to find main FooBar2000 window '

what happend?

Are you using the default user interface for foobar or something else?

I'm usign the newest Columns plugin!
RedSaint
I'm waaaitiiing smile.gif i'm looking forward to global mouse gestures. this is such a cool plugin - damn! with this and opera, and, and.. wow.. before I know it theres a shortcut to moving the mouse - which would be cool too
keep up the work.
Andreasvb
You can move the mouse, with the builtin mouse helper in Windows tongue.gif
It's not great, but it works. No idea for the gestures though, it's slow but you can hold shift to make it faster. And I doubt it's good with gestures haha
Phi
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
' Failed to find main FooBar2000 window '

0.3.1 Uploaded.

- Should work with all user interfaces now
Radion
QUOTE(Phi @ Mar 19 2004, 12:22 AM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
' Failed to find main FooBar2000 window '

0.3.1 Uploaded.

- Should work with all user interfaces now

BIG THX!!

i'm waiting now for global mouse gestures! rolleyes.gif
nIRV
nice swissknife tool ... it would be nice to put a configuration part where people could set their way to activate gesture caption ... i.e. its not nobody that has a middle button, hell, this computer doesnt - some other gesture programs uses different methods and somebody could want to immitate his/her favorite gesture program ...

so something like ctrl+alt+left button, ctrl+alt+right button, etc. you get my point
Phi
QUOTE(nIRV @ Mar 20 2004, 02:31 AM)
so something like ctrl+alt+left button, ctrl+alt+right button, etc. you get my point

Nice idea, thanks.

In the new version, just hold down whatever keys (combinations of Ctrl, Alt and Shift) you want when you first define the gesture in the preferences, and it will remember the keys used for each gesture individually. I've also added support for the left and right mouse buttons, but only in certain combinations with the modifier keys I describe above.

The following combinations are the ones I've disallowed (as they conflict with the default interface):

Left mouse (without a key)
Ctrl+Left mouse
Shift+Left mouse
Right mouse (without a key)
Shift+Right mouse

Everything else is fair game wink.gif

Plugin: foo_gestures-0.4.zip
Source: foo_gestures-0.4-src.zip
I've also added foo_gestures to the 3rd-party plugins site.

PS. No globals yet, give me a few weeks smile.gif
nIRV
very good smile.gif .. I think you should enable the ctrl+left key ... suppose I'm ctrl+left draggin items and I want to create a new playlist to put in, it would be cool with gesture to make a specific gesture while dragging and pop, a new playlist to drop the stuff smile.gif

thanks
Rogacz
nice1
skwire
QUOTE
I'm pretty sure the multi-monitor support is fixed, if not feel free to post here and abuse me about it


Apologies for the delay in getting back to you on this. Yep, they're working just fine in the secondary. Thanks a bunch. =]
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.