Динамическое/заданное изменение размеров/ сдвиг любых диалогов, меню, списков в зависимости от размера консоли

Здесь обсуждается всё, что касается макросов.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое/заданное изменение размеров/ сдвиг любых диалогов, меню, списков в зависимости от размера консоли

Post by citRiks »

ВВИДУ ОТСУТСТВИЯ ОБЩЕСТВЕННОГО ИНТЕРЕСА (нет лайков)
ОБНОВЛЯТСЯ В ДАЛьНЕЙШЕМ НЕ БУДЕТ
(текущая/экспериментальная/обновленная версия находится у меня,
но дальнейшей синхронизации скорее всего не будет
если все-же. кому чего нужно, то пишите сюда,
скорее всего отвечу, и скорее всего быстро)

Предыстория вопроса
Современный мир характеризуется большим количеством больших экранов.
А также длинными именами файлов, и прочими "многа букав"
В то же время, размер диалоговых окон в ФАРе, не менялся десятилетиями,
обладая слишком малой величиной, чтобы полностью соответствать современным вызовам.
Более того, не было никакой возможности расширить окошки до приемлимых размеров даже вручную.
Но эти эти горести остались в далеком темном прошлом (смахивает слезу)
поскольку сейчас у нас есть Автоматический Раздвигатель Окон!

https://github.com/dr-dba/far-lua-dialogs-control


Этот "мануал/ридми" старый и не отражает всего функционала.
вопросы, пожелания - писать, опять же, см. начало текста
Last edited by citRiks on Fri 27 Aug, 2021 11:25, edited 50 times in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

Latest post of the previous page:

Добрый дедушка @XeRoX прислал подарков! :Yahoo!:
Теперь размеряльщик диалогов сохраняет заданные размеры между запусками,
т.е. при закрытии ФАРа и новом запуске.
Обращаю внимание, чтов в комплект входит самописный модуль для CRC32,
как обьяснил дедушка, оный нужен для диалогов и меню где не задан GUID,
тогда там с этим модулем вычисляется CRC32 и используется как GUID.

по просьбе администрации сайте сей атачмент удален, см. атачмент на последней странице темы
Last edited by citRiks on Wed 29 Apr, 2020 16:23, edited 3 times in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

@XeRoX wrote:Надысь скрипт прошел рефакторинг чуть менее чем полностью,
первоначальной целью было "чуть-чуть подправить", которая быстро сменилась на "так жить нельзя"
Еще обусловлено требованием к производительности которая становится критична.
когда приходится перебирать каждый элемент диалога на предмет его "натыканий" на каждый другой элемент
Основное допилено, но осталось еще подопиливать
Желающие могут брать с ГитХаба
https://github.com/dr-dba/LUA-FAR-STUFF
ГитХаба теперь нет и не будет, см. атачмент на последней странице
Last edited by citRiks on Wed 29 Apr, 2020 16:26, edited 1 time in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

@XeRoX wrote:Исправлены пара регрессий и некрасивостей, и все теперь работает как надо.
Остается вопрос, что делать, когда один и тот же ГУИД принадлежит разным диалогам\меню.
В принципе надо полностью доперевести все с ГУИДов на CRC32..
наверное на выходных будет и это доделано.
Если кому не терпится, то все на ГитХабе, там всегда стабильные и рабочие последние версии
Last edited by citRiks on Wed 04 Mar, 2020 23:13, edited 2 times in total.
User avatar
zg
zero-gravity
Posts: 6016
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by zg »

citRiks wrote: Wed 04 Mar, 2020 23:11Остается вопрос, что делать, когда один и тот же ГУИД принадлежит разным диалогам\меню.
это баг. если где-то обсуждать это у себя на кухне — само не вылечится.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

zg
шлет маляву:
@XeRoX wrote:если наткнусь - сообщу, воспроизвести не помнится-не удается.
кроме проблемы с тем что во всех главных меню (Commands, Options. Left, Right, etc),
есть такая анонимность:
----------------
Area.Current = "MainMenu"
Menu.Id = "00000000-0000-0000-0000-000000000000"
Dlg.Id = ""
OwnerGuid = "00000000-0000-0000-0000-000000000000"
Handle = "FarDialog (0x02fd4b58)"
----------------
Лечится?

Tакже неплохо бы приделать ГУИД или хотя бы хэндл к Серчу который анонимный и как чемодан без ручки:
-----------------
Area.Current = Search
Dlg.Id:
OwnerGuid: 00000000-0000-0000-0000-000000000000
Handle = 0
-----------------
так как было бы логично управлять размером и Серча, нельзя ли ему приделать хотя бы хэндл?
Как и к другим таким диалогам, чтобы по возможности у всех окошек был бы как минимум хэндл для управления и желательно ГУИД
Last edited by citRiks on Thu 05 Mar, 2020 10:31, edited 1 time in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

zg,
шлет такую весть, авторская орфография сохранена:
@XeRoX wrote:
Обнаружися Великий Баг такой, а может оное тайна сия есть,
и оному так и надобно быти, и повествую тако.
Заходиши ежели в настройки ПлугИнов , выбирамши НетБокс.
В оном НетБоксе конфигурацонное меню, обладаить:
Меню.Ид = "42E4AEB1-A230-44F4-B33C-F195BB654931"
Овнер.Ид = "42E4AEB1-A230-44F4-B33C-F195BB654931"
И тако кажити:

