ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Здесь обсуждается всё, что касается макросов.
buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Sun 29 Sep, 2019 07:51

Макрос навеян этим:
PieApple wrote:
Thu 23 Jan, 2014 12:57
Еще хотел бы поделиться идеей, реализованной в Проводнике с Windows 7, Total Commander, что если нажать мышкой на имя папки в адресной строке сверху, то происходит переход вверх на эту папку.
На самом деле получилось прикольно и, возможно, полезно (если Вы любите настольных грызунов).
Суть:
Клик мышой на заголовке панели, содержащей имя папки, вызывает переход (как в проводнике). А если клик приходится на разделитель (бэкслэш), то предоставляется выбор, в какую папку перейти.
Первоначальный макрос сваян «на коленке» за полчасика, потому не судите строго. Если будут отзывы и замечания — попробую «докрутить».

Начиная с этой версии я перестал выкладывать текст скрипта в сообщении (уж больно трудоёмко стало, т.к. он вырос). Тем более что “Select all” на сайте опять перестал работать. Теперь только во вложении в виде 7z-архива.


Вместе с файлом самого скрипта поставляются языковые файлы ClickToTitleDirRus.lng и ClickToTitleDirEng.lng и файл помощи ClickToTitleDirRus.hlf.

ClickToTitleDir-1.4.7.7z
(22.83 KiB) Downloaded 41 times
Last edited by HaRT on Wed 06 Nov, 2019 20:42, edited 62 times in total.

buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Thu 07 Nov, 2019 10:21

Latest post of the previous page:

Last edited by HaRT on Thu 07 Nov, 2019 12:09, edited 1 time in total.
Reason: Спрятан офтопик

User avatar
John Doe
Бюрократ
Posts: 12460
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 198 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by John Doe » Thu 07 Nov, 2019 11:11

buniak_a_h wrote:
Thu 07 Nov, 2019 10:21
кстати о LuaCheck
Спасибо что напомнили, но в следующий раз пожалуйста используйте для этого соответствующую тему.
Чтобы не превращать свою в свалку оффтопика.

buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Thu 07 Nov, 2019 11:26


User avatar
John Doe
Бюрократ
Posts: 12460
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 198 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by John Doe » Thu 07 Nov, 2019 11:40

buniak_a_h wrote:
Thu 07 Nov, 2019 11:26
Я просто подумал, что здесь Вы бываете чаще,
Я читаю весь форум.
Но темы по своим скриптам - внимательнее чем прочие.
А в любых других сообщение имеет все шансы затеряться.
buniak_a_h wrote:
Thu 07 Nov, 2019 11:26
а перенести сообщение в Ваших силах...
Это дополнительная работа.
В данном случае я сознательно оставлю всё здесь.
Хотите засорять свою тему - на здоровье.

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 13:54

buniak_a_h, у меня уже давно есть одна идея по улучшению диалогового режима. Идея нацелена на то, чтобы мыше-ориентрированный пользователь быстрее и проще решил свою навигационную задачу.

По задумке диалоговый режим предназначен для длинных путей, которые не вмещаются в ширину заголовка. А по своей реализации диалоговый режим является модальным. Но при этом использует всё равно только ширину целевой панели.
Моя идея заключается в том, чтобы диалоговый режим использовал по необходимости бОльшую ширину — вплоть до полной ширины окна.

Тут есть два неоднозначных момента:
1. При использовании ширины, большей ширины заголовка целевой панели, строка пути в диалоге неизбежно сместится от своего положения в заголовке панели. (Особенно ярко это проявится для левой панели.) Это, на мой взгляд, оправданное неудобство, учитывая, что пользователь получает моментальный доступ к вдвое большей части пути (если не ко всему).
2. Если путь не вмещается в ширину окна, то диалог упрётся и влево, и вправо и станет не вполне ясно, какая панель целевая (особенно, если отвлечься, пока диалог активен). Это можно решить, используя другой символ или другой цвет для стрелки в сторону «нецелевой» панели. Я готов предложить варианты.

Как вам такая идея?
Фар есть инструмент, а не нянька. © 2009 DrKnS

buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Thu 07 Nov, 2019 19:38

HaRT wrote:
Thu 07 Nov, 2019 13:54
Как вам такая идея?
Не могу определить... Может, тупо сделать в настройке флажок (аналогично вложенным папкам) типа floating. Если установлен, то рисовать рамку вниз, и за эту рамку таскать диалог, а там, вроде, есть DN_DRAGGED - если диалог утащили со Y0()-й строки, то распахивать. А к какой панели относится - указывать в заголовке.
Надо смотреть, как это будет… У меня абсолютно не развито то полушарие, которое за образное мышление отвечает, поэтому я, пока не сделаю, оценить не могу.
P/S Впрочем, рамку, видимую вниз, можно рисовать в любом случае
Last edited by buniak_a_h on Thu 07 Nov, 2019 19:40, edited 1 time in total.

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 19:54

buniak_a_h wrote:
Thu 07 Nov, 2019 19:38
рисовать рамку вниз, и за эту рамку таскать диалог
Мне кажется, не надо усложнять. А лишние настройки так и вовсе зло. Надо по возможности сразу делать так, чтобы пользователь максимально эффективно решил свою задачу, без принятия лишних решений (каковыми являются и настройки-подстройки). Если вас моя идея в принципе заинтересовала, может, начнёте с простого?
Ну или давайте подождём пару дней, чтобы другие пользователи высказались: Yegor, Taciturn, citRiks, stefanenko и др.
Фар есть инструмент, а не нянька. © 2009 DrKnS

citRiks
Posts: 48
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 5 times
Been thanked: 1 time

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by citRiks » Thu 07 Nov, 2019 20:12

HaRT wrote:
Thu 07 Nov, 2019 13:54
По задумке диалоговый режим предназначен для длинных путей
buniak_a_h wrote:
Thu 07 Nov, 2019 19:38
рисовать рамку вниз, и за эту рамку таскать диалог
Очень даже за. И предпочтительно без лишних настроек без явной необходимости. Типа если только кто-то станет обоснованно возражать.
buniak_a_h wrote:
Thu 07 Nov, 2019 08:43
у far.Menu нет возможности определить наличие и тип рамки
Похоже, что Ваши чаяная услышаны:
shmuel 07.11.2019 12:15:11 +0200 - build 5504

1. API-функция Menu() - добавлены флаги для управления показом и видом рамки меню
Last edited by HaRT on Thu 07 Nov, 2019 20:15, edited 1 time in total.
Reason: Исправлено форматирование цитаты

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 20:16

citRiks wrote:
Thu 07 Nov, 2019 20:12
предпочтительно без лишних настроек
Размер диалога, который надо самому выставлять, — это тоже настройка, но пользователю на самом деле надо не таскать рамку, а перейти в целевую директорию. Поэтому я и предложил сразу выставлять наиболее подходящую ширину диалога.

22:22 MSK
К тому же у ручного выставления ширины есть и ещё один недостаток: оно привязано к текущей длине пути и текущей ширине окна. Как только что-то изменилось, уже не факт, что выставленная в прошлый раз ширина наилучшая. А ширина, высчитанная автоматически, этого недостатка лишена.
Last edited by HaRT on Thu 07 Nov, 2019 20:22, edited 1 time in total.
Reason: Добавлен второй абзац
Фар есть инструмент, а не нянька. © 2009 DrKnS

citRiks
Posts: 48
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 5 times
Been thanked: 1 time

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by citRiks » Thu 07 Nov, 2019 20:29

HaRT wrote:
Thu 07 Nov, 2019 20:16
сразу выставлять наиболее подходящую ширину диалога
Да, пожалуй, так бы лучше, чем таскать. Но тогда, желательно, по двойному клику или иначе как то иметь возможность возвращать диалог к размеру панели.

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 20:45

citRiks wrote:
Thu 07 Nov, 2019 20:29
желательно, по двойному клику или иначе как то иметь возможность возвращать диалог к размеру панели
А для чего?
Но вообще я не возражаю против того, чтобы можно было переключать между максимизированным и нормальным состоянием. С клавиатуры это можно было бы делать по F5 (подобно окну Справки и примкнувшему к нему списку ошибок LuaCheck).
Фар есть инструмент, а не нянька. © 2009 DrKnS

