I propose a new mouse selection mode - middle mouse button

Here you can propose new features, make suggestions etc.

Moderators: Hacker, petermad, Stefan2, white

whileloop
Junior Member
Junior Member
Posts: 2
Joined: 2009-06-17, 11:19 UTC

I propose a new mouse selection mode - middle mouse button

Post by *whileloop »

I suggest add one more mouse selection mode that use middle mouse button.

(1) Use middle mouse button to emulate behavior of ctrl+left mouse button in explore.

OR: select files like the right mouse button mode, but now use middle mouse button instead.

(2) When right click / left click outside selection, it behave like windows standard. (selection change / deselect)

(3) The right mouse keep the standard behavior. (no delay)
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

Support++ for using middle mouse button for selection the way like right mouse button selection works.
algol
Senior Member
Senior Member
Posts: 456
Joined: 2007-07-31, 14:45 UTC

Post by *algol »

Samuel wrote:Support++ for using middle mouse button for selection the way like right mouse button selection works.
Although, on second thought... Since the middle mouse button nowadays is a wheel in most cases, it might be an even better idea to use the right button for NC-style drag-selection and bring up the context-menu via a single middle-wheel-click instead. I have found dragging with a clicked-down wheel to be somwhat inconvenient at times.

greetings
algol
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Why not just to use any script that will execute cm_ContextMenu command on middle button click? Its quite easy to realize.
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Personally I wouldn't want TC to be interfering with Mouse "messages". It is trivial to use any number of external programs to customize a Mouse beyond what Windows or Logitech thinks you should be able to do with your mouse.

AutoIT, AutoHotKey, PowerPro, StrokeIt (to name just a few of them).

AHK, example, with restriction to only cause Ctrl+Click when the mouse is within the file panels.

Code: Select all

#ifWinActive, ahk_class TTOTAL_CMD
{
	MButton::
	{
		MouseGetPos, ,,, mControl2
		KeyWait, MButton
		MouseGetPos, ,,, mControl
		if( mControl2 <> mControl )
			MsgBox, ,, Cancelling Middle Button, 1
		else
		if( RegexMatch(mControl, "TMyListBox(1|2)") )
			Send, ^{LButton}
		else
			Send, {MButton}
	return
	}
return
}
Last edited by Balderstrom on 2009-10-28, 08:25 UTC, edited 4 times in total.
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

Such mouse click replacing scripts are either very complex or have side effects. If you use this script and add the close bracket, then there are no longer middle mouseclick down and up events. So if you press down middle mouse button the action is immediately. (and not after release like normally)

Also you can (by mistake) perform a double middle click and run a file! I am for an optional internal solution.
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Then add, KeyWait, MButton

Already within this thread there's been 2 differing views on what the 'action' for the middle-mouse should be. And this thread is basically talking about HotKey's for Mouse buttons, which I doubt would ever see the light of day within TC and has typically been in the realm of Scripting agents or mouse driver software. As such, Logitech's software already allows for assigning a keystroke to mouse buttons.
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

Then add, KeyWait, MButton
This does introduce other problems: You can't press down the middle mousebutton and release it somewhere else to cancel the click.

I would suggest an extended internal Hotkey system. Where its possible to set actions for mouse buttons as well.

[OT]IMO the Hotkey system should also extended for different places. (QuickSearch, Sync tool, Overwrite dialog, Lister, Button Bar, etc...)[/OT]
Last edited by Samuel on 2009-10-28, 14:12 UTC, edited 1 time in total.
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Samuel wrote:
Then add, KeyWait, MButton
This does introduce other problems: You can't press down the middle mousebutton and release it somewhere else to cancel the click.
Actually, it doesn't: The action isn't determined until the button is released, as opposed to when it is initially pressed. If you add "MsgBox, " in front of the two "Send," 's (as a test) You'll see: the regular 'Middle Button' will be done if the mouse isn't over the File Lists when the Middle Button is released.
Samuel wrote:I would suggest an extended internal Hotkey system. Where its possible to set actions for mouse buttons as well.

