Page 1 of 1

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 16:38
by John Doe
Фар динамически вычисляет ширину колонок, значение которых указано как 0, или выражено в процентах.
Однако при изменении размеров панели в ряде случаев ширина может получиться недостаточная.

Пример.
В распахнутом на весь экран виде на каждой панели свободно умещается по 5 колонок N,N,N,N,N.
При этом иногда есть необходимость уменьшить размер фара (либо только одной панели), и в текущей реализации это приводит к тому, что колонки получаются бесполезно узкими, и приходится менять режим панели вручную.

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

Update: https://bugs.farmanager.com/view.php?id=3682

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 16:48
by DrKnS
Синтаксис?

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 16:59
by John Doe
Для N,N,N:

Code: Select all

0[11],0[11],0[11]
или

Code: Select all

11-0,11-0,11-0
Или что угодно.

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 17:50
by HaRT
DrKnS wrote: Tue 13 Nov, 2018 16:48Синтаксис?
Можно как интервалы в регэкспах: {E}, {L,U}, {L,}, {,U} (буквы обозначают числа: Exactly, Lower, Upper). Или как диапазоны много где: E, L-U, L-, -U — это даже является расширением текущего синтаксиса (с той разницей, что за нулём остаётся специальное значение).

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 19:40
by DrKnS
Как вариант:
10%<5 - 10%, но не более 5 символов
0>9 - автоматически, но не менее 10 символов

Минимальная ширина колонки

Posted: Tue 13 Nov, 2018 20:13
by HaRT
DrKnS wrote: Tue 13 Nov, 2018 19:40 Как вариант:
10%<5 - 10%, но не более 5 символов
0>9 - автоматически, но не менее 10 символов
Кстати, да, про проценты-то я и забыл. В таком раскладе и впрямь разумно ввести операторы больше/меньше.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 09:43
by John Doe
HaRT wrote: Tue 13 Nov, 2018 20:13 В таком раскладе и впрямь разумно ввести операторы больше/меньше.
В таком раскладе возможно и одновременное их использование, а указывать интервал операторами >< уже как-то громоздко.
  • 10%{2} не менее 2
  • 10%{-4} не более 4
  • 10%{2-4} 2-4
  • 0{2-4}, {2-4} ноль можно опускать.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 10:54
by LAT
Если планируется одновременное использование, может, лучше записывать универсально, с обязательным указанием нижней и верхней границы?
[0-2] - не больше 2 включительно
[2-4] - от 2 включительно до 4 включительно
[2-1000] - не менее 2 включительно
И если планируется одновременное использование с процентами, может получится так, что значение в процентах не попадет в интервал: например, если 10%=5, и одновременно указано [2-4].

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 11:17
by John Doe
LAT wrote: Wed 14 Nov, 2018 10:54 может, лучше записывать универсально, с обязательным указанием нижней и верхней границы?
Зачем? Сообщением выше всё учтено, и довольно компактно получается.
LAT wrote: Wed 14 Nov, 2018 10:54 И если планируется одновременное использование с процентами
Разумеется.
А интервал служит ограничением именно на случай, когда вычисленное значение в него не попадает.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 12:51
by LAT
John Doe wrote: Wed 14 Nov, 2018 11:17
LAT wrote: Wed 14 Nov, 2018 10:54 может, лучше записывать универсально, с обязательным указанием нижней и верхней границы?
Зачем? Сообщением выше всё учтено, и довольно компактно получается.
Чтобы видеть границы сразу, а не задумываться на пару секунд, "просто 2" или "-4" - это какая граница? Но это имхо.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 12:59
by HaRT
John Doe wrote: Wed 14 Nov, 2018 09:43 указывать интервал операторами >< уже как-то громоздко
Не вижу тут никакой громоздкости: 10%>1<5. Но мне непринципиально.
John Doe wrote: Wed 14 Nov, 2018 09:4310%{2}
При формальной непротиворечивости, на мой взгляд, это немного сбивает при чтении, потому что традиционно означает «ровно 2».
John Doe wrote: Wed 14 Nov, 2018 09:43 ноль можно опускать
А вот это, мне кажется, нежелательно, потому что сильно уменьшит интуитивность.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 13:07
by HaRT
Кстати, если всё же несколько поступиться читабельностью, то можно обойтись единственным дополнительным символом (например, :): E, 0:L:U, 0::U, 0:L:, P%, P%:L:U, P%::U, P%:L:.
HaRT wrote: Tue 13 Nov, 2018 17:50(буквы обозначают числа: Exactly, Lower, Upper)

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 13:19
by John Doe
HaRT wrote: Wed 14 Nov, 2018 12:59 А вот это, мне кажется, нежелательно, потому что сильно уменьшит интуитивность.
Какой-то сверхинтуитивности в настройках режимов нет и не было, неочевидно что значит 0, и как вычисляются значения, выраженные в процентах.

Что до моего предложения, то правило простое:
- значения указываются непосредственно.
- лимиты указываются в скобках.
HaRT wrote: Wed 14 Nov, 2018 12:59 При формальной непротиворечивости, на мой взгляд, это немного сбивает при чтении, потому что традиционно означает «ровно 2».
Если хотите, то можно разделитель интервала сделать обязательным: 10%{2-}.

Собственно, я за саму функциональность, и непринципиально как это будет синтаксически.

Минимальная ширина колонки

Posted: Wed 14 Nov, 2018 16:02
by SUSim
HaRT wrote: Wed 14 Nov, 2018 12:59 Не вижу тут никакой громоздкости: 10%>1<5
Почти нормально, но математически понятнее будет так: 1<10%<5.

Минимальная ширина колонки

Posted: Mon 03 Dec, 2018 11:13
by John Doe
Смежный вопрос.
Иногда желательно было бы чтобы ширина колонки зависела от контента, а именно: не занимала места больше, чем фактически требуется.
А при отсутствии содержимого - и вовсе бы не выводилась.

(Навеяно вот этой темой: viewtopic.php?p=151905#p151905)