Code: Select all

 ╔══════════ NetBox  ══════════╗
 ║  Interface settings         ║
 ║  Confirmations              ║
 ║  Panel settings             ║
 ║  Transfer settings          ║
 ║  Background transfers       ║
 ║  Endurance settings         ║
 ║  Editor/viewer settings     ║
 ║  Logging settings           ║
 ║  Integration settings       ║
 ╟─────────────────────────────╢
 ║  About                      ║
 ╚═════════════════════════════╝
И далее, чего бы не выбирати, все одно будет БеседноеОкно тако:

Code: Select all

Dlg.Id = "42E4AEB1-A230-44F4-B33C-F195BB654931"
OwnerGuid = "42E4AEB1-A230-44F4-B33C-F195BB654931"
Handle = FarDialog (0x033b1680)
и вопрошаем, бого-угодно ли, чтобы даже ручка была у таких БеседныхОкон была одна и та же у всех надписана FarDialog (0x033b1680)?
PS
Как правильно отметил ZG:
zg wrote: Thu 05 Mar, 2020 19:08а написали бы, что во всех диалогах настройки нетбокса одинаковые гуиды
проблема в одинаковых ГУИДах НетБокса.
Отмечу лишь что еще @XerRoX-у мешают одинаковые "ручки" (то бишь handles) во многих разных диалогах.
И мешает совсем отсутствие Гуида в главном меню.
И предлагает добавить "ручки" (=handle) к диалогу Search, а то изменение размера совсем никак не сделать без этого.

Ну не может он говорить умно и по-иностранному, а я слабоват в скриптинге.
Ну как смогли обяснили вам, извиняйте если что.
 ! Message from: John Doe
Часть темы отделена в viewtopic.php?f=15&t=12058
Last edited by citRiks on Thu 05 Mar, 2020 20:45, edited 2 times in total.
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by Shmuel »

Last edited by HaRT on Fri 06 Mar, 2020 00:07, edited 1 time in total.
Reason: Спрятан офтопик
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

Last edited by HaRT on Fri 06 Mar, 2020 00:07, edited 1 time in total.
Reason: Спрятан офтопик
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by HaRT »

 ! Message from: HaRT
Дискуссия про баны отделена. Прошу не офтопить (там тоже не).
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

@XeRoX wrote: спроси ты друг, у благочестивых братьев на форуме,
использует ли кто​​ ReXiZeR с пользой, или уже можно оставить эту затею?
какъ продолжение того же вопроса, ​​ есть ли перспектива попасть в "​полезныя​ скрипты",
и от чего или кого это зависит?

Если же интереса не будетъ,
то я лишь для порядка, можетъ быть, собираюсь интегрировать с "aligner"-ом.
МОЖЕТ БЫТЬ.
или как возможно просто детектированіе любых ручных манипуляций​ с размеромъ и положением диалогов,
с целью восприятия и сохраненія их как "custom position+size".
Прямо сейчас, если двигать диалоги НЕ средствами этого скрипта,
и если хотим сохранить это изменение позиции/размера на будущее аки кастомное​​,
то тогда надо вдобавок сдвинуть окно СРЕДСТВАМИ скрипта хотя бы на одну позицію,
и тогда сохранится как ​​кастомное (можно сдвинуть на одну позицію и обратно)
Но лучше бы, чтобы alignment сохранялся какъ alignment, а не какъ сейчасъ абсолютная позиція.
Опять же, въ зависимости отъ общественнаго интереса

Аминь.
Админу спасибо за актуализирование этого сообщения, если можно передвиньте его еще раз в конец
Last edited by citRiks on Sat 07 Mar, 2020 11:01, edited 3 times in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

@XeRoX wrote: по предложению брата нашего А. Буняка, и в силу его великих заслуг на форуме, и из христианского нашего миролюбия,
добавлено восстановление усекновенного имени файла в разных БеседныхОкнах где оно усекается, как то:
* БеседноеОкно копирования
* БеседноеОкно передвижения/переименования
* БеседноеОкно атрибуций

и также починка багов имевших место быти.

Аз есмь, аминь.



по просьбе администрации сайте атачмент удален, см. атачмент на последней странице темы
Last edited by citRiks on Wed 29 Apr, 2020 16:22, edited 6 times in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

Приаттачена тестовая версия, идентификация по овнеру если он есть и сигнатуре,
т.е. ГУИД приходится игнорировать если есть Овнер.

(этого пока нет, в планах:)
UserMenu и MainMenu будут идентифицироваться по CRC32 пунктов выбора,
в них пункты выбора если и меняются, то редко
реализовано, смотреть атачмент на последней странице темы
Last edited by citRiks on Wed 29 Apr, 2020 16:17, edited 2 times in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

PS
очень может быть что стоит перейти целиком на идентификацию по сигнатуре,
так стабильных свойств елементов диалога набралось приличное количество,
скорее всего достаточное для создания уникальлного хэша
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by John Doe »

Для чего вы плодите вложения, если в шапке есть ссылка для скачивания?
https://t.me/FarManager — Telegram чат
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Динамическое или заданное изменение размеров ВСЕХ диалогов, меню, списков в зависимости от размера консоли, а ткж сдвиг

Post by citRiks »

John Doe,
по многим причинам из них первая что ссылка неправильная.
далее, когда есть что новое или починенное, то стоит об этом написать
можете мне дать редактирование заголовка - тоже вариант
Post Reply

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