Страница 2 из 3

Добавлено: Вт авг 21, 2007 18:38
sergeich
Новая версия 1.4
Добавлено: переключение режимов средней кнопкой мыши, автозагрузка программы...

Добавлено: Вт авг 21, 2007 22:36
funduk
Кстати, ты бы завёл себе профиль в вике, чтобы народ знал, кто из аддонописателей сам в список свои аддоны добавляет.

Добавлено: Вт авг 21, 2007 22:47
sergeich
funduk писал(а):Кстати, ты бы завёл себе профиль в вике, чтобы народ знал, кто из аддонописателей сам в список свои аддоны добавляет.
завел. надеюсь, народ теперь все знает :-)

Добавлено: Пн апр 26, 2010 13:34
JKT
Киньте плиз куданить на обменку - ссылка умерла

Добавлено: Пн апр 26, 2010 14:07
Bomm

Добавлено: Пн апр 26, 2010 17:45
JKT
Спасибо
Эх, жаль, что там ненастраивается время этого удержания кнопки, частенько ложно срабатывает при перетаскивании, видать надо попривыкнуть, но всеравно удобно (любителям мышей)

Добавлено: Пн июл 01, 2013 22:45
Mailk
Где сама прога ? все ссылки битые .

Добавлено: Пт июл 05, 2013 18:02
Flasher
Добавил в лист.

Добавлено: Пт авг 02, 2013 15:05
mf-zl
TotalMouseEX v0.1a by zL
AutoHotkey_L v1.1.1.00 Unicode

Зажатие левой кнопки - F3
Клик средней - F4

Код: Выделить всё

#SingleInstance force

#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")

~LButton::
  If LPress {
    LPress += 1
    Return
  } LPress = 1
  SetTimer, LPress, On
Return

MButton::
  Click
  Send, {F4}
Return

LPress:
  SetTimer, LPress, Off
  If (LPress = 1)
	{ KeyWait, LButton, T0.4
    If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD"))
    { Click
      Send, {F3}
    }
	} LPress = 0
Return

MouseUnder(Controls) {
  MouseGetPos,,,, Control
  If RegExMatch(Control, Controls)
    Return, True
}

Добавлено: Сб авг 03, 2013 10:31
Avada
mf-zl
Интересное решение. Кстати, более удобно работает со средней кнопкой, чем утилита: там использование для других целей средней кнопки блокировалось в окне TC везде, здесь — только в файловых панелях.
А можно ли сделать вариант, где для средней кнопки — не клик, а зажатие, причём только при статичном положении мыши, без перетаскивания? Это позволило бы, например, также включать в файловых панелях TC функционал автоскроллинга или использовать прямоугольное выделение в стиле TWinKey.

Добавлено: Вс авг 04, 2013 00:46
mf-zl
Avada, можно :wink:

Прилепил статику и на левую кнопку.
Также добавил пример двойного клика средней кнопкой - выделяет расширения под курсором

Код: Выделить всё

; TotalMouseEX v0.3 by zL
; AutoHotkey_L v1.1.1.00 Unicode

#SingleInstance force

#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")

~LButton::
  If LPress {
    LPress += 1
    Return
  } LPress = 1
  SetTimer, LPress, On
Return

~MButton::
  If MPress {
    MPress += 1
    Return
  } MPress = 1
  SetTimer, MPress, On
Return

LPress:
  SetTimer, LPress, Off
  MouseGetPos, x0, y0
  If (LPress = 1)
  { KeyWait, LButton, T0.4
    MouseGetPos, x1, y1
    If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
    { Click
      Send, {F3}
    }
  } LPress = 0
Return

MPress:
  SetTimer, MPress, Off
  MouseGetPos, x0, y0
  If (MPress = 1)
  { KeyWait, MButton, T0.4
    MouseGetPos, x1, y1
    If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
    { Click
      Send, {F4}
    }
  } Else, If (MPress = 2)
  { Click
    Send, !{NumpadAdd}
  } MPress = 0
Return

MouseUnder(Controls) {
  MouseGetPos,,,, Control
  If RegExMatch(Control, Controls)
    Return, True
}

