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

Здесь обсуждается всё, что касается макросов.
User avatar
Xerox
Posts: 393
Joined: Sun 20 Oct, 2019 15:50
Has thanked: 354 times
Been thanked: 9 times

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

Post by Xerox »

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

https://github.com/dr-dba/LUA-FAR-STUFF ... .XeR0X.Lua

Last edited by Xerox on Fri 03 Jan, 2020 08:52, edited 47 times in total.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

Latest post of the previous page:

Добрый дедушка @XeRoX прислал подарков! :Yahoo!:
Теперь размеряльщик диалогов сохраняет заданные размеры между запусками,
т.е. при закрытии ФАРа и новом запуске.
Обращаю внимание, чтов в комплект входит самописный модуль для CRC32,
как обьяснил дедушка, оный нужен для диалогов и меню где не задан GUID,
тогда там с этим модулем вычисляется CRC32 и используется как GUID.
Dialog_ReXiZeR.XeR0X.7z
(6.14 KiB) Downloaded 27 times
Last edited by citRiks on Sat 29 Feb, 2020 08:54, edited 1 time in total.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

@XeRoX wrote:Надысь скрипт прошел рефакторинг чуть менее чем полностью,
первоначальной целью было "чуть-чуть подправить", которая быстро сменилась на "так жить нельзя"
Еще обусловлено требованием к производительности которая становится критична.
когда приходится перебирать каждый элемент диалога на предмет его "натыканий" на каждый другой элемент
Основное допилено, но осталось еще подопиливать
Желающие могут брать с ГитХаба
https://github.com/dr-dba/LUA-FAR-STUFF

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 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: 5779
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 142 times
Contact:

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

Post by zg »

citRiks wrote:
Wed 04 Mar, 2020 23:11
Остается вопрос, что делать, когда один и тот же ГУИД принадлежит разным диалогам\меню.
это баг. если где-то обсуждать это у себя на кухне — само не вылечится.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 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.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 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: 6070
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 301 times

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

Post by Shmuel »

Last edited by HaRT on Fri 06 Mar, 2020 00:07, edited 1 time in total.
Reason: Спрятан офтопик

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 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: 9339
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 100 times
Been thanked: 213 times

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

Post by HaRT »

 ! Message from: HaRT
Дискуссия про баны отделена. Прошу не офтопить (там тоже не).
Фар есть инструмент, а не нянька. © 2009 DrKnS

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 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.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

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

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

Аз есмь, аминь.
Dialog_ReXiZeR+CRC32.v1-1-7.(c@)Xer0X.7z
(7 KiB) Downloaded 19 times
Last edited by citRiks on Sat 07 Mar, 2020 11:07, edited 5 times in total.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

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

(этого пока нет, в планах:)
UserMenu и MainMenu будут идентифицироваться по CRC32 пунктов выбора, в них пункты выбора если и меняются, то редко
Attachments
Dialog_ReXiZeR.XeR0X.Lua.7z
(6.8 KiB) Downloaded 12 times
Last edited by citRiks on Mon 23 Mar, 2020 19:15, edited 1 time in total.

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

PS
очень может быть что стоит перейти целиком на идентификацию по сигнатуре,
так стабильных свойств елементов диалога набралось приличное количество,
скорее всего достаточное для создания уникальлного хэша

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

Пофиксены баги, чего-то там улучшено
Attachments
Dialog_ReXiZeR.v1-1-9.@Xer0X.Lua.7z
(7.4 KiB) Downloaded 9 times

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

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

Post by John Doe »

Для чего вы плодите вложения, если в шапке есть ссылка для скачивания?
https://t.me/FarManager — Telegram чат

citRiks
Posts: 511
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 149 times
Been thanked: 41 times

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

Post by citRiks »

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

Post Reply

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