[OT]IMO the Hotkey system should also extended for different places. (QuickSearch, Sync tool, Overwrite dialog, Lister, etc...)[/OT]
I agree, but I advise against holding one's breath.
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

Actually, it doesn't: The action isn't determined until the button is released, as opposed to when it is initially pressed.
Thats right, but the action is always executed. If I press down the middle mousebutton and release it somewhere else I want to cancel the click. (As windows normally does.)

An example: Run script. Press middle mouse button in the file list and release it on the current tab. The tab is closed.
If you do the same if the script is closed the tab remains open.
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Samuel wrote:
Actually, it doesn't: The action isn't determined until the button is released, as opposed to when it is initially pressed.
Thats right, but the action is always executed. If I press down the middle mousebutton and release it somewhere else I want to cancel the click. (As windows normally does.)

An example: Run script. Press middle mouse button in the file list and release it on the current tab. The tab is closed.
If you do the same if the script is closed the tab remains open.
Ok, I fixed that.
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

Its still not side effect free. In TC the middle mousebutton click is also canceled if I press down the middle mousebutton on one tab, and release it on another tab. (but not with your script)

Another problem. I would like to use middle mousebutton the way the RMB selection works. (its not like ctrl+mouseclick, but like dragging from one file to another, selecting every file between them.)
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Yes. I enabled RMB (NC Mode) And a lot of Mouse fixes to make CTRL|Shift (Left) Click still work properly when NC Mode is active. Yet the auto-context menu if you hold the RightClick for a second or so (without releasing) is a serious annoyance... and not fixable without breaking NC Mode completely or just turning it back off.
*BLINK* TC9 Added WM_COPYDATA and WM_USER queries for scripting.
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Balderstrom wrote:Yet the auto-context menu if you hold the RightClick for a second or so (without releasing) is a serious annoyance...
You may use other way to open submenu. E.g. middle mouse-click or something else. I think you know that PostMessage(hMainWnd, WM_UER+51, cm_ContextMenu, 0) will tell TC to open context menu, so you may easilly assign this command to any key combination via script.
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

That's not the problem.

With LB Mode (Left Button Mode):
* CTRL|SHIFT Click can Select and Unselect files.
* Space and Insert can Select and Unselect files.
With RB Mode:
* CTRL|SHIFT Click can Select ONLY. (Buggy Behaviour)
* Space and Insert can Select and Unselect files.

With RB Mode:
* You get "sticky select".
* You can drag select & unselect, Yet
If you pause momentarily the context menu pops up. (Annoying Behaviour)

With LB or RB Mode (when cursor is on [..]):
* CTRL+Click on an item selects that item AND [..] (Buggy? Behaviour)
With RB Mode (when cursor is on [..]):
* RightClick selects the item only. (Good Behaviour)

To simulate RB Mode's proper treatment of [..] while using TC in LB Mode, you have to:
Click on a file, then CTRL+Click again, instead of just CTRL+Click once.

RB Mode gets a handful of interesting features, but it also breaks normal Left Click behaviour as well as the auto-popping Context Menu on right click (without release).

StickySelect and Drag (Un)Select should be separate from LB|RB Mode.

If DragSelect was a togglable option, You could:
* MiddleClick to turn it on, click drag (Selections) with LB or RB, and
* MiddleClick again to turn it off.
(Or any hotkey you liked)

If StickySelect was a togglable option, You could:
* RightClick (hold) + LeftClick to turn it on|off.
(Or any hotkey you liked)

The autopopping ContextMenu could be disabled, and one could force a
Context menu by: LeftClick (hold) + RightClick (and release).

If you want sticky select or drag select your only option is to enable RB Mode and deal with it's quirky behaviour.

Note: LeftClick Hold + RightClick and RightClick Hold + LeftClick have been in Opera since version 5 or 6 I believe: They cause Forward & Back page.
Post Reply