Обработка событий от мышки

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
hig
Posts: 2
Joined: Fri 04 Jun, 2010 08:53

Обработка событий от мышки

Post by hig »

Добрый день!

Подскажите, пожалуйста, в какую сторону копать.

Как узнать на каком файле в панели пользователь ткнул мышкой? Или как обрабатывать сообщения мышки - WM_LBUTTON*, WM_MOUSEMOVE. Хочется сделать нечто вроде DragNDrop из фара.

Заранее спасибо.
Last edited by HaRT on Thu 11 Jan, 2024 21:42, edited 1 time in total.
Reason: Уточнён Заголовок Темы
User avatar
HaRT
Moderator
Posts: 10800
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 219 times
Been thanked: 353 times

Re: Обработка мышки

Post by HaRT »

hig wrote:Хочется сделать нечто вроде DragNDrop из фара.
Есть плагин Drag-n-Drop. Вроде бы работает даже в Фар2. Если хотите улучшить, попросите у автора исходники — вдруг даст. (Или они уже где-то выложены?)
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
John Doe
Бюрократ
Posts: 13792
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 424 times
Contact:

Re: Обработка мышки

Post by John Doe »

hig
Posts: 2
Joined: Fri 04 Jun, 2010 08:53

Re: Обработка мышки

Post by hig »

Спасибо, конечно за ссылку! Там все работает через хуки. Неужели подобный плагин как то проще нельзя было сделать. Думаю это из-за отсутствия соответствующего апи в фаре.
Дмитрий Журко
Posts: 81
Joined: Tue 19 Jan, 2021 21:49
Has thanked: 25 times
Been thanked: 1 time

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Дмитрий Журко »

Созрело обоснованное пожелание макрописателя.
Нужно, чтобы нажатие мышью на линейку F-клавиш посылало бы макросистеме соответствующее нажатие клавиши. Правой кнопкой -- с Alt.

Ведь можно определить и переопределить F-клавиши, их метки в нижней строке, но мыши это никак не касается почему-то. Так макро может стать равноправнее с основным кодом.
Пожалуйста.
User avatar
HaRT
Moderator
Posts: 10800
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 219 times
Been thanked: 353 times

Обработка событий от мышки

Post by HaRT »

Дмитрий Журко wrote: Thu 11 Jan, 2024 21:07 Нужно, чтобы нажатие мышью на линейку F-клавиш посылало бы макросистеме соответствующее нажатие клавиши. Правой кнопкой -- с Alt.
Я перенёс ваше сообщение в эту тему, т.к. эту функциональность нужно вносить в FAR API, а уже если/когда оно там будет, то можно и в Луа протащить.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Дмитрий Журко
Posts: 81
Joined: Tue 19 Jan, 2021 21:49
Has thanked: 25 times
Been thanked: 1 time

Обработка событий от мышки

Post by Дмитрий Журко »

HaRT wrote: Thu 11 Jan, 2024 21:44 Я перенёс ваше сообщение в эту тему, т.к. эту функциональность нужно вносить в FAR API, а уже если/когда оно там будет, то можно и в Луа протащить.
Спасибо. Я довольно долго пытался приспособиться, потому эта просьба кажется мне основательной.
Дмитрий Журко
Posts: 81
Joined: Tue 19 Jan, 2021 21:49
Has thanked: 25 times
Been thanked: 1 time

Обработка событий от мышки

Post by Дмитрий Журко »

Видится так:
Один клик, одно клавишное событие. То есть без двойного клика и пр., это обработать уже можно.
Если нажаты Ctrl, Alt, Shift, то соответственно, но правая кнопка добавляет Alt к Ctrl и Shift.

Так, мне кажется, прозрачно и просто, совместимо вниз.

Может быть, порождать псевдонажатие при клике? Даже без координат мыши это может быть сигналом. И координаты можно получить. Возможно, именно тут я ломлюсь в открытую дверь, не исследовал. Клавиши в far это описанные системные события операционной среды, я их так теперь воспринимаю. Даже предпочитаю вызову системной функции. Можно эту метафору развить. Нажатие кнопки мыши -- клавишное событие. Только этого уже достаточно, если координаты по всему окну far, F-клавиши мышью -- сахар.
Last edited by Дмитрий Журко on Thu 11 Jan, 2024 22:35, edited 2 times in total.
User avatar
buniak_a_h
Posts: 4225
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 219 times
Been thanked: 637 times
Contact:

Перехватывать нажатия мышки на кнопках линейки функциональных клавиш

Post by buniak_a_h »

Дмитрий Журко wrote: Thu 11 Jan, 2024 21:07 Нужно, чтобы нажатие мышью на линейку F-клавиш посылало бы макросистеме соответствующее нажатие клавиши.
У меня возражение (или я не всё понял).
Пример: у меня стоит макрос, который по Alt+F8, Alt+F11 и Alt+F12 вызывает просмотр соответствующей истории плагином AltHistory. Иногда (редко) хочется вызвать нативную историю. Сейчас я делаю это просто: клик мышкой по соответствующему ярлыку. Правильно ли я Вас понимаю, что при исполнении Вашего пожелания это станет невозможным?
На самом деле возникает слледующее предложение: предусмотреть клавишу для экранирования следующей комбинации.
Last edited by buniak_a_h on Fri 12 Jan, 2024 00:11, edited 2 times in total.
User avatar
HaRT
Moderator
Posts: 10800
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 219 times
Been thanked: 353 times

Перехватывать нажатия мышки на кнопках линейки функциональных клавиш

Post by HaRT »

 ! Message from: HaRT
Скрипт-специфичное обсуждение отделено.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
buniak_a_h
Posts: 4225
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 219 times
Been thanked: 637 times
Contact:

Обработка событий от мышки

Post by buniak_a_h »

HaRT, первое моё сообщение к скриптам не имеет никакого отношения. :-(
Last edited by HaRT on Fri 12 Jan, 2024 02:47, edited 1 time in total.
Reason: Вычеркнуто более не актуальное
Post Reply

Return to “Разработка плагинов”