Yegor
Posts: 1031
Joined: Mon 04 Apr, 2005 13:41
Location: San Ramon, CA / Kharkov, UA
Has thanked: 8 times
Been thanked: 20 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by Yegor » Thu 07 Nov, 2019 22:06

Я пользуюсь непосредственным режимом и меня текущее положение вещей устраивает.
Диалог настроек перекомпонован таким образом, чтоб всё помещалось.
У меня нет (см. Keyboard shortcut строку):

Code: Select all

╔════════════════════ ClickToTitleDir: settings ═════════════════════╗
║                                                                    ║
║            Frame type: ( ) none (•) single ( ) double              ║
║    [x] Draw margins       [ ] With header                          ║
║    [ ] Assign hotkeys automatically                                ║
║    [x] Loop subdirectory selection                                 ║
║    [?] Show hidden directories                        [x] :Double  ║
║    Keyboard shortcut for the “dialog” mode: [ AltT:Dou[ ] :Hold    ║
╟───────────────── Color Setup for the “dialog” mode ────────────────╢
║               ◄  P:\ath\to\the\directory  ►                        ║
╟────────────────────────────────────────────────────────────────────╢
║                  { Save } [ Cancel ] [ Default ]                   ║
╚════════════════════════════════════════════════════════════════════╝
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 22:10

Yegor wrote:
Thu 07 Nov, 2019 22:06
У меня нет (см. Keyboard shortcut строку)
Это у вас версия 1.4.6, в версии 1.4.7 не так.
Yegor wrote:
Thu 07 Nov, 2019 22:06
Я пользуюсь непосредственным режимом и меня текущее положение вещей устраивает.
А если путь длинный и не влезает в заголовок панели?
Фар есть инструмент, а не нянька. © 2009 DrKnS

buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Thu 07 Nov, 2019 22:17

Yegor wrote:
Thu 07 Nov, 2019 22:06
У меня нет (см. Keyboard shortcut строку):
Не-не, это старая версия. Скриншот настройки от версии 1.4.7 - в первом сообщении темы, в описании версии 1.4.7, в спойлере «аналог Hint»

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 22:41

buniak_a_h wrote:
Thu 07 Nov, 2019 22:17
Скриншот настройки от версии 1.4.7 - в первом сообщении темы, в описании версии 1.4.7, в спойлере «аналог Hint»
Кстати, хорошо бы и в Справке обновить.
Фар есть инструмент, а не нянька. © 2009 DrKnS

buniak_a_h
Posts: 1128
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 48 times
Contact:

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by buniak_a_h » Thu 07 Nov, 2019 22:55

HaRT wrote:
Thu 07 Nov, 2019 22:41
Кстати, хорошо бы и в Справке обновить.
Не нашёл способа указать цвет иначе чем в диапазоне 00-FF
<CtrlColorChar>XX Задаёт цветовые атрибуты, которыми будет отрисован следующий за этой конструкцией текст. Цветовые атрибуты XX - две шестнадцатеричных цифры (0-9A-F).
Без этого невозможно нарисовать цвета и курсив, которые я для подсказки сделал. Не знаете, я плохо смотрел, или такого нету?

User avatar
HaRT
Moderator
Posts: 9105
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 164 times

ClickToTitleDir — переход к папкам по щелчку на заголовке панели (и др.)

Post by HaRT » Thu 07 Nov, 2019 23:23

buniak_a_h wrote:
Thu 07 Nov, 2019 22:55
Без этого невозможно нарисовать цвета и курсив
Да и ладно, лишь бы общий вид соответствовал. Курсив — это прерогатива ConEmu, а цвет по идее должно быть можно вставить любой, который отображается в самом Фаре (без ConEmu). Но я не разбирался.
Фар есть инструмент, а не нянька. © 2009 DrKnS

Post Reply

Return to “Обсуждение макросов”