Добавлено: Вс авг 04, 2013 11:07
Avada
mf-zl
Спасибо. Сообщаю результаты тестирования.
С левой кнопкой всё OK, изменение со статикой подтверждаю.
Со средней — хуже. В чистом TC работа скрипта зависит от возможности автоскроллинга в текущей файловой панели (то есть есть ли куда крутить). Если прокрутка невозможна — срабатывают и одинарный, и двойной клик. Если возможна — средний клик сразу же включает режим автоскроллинга (появляется маркер), далее скрипт не срабатывает.
Одиночный длинный клик средней кнопкой в настроенном TC с включённым TWinKey (это мой штатный режим) в новой версии скрипта F4 не обрабатывает, только выделяется файл под курсором. Двойной щелчок (выделение по расширению) срабатывает, но почему-то со второго раза. Проверил настройки TWinKey, при отключении там опции, позволяющей средней кнопкой выставлять рамочное выделение, F4 начинает обрабатываться.
С отключённым (выгруженным по cm_UnloadPlugins) — TWinKey средняя кнопка работает ровно по тем же правилам, что в чистом TC.
То есть автоскроллинг работу скрипта явно блокирует. И "рамочная" фича TWinKey, похоже, тоже. Но её на крайний случай отключить можно, а автоскроллинг — нет. Такие дела.
P.S. И не надо было весь мой пост цитировать.

Добавлено: Вс авг 04, 2013 13:12
mf-zl

Код: Выделить всё

#Persistent
#SingleInstance force

Prj = TotalMouseEX v0.5 by zL

Tray:
  Menu Tray, Tip, % Prj
  Menu Tray, Icon, main.cpl
  Menu Tray, NoStandard
  Menu Tray, Add, &About, About
  Menu Tray, Add
  Menu Tray, Add, E&xit, Quit
  Menu Tray, Default, &About
Return

About:
  MsgBox 8256, % Prj,
  (LTrim
    Long press left mouse button to view file in lister
    Long press middle mouse button to edit file
    Double click middle mouse button to select files with same extension
  )
Return

Quit:
ExitApp

#If WinActive("ahk_class TTOTAL_CMD") and MouseUnder("TMyListBox[12]")

~LButton::
  If LPress {
    LPress += 1
    Return
  } LPress = 1
  SetTimer, LPress, On
Return

MButton::
  If MPress {
    MPress += 1
    Return
  } MPress = 1
  SetTimer, MPress, On
Return

LPress:
  SetTimer, LPress, Off
  MouseGetPos, x0, y0
  If (LPress = 1)
  { KeyWait, LButton, T0.4
    MouseGetPos, x1, y1
    If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
    { Click
      Send, {F3}
    }
  } LPress = 0
Return

MPress:
  SetTimer, MPress, Off
  MouseGetPos, x0, y0
  If (MPress = 1)
  { KeyWait, MButton, T0.4
    MouseGetPos, x1, y1
    If (ErrorLevel && WinActive("ahk_class TTOTAL_CMD") && (x0 = x1 && y0 = y1))
    { Click
      Send, {F4}
    } Else, Send, {MButton}
  } Else, If (MPress = 2)
  { Click
    Send, !{NumpadAdd}
  } MPress = 0
Return

MouseUnder(Controls) {
  MouseGetPos,,,, Control
  If RegExMatch(Control, Controls)
    Return, True
}

Добавлено: Вс авг 04, 2013 15:56
Avada
mf-zl
Прогресс есть. В TC, где не включено рамочное выделение TWinKey, длинный средний щелчок срабатывает нормально, автоскроллинг по короткому щелчку тоже работает. Конфликта нет. Двойной средний клик срабатывает почему-то со второго либо третьего раза (первый раз включается автосроллинг).
При включённом рамочном выделении теперь работает только скрипт. Он блокирует создание рамочного выделения (средняя кнопка при перетаскивании), а включённая — пусть и неработающая — фича TWinKey блокирует автоскроллинг (но последнее — отдельный вопрос не для этой темы). Двойной средний щелчок срабатывает всегда по второму разу.
Добавление мини-справки — это тоже хорошо. :)

Добавлено: Вс авг 04, 2013 16:39
mf-zl
Avada
странно! у меня всё срабатывает с первого раза, на чистом и не очень тк! :shock:
давай разбираться с TWinKey - скинь свой конфиг...

Обновления будут тут:
http://ghisler.ch/board/viewtopic.php?p=267739#267739