Im going to reply to your post from Columns UI thread here since this is where most of the discussion is (and its pretty much same as a post above).
QUOTE(Wiesl @ Jul 2 2007, 17:05)

Hello!
I wanted to add the following feature:
I plan to implement a Foobar2000 plugin with the following features:
From the currently selected playlist the marked items (1 or more) should be added through a double click to another playlist:
1.) Add to the hardcoded playlist e.g. Default
2.) Add to the hardcoded playlist queue e.g. Playlist Queue
3.) Add to the current playing playlist.
1.) with context menu is already implemented, but I don't know how to hook the double click. Any hints for the API calls?
BTW: Can someone explain the differences between a playlist queue vs. normal playlist. How is the order of playment.
See
http://www.hydrogenaudio.org/forums/index....showtopic=55893for details.
But according to the SDK license this might not be allowed.
=> Feature request to foo_ui_columns to implement a double click hook.
Yes its possible to make such an API. But it gets complicated: as already mentioned a playlist lock can already override this. Now you would want those to behave as expected. Then also you have the fact that your component will depend on specific UI/playlist view modules. It is possible for the first issue to be worked around, although personally I prefer to leave custom actions like these to e.g. middle click. There's another issue, you mention "1 or more" items but you should know that double clicking an item will select it exclusively.
Now there is no API to do it, but a 'hook' on playlist_manager::playlist_execute_default_action will at least remove the UI module dependency (up to the active playlist view being well written).
BTW at least in the Columns UI playlist switcher you can disable the activation of the target playlist when dropping items on it. So sending tracks to some playlist should be fairly painless with drag and drop. You also won't have to change a setting depending on which playlist you wish to send the items to (!)
QUOTE(Wiesl @ Jul 2 2007, 17:05)

BTW: Why is it allowed for foo_ui_columns to use such hooks and not for other plugins?!?!?
Well for a start there's no hooking involved. The active UI is the component that provides the playlist view (it could be implemented in another component though). The default Columns UI playlist view uses a custom control so it receives its own double click notifications. But even if it was using a list box/view control, those send double click notifications so still there's no hooking involved.
Even if it did want to hook its own list control that would be OK because it's its own window. Remember its equally outside of the foobar2000 API to call CreateWindow to create the list control in the first place! As mentioned the comment in the SDK refers to messing with other components outside of their or foobar2000's documented APIs.