Алкоголь и влюблённость – официальные спонсоры глупостей.

Меню навигации для мобильных

Lithiun ECAD - программа для разработки печатных плат

Автор Slabovik, 31 Янв., 2023, 19:34

« предыдущая - следующая »

Slabovik

#25
Добрый день.

Добрался до "порисовать" своего видения переноса инфостроки, которая внизу.
Но вначале повторю визуализацию простого варианта меню сеток.

WS-сетки-простые-плавающие.png

WS-сетки-простые-плавающие-компонент.png

Окошко "Сетки" располагается в рабочей области. По-умолчанию находится в левом верхнем углу. Мышью, зажатием левой кнопки на заголовке может перетаскиваться в любое другое место рабочей области и там оставаться. Вызывается-скрывается нажатием кнопки-пиктограммы в строке меню, либо установкой галочки в пункте меню "Вид"->"Сетки", а также горячей клавишей.

Клик ПКМ по заголовку окошка вызывает подменю (форму) для редактирования списка сеток ("Добавить", либо что-то посложнее).
Клик ПКМ по значению в списке сеток вызывает подменю "Удалить из списка".

Положение окошка должно сохраняться независимо от того, какой корпус или компонент в данный момент редактирует пользователь.

Но всё это можно не делать. Потому что внизу справа, по границе окна программы есть другое инфоменю и там тоже есть "Сетки", которые функционально дублируют функцию выбора рабочей сетки. Плюс там ещё есть координаты курсора (объекта), масштаб и количество выделенных элементов.

Предлагаю вообще убрать окошко "Сетки", располагающееся сейчас слева от рабочей зоны, а инфоменю поместить на чуть ранее предлагавшееся место для видоизменённых "Сеток". Вот примерно как я это представляю.

WS-инфоменю-бар.png

WS-инфоменю-бар-компонент.png

Панель полностью повторяет информацию из нижнего правого угла окна программы.

WS-инфоменю-сетки.png

WS-инфоменю-сетки-компонент.png

режим 1:
Одиночным нажатием ЛКМ по полю с индикацией размера сетки происходит выпадение меню со списком сеток.
После нажатия вне поля списка, выпавшее меню списка закрывается без изменений текущей сетки.
При нажатии ЛКМ на пункте списка, применяется сетка выбранного размера, после чего список закрывается.
При нажатии ПКМ на пункте списка вызывается подменю "Удалить из списка".
При нажатии ПКМ на поле с индикацией размера сетки, вызывается подменю "Добавить" (или чего посложнее).

режим 2:
Двойное нажатие ЛКМ на поле с индикацией размера сетки раскрывает список сеток на постоянной основе, т.е. после выбора сетки данный список не закрывается. Все подменю действуют точно также, как в режиме 1. Закрыть список можно повторным двойным кликом ЛКМ на поле с индикацией размера сетки.

! Кнопка "Сетки" в пиктографическом меню становится в общем-то не нужна.
зы: Аналогичное "режим 1" для сеток поведение можно сделать и пункту бара "Масштаб" с целью выставлять численно точный масштаб для отображения, потому что мышью это делать довольно затруднительно.
Также можно было бы добавить кнопку центровки - приведения центра компонента (точки привязки) к центру поля редактирования - это было бы полезно при потере редактируемого компонента из виду, когда не знаешь, в какую сторону крутить.

! При этом правая нижняя строка утрачивает свой смысл и может быть удалена, либо туда может быть помещена какая-нибудь другая, более второстепенная информация.

Слегка присмотревшись, нахожу, что окошко с выбором слоёв не является оптимальным. Его можно было бы заметным образом "упаковать" без снижения визуального восприятия и функционала. Вот как-то так

WS-слои.png

Окошко со слоями приобрело компактный вид. Подписи слоёв переместились выше, кнопка вызова меню настройки также легла привычно в правую часть заголовка (она, кстати, на 1 пиксель толще строки).
Слегка обрезал слова, imho смысл не теряется, но стало компактнее. Слово "Видимость" в заголовке легко можно заменить на "Слои" без потери смысла. Можно пойти ещё дальше, и убрать слово совсем, поместив на его место кнопу-пиктограмму для вызова настроек слоёв. Высвободится место справа для возможного отображения других слоёв - это более актуально для редактора плат. (зы: но единый стиль в кнопках тоже придётся уважить).

