Command: ListerDoubleClick (adds qualifier evaluation)

DO v13 and up (updated 2023/12):

  • If you only want to run a single line / command for background events, then this script does not offer any benefit with DO v13 any longer other than being easier to edit externally maybe - just a maybe.
    Most users probably are fine without this script in DO v13 where qualifiers (shift, ctrl, etc.) and different commands can be setup directly in the preferences.

  • If you want to run more complex stuff for a specific background event, you can still use the script I guess, it still makes sense. You can use "User Commands" as well for more complex tasks, but as mentioned, it is probably much easier to edit this script in an external editor, since you don't need to hop in and out of the customize mode when testing / enhancing your event handling.


ListerDoubleClick - Script command which dispatches doubleclicks onto the listers background based on the qualifiers pressed.

Description:
You probably already doubleclick the listers background to go back one folder. I use it all the time. Now with this tiny command, you can have different actions performed, based on what key you press while doubleclicking. The provided script adds SHIFT+DClick to copy the lister path to clipboard and CTRL+DClick to go to the path in the clipboard. Multiple qualifiers are supported for new ideas, a regular doubleclick works as before.

This script is a bit different from the usual stuff, as it looks for event functions itself, just like DO does.
So if you like to have SHIFT+CTRL to switch to thumbnails mode, you simply create a function like this:

Using this technique saves you from creating unthinkable constructs, to cover every combination of qualifiers there is, by merely using 15 lines. The parameters "data" and "cmd" translate to scriptCommandData and scriptCommandData.func.command (for conveniance).

Download:

Installation - Opus 12 (and above):

  • Download the lastest *.js.txt file above and drag it to the list under Preferences / Toolbars / Scripts.

  • Edit the script to add/remove

  • Go to Preferences / File Displays / Mouse and set Double-click on file display background to run the command ListerDoubleClick:

  • Now it's ready to use, edit the script to set your functions as desired. You can also enable debug output in the script's config section.

Installation - Opus 11:

  • Download the latest *.js.txt file above and drag it to the list under Preferences / Toolbars / Scripts.

  • Create a new user command called "ListerDoubleClick_UC" and insert the new script command "ListerDoubleClick" (names need to be different).

    Opus11_1

  • Then enter the prefs dialog and choose the user command to execute when doubleclicking the folder background.

  • Now it's ready to use, edit the script to set your functions as desired. You can also enable debug output in the script's config section.

2 Likes

@tbone, I love this script. I am using it on alt, shift and ctrl qualifiers.

Would it be possible to extend it to use a right-double-click event?

Thanks, I'm glad to hear. o)
Fetching a right double click is not possible currently, because DO does not trigger any event or user-command if you dclick-right.

Found that today, nice!

Hi tbone,

I run a user command for similar functionality. Does your script offer anything different to this?

@keydown:none
Go BACK UP
@keydown:ctrl
Go ROOT
@keydown:alt
Go BACK UP
Set QUICKFILTER=!prev
@keydown:ctrlshift
Go /mycomputer NEWTAB=findexisting 

@blueroly: No difference, using yours now because UC is more "compact" than running via script. Thanks!

Precisely what I thought, thanks for confirming Sasa.

The event-based script enriches the current event-system of DO, as there was no OnDoubleClickListerBG() event yet. Its major benefit is to raise consistency on how things work in DO v11. The usercommand-way of handling the doubleclick onto a listers background is a left-over to my eye, and does not fit to how the other events are implemented. This is especially true for OnClick() and OnDoubleClick(), which are available by scripting only, not by creating and placing usercommands somewhere deep into the prefs.

Those, who don't like consistency raise their hands now! o)

An external resource is also much easier to edit and testdrive than using the usercommand-editor with its drawbacks (a lot of clicks necessary, cannot run code directly etc.).

For anyone migrating/using the script in Dopus 13, the last step of setup changed a bit, causing script to break:

@tbone If you don't mind, change instructions in you post, your script is still useful after almost 10 years :muscle:

Please excuse my ignorance, but v13 has a preference page that allows you to do exactly what his script is offering, doesn't it? You are even showing it in the screen shot you just posted. I'm totally lost on what the script is doing that v13's changes/upgrades isn't?

I am not trolling here I am seriously just trying to understand the difference. @tbone I have a religious level of respect for your scripts and use nearly every one I come across. This is the first one I've been confused as to its purpose.

Haha good point travibe, my bad :innocent: I was in the middle of the work and just wanted to fix the issue.

But at the other hand, figuring out what functions I should call to get same, already configured, functionalities doesn’t seem worth the time.

Anyway, both new and existing users will benefit from adding the information to the main post, if the script is no longer needed or how to get it back to work after upgrade to v13

1 Like

For DO v13:
If you only want to run a single line / command for background events, then this script does not offer any benefit with DO v13 any longer other than being easier to edit externally maybe - just a maybe.
Most users probably are fine without this script in DO v13 where qualifiers (shift, ctrl, etc.) and different commands can be setup directly in the preferences.

If you want to run more complex stuff for a specific background event, you can still use the script I guess, it still makes sense. You can use "User Commands" as well for more complex tasks, but as mentioned, it is probably much easier to edit this script in an external editor, since you don't need to hop in and out of the customize mode when testing / enhancing your event handling.

EDIT: Also updated thread opening, so things are more easy for the newbies.