Окошко с мастером расположения массивов площадок считаю излишним этом месте. Мастер нужен очень не часто, было бы хорошо его убрать от постоянного созерцания, сделав вызываемым по кнопке. Кнопку можно расположить прямо здесь же (собственно, для мастера корпусов так и сделано). Высвободившееся место легко можно отдать под окошко с описанием, убрав его из-под окна редактирования, тем самым передав ему (окну редактирования) больше места (в итоге гораздо больше, чем забрало от него перенесённое инфоменю).

В общем, есть над чем поразмышлять :)
Общением на форуме подпитываю свою эгоистичную, склонную к самолюбованию сущность.

Lithium

Добрый день! Основательный такой пост :)

По поводу панели вверху, в целом идея понравилась, продумана. Но реализация будет довольно трудоемкой и потребуется много правок в различных местах. Я сохранил это на перспективу, можно будет вернуться к этой теме, когда программа будет иметь все хотя бы основные функции, как минимум это схемоблоки, интерактивный трассировщик и дифпары. 

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

Панель видимости слоев так сделать, признаться, даже не представляю как. Заголовок - это элемент окна, просто так туда элементы не добавить. Если кнопку вызова слоев разместить справа от галок, то панель станет шире, чего бы не хотелось. А еще в перспективе внизу могут добавиться другие элементы. Поэтому вариант спорный. Переименовать надписи можно, смысл действительно не теряется.

Описание компонента и корпуса желательно делать однострочным, т.к. в менеджерах простые списки и будет видна только первая строка. Справа конечно есть место для полного описания (я его тут сжал), но удобней, чтоб все было видно в списке. Поэтому панель ввода внизу редактора довольно узкая и есть желание ее сделать вобще однострочной, рабочего пространства станет чуть больше.


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

Панель группы площадок была сделана, чтобы хоть чем-то занять место справа. Сначала там было окно с привязанной 3D-моделью, но редактор долго открывался. Раздражало сильно, убрали. Потом была идея сделать все слои списком. Начали, посмотрели, не понравилось. Если оставить только свойства и слои - пусто смотрится. Может быть есть идеи, чем занять место, кроме описания? Пока рассматриваем только кнопки выравнивания, как в редакторе плат.

Slabovik

Описания сейчас и так многострочные, я полагал, что так и останутся. Может, пусть будут? Выход из ситуации при отображении в однострочных полях прост - при выводе в такое поле надо отфильтровать символы переноса строк, возврата каретки, табуляции, повторяющихся пробелов. Ну и лидирующий пробел (или табуляцию) тоже убрать (подстраховаться от любителей красных строк). Тогда вся инфа, которая помещается в поле вывода, будет отображена вне зависимости, как там пользователь навбивал, в одну строку или во много.

Можно пойти дальше и принудительно при записи в библиотеку делать такую очистку. Что бы ни написал пользователь, оно будет всегда однострочным. А при выводе в узкие, но многострочные поля автоматически переносить слова. Работы больше, но зато универсально.

Пустое место справа в редакторе посадочных мест может пусть и остаётся пустым? Разместить там кнопки вызова мастеров, какие сейчас есть (или какие может будут). Ибо сейчас там слегка путаница: кнопка "Мастер корпусов" логически расположена внутри уже открытого мастера контактных площадок, но функционал, как я понимаю, у неё свой, причём пересекающийся с мастером площадок. Ну, просто логика не выдержана. В идеале, это для пользователя один инструмент, с выбором - только ли контактные площадки он хочет, или вместе с корпусом.

Со слоями понятно. Там в таком случае надо капитально переделывать (точнее, изобретать свои) функции рисовки этих окошек (как я понимаю, вы какие-то готовые формы используете), а это всегда затратно.
Общением на форуме подпитываю свою эгоистичную, склонную к самолюбованию сущность.

Lithium

В идеале надо бы оставить многострочные. При выводе в списке убирать символы переноса, а в многострочном поле показывать полностью. Появилась идея, как можно сделать. 

Группы площадок в редакторе корпусов надо убирать, согласен, не совсем логично рядом группы и мастер корпусов. Но пустым место оставлять некрасиво. Надо что-то полезное придумать.




Slabovik

Ура! Вышла версия 1.7.8 :)
Как только вернусь с огорода, посмотрим, чего там новенького :)
Общением на форуме подпитываю свою эгоистичную, склонную к самолюбованию сущность.