OberonCore
https://forum.oberoncore.ru/

StdFolds
https://forum.oberoncore.ru/viewtopic.php?f=24&t=5373
Страница 1 из 2

Автор:  Иван Денисов [ Суббота, 28 Март, 2015 11:49 ]
Заголовок сообщения:  StdFolds

Сделана отрисовка стрелок складок без использования шрифтов. Комментарии и предложения по улучшению кода приветствуются.
http://blackboxframework.org/unstable/i ... a1.086.zip

Известны проблемы с отображением складок, они решены на сегодняшний день не совсем красиво. В веб-разрабоке такие методы называются "хаками", то есть кусочки кода, зависящие от браузера (платформы). Так появляется грязь в Блэкбоксе, которую я назвал квазихостом. В ББ есть специальная подситема Host, которая должна отвечать за все аспекты зависимости от платформы. А тут получается нечто подобное, но не Хост, поэтому — "квазихост". В связи с развитием вариантов портирования Блэкбокса устранение различных зависимостей особенно актуально эти самые зависимости от платформы убирать.

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

Результат я представил на форуме центра: http://forum.blackboxframework.org/view ... t=10#p1978
Там же ссылка на отличия в исходных кодах.

Эти складки теперь включены в SDL сборку Ивана Кузьмицкого. Теперь надо также сделать с отображением ссылок в режиме показа скрытых символов. Надеюсь, что это исправление войдет в сборку центра.

Автор:  Иван Денисов [ Четверг, 09 Апрель, 2015 03:14 ]
Заголовок сообщения:  Re: StdFolds

А как вы относитесь к треугольникам вместо стрелок?
http://community.blackboxframework.org/ ... &f=3&p=480

Josef Templ писал(а):
On behalf of the BlackBox Framework Center I would like to ask the
community if there are any general concerns about switching
from arrows to triangles for the display of fold views.

▶closed fold◀
▷open fold◁

The background is that the currently used fold arrows are not available under all platforms,
not even under all Windows platforms, or look very different on some platforms.
The usage of triangles as shown above would reduce this problem
because the triangles are regular Unicode characters
available under all Windows versions and also under wine.

Автор:  Иван Кузьмицкий [ Четверг, 09 Апрель, 2015 08:56 ]
Заголовок сообщения:  Re: StdFolds

Неплохая идея. Главное, чтоб складки были хорошо различимы в текстовой портянке.

Автор:  Пётр Кушнир [ Четверг, 09 Апрель, 2015 10:15 ]
Заголовок сообщения:  Re: StdFolds

Если можно, внесу свое предложение по фолдам.

Вложения:
folds.png
folds.png [ 20.17 КБ | Просмотров: 20413 ]

Автор:  Александр Ильин [ Четверг, 09 Апрель, 2015 11:30 ]
Заголовок сообщения:  Re: StdFolds

Пётр Кушнир писал(а):
Если можно, внесу свое предложение по фолдам.

Петр, браво! Мне особенно понравилось то, что нет потери контраста при переключении состояния. Белые внутри ("пустые") символы хуже видны, мне это всегда не нравилось в фолдах.

Автор:  Иван Денисов [ Четверг, 09 Апрель, 2015 14:23 ]
Заголовок сообщения:  Re: StdFolds

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

Автор:  Иван Денисов [ Четверг, 09 Апрель, 2015 20:13 ]
Заголовок сообщения:  Re: StdFolds

Вот сделал демо идеи Петра:
http://blackboxframework.org/unstable/i ... a1.094.zip

Есть правда один лишний пиксель, но это можно будет доработать.
Вложение:
folds_peter.png
folds_peter.png [ 1.26 КБ | Просмотров: 20359 ]

Автор:  Пётр Кушнир [ Четверг, 09 Апрель, 2015 22:30 ]
Заголовок сообщения:  Re: StdFolds

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

Автор:  Valery Solovey [ Четверг, 09 Апрель, 2015 22:41 ]
Заголовок сообщения:  Re: StdFolds

А как отличать закрытые от открытых?

Автор:  Александр Ильин [ Пятница, 10 Апрель, 2015 11:03 ]
Заголовок сообщения:  Re: StdFolds

Valery Solovey писал(а):
А как отличать закрытые от открытых?
В фолдах нет понятия "закрытый" и "открытый". Это просто два куска текста (один в скрытом буфере), которые кликом можно поменять местами. Обычно один кусок является более коротким "заголовком", а другой - более длинным "содержанием", но нет никаких препятствий сделать их одинаковой длины и альтернативными по смыслу.

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

Автор:  Иван Кузьмицкий [ Пятница, 10 Апрель, 2015 11:45 ]
Заголовок сообщения:  Re: StdFolds

Александр Ильин писал(а):
В фолдах нет понятия "закрытый" и "открытый".
Па-азвольте! :) StdFolds.CollapseFolds и StdFolds.ExpandFolds.

Автор:  Роман М. [ Суббота, 11 Апрель, 2015 12:59 ]
Заголовок сообщения:  Re: StdFolds

Вроде, цвет стрелок свёртки меняется при открытии-закрытии.

P.S.
В Ubuntu не могу проверить, так как символы стрелок отображаются как прямоугольники - такие символы не определены ни в одном шрифте, что я проверял.

Автор:  Иван Денисов [ Понедельник, 20 Апрель, 2015 16:14 ]
Заголовок сообщения:  Re: StdFolds

Роман М. писал(а):
Вроде, цвет стрелок свёртки меняется при открытии-закрытии.

P.S.
В Ubuntu не могу проверить, так как символы стрелок отображаются как прямоугольники - такие символы не определены ни в одном шрифте, что я проверял.

Не, цвет определяется атрибутом цвета, поэтому он не меняется при переключении.

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

Я это как-то так интерпретировал, но демо пока не делал.
Вложение:
helmut_folds.png
helmut_folds.png [ 3.46 КБ | Просмотров: 20217 ]


Темпл устроил голосование за саму идею отказа от шрифтов. Пока народ склоняется к отказу.
http://forum.blackboxframework.org/view ... ?f=4&t=208

Может кто-нибудь подсобит с кодом реализации идеи Цинна в StdFolds? У меня завал на работе.

Автор:  Иван Денисов [ Вторник, 21 Апрель, 2015 19:43 ]
Заголовок сообщения:  Re: StdFolds

В юбилейной сборке номер 100,
Джозеф Темпл сам сделал демо :)

Вложение:
hdt_fold.png
hdt_fold.png [ 1.07 КБ | Просмотров: 20173 ]


На мой взгляд, получилось симпатично и информативно.

Автор:  Иван Денисов [ Среда, 22 Апрель, 2015 06:12 ]
Заголовок сообщения:  Re: StdFolds

Символам было тесновато в стрелках, я немного уменьшил символы и стало приятнее.
http://blackboxframework.org/unstable/i ... a1.101.zip

Вложения:
more_margin.png
more_margin.png [ 37.75 КБ | Просмотров: 20150 ]

Автор:  Борис Рюмшин [ Среда, 22 Апрель, 2015 09:53 ]
Заголовок сообщения:  Re: StdFolds

Вообще страшновато выглядит.

Автор:  Иван Денисов [ Среда, 22 Апрель, 2015 10:03 ]
Заголовок сообщения:  Re: StdFolds

Борис Рюмшин писал(а):
Вообще страшновато выглядит.

Ну когда столько много гробиков разом, то есть некие ассоциации :)

Но в тексте они достаточно гармонично выглядят...

Вложения:
intext.png
intext.png [ 7.98 КБ | Просмотров: 20136 ]

Автор:  Пётр Кушнир [ Среда, 22 Апрель, 2015 10:46 ]
Заголовок сообщения:  Re: StdFolds

Мне кажется, для таких распространенных вещей, как фолды, вкусовщина должна быть исключена, потому что мне например вообще не нравится то, что предложил Гельмут. Для таких случаев есть механизм подменяемых фреймов, когда контрол остается один и тот же, а лук энд фил у него меняется.

Автор:  Роман М. [ Среда, 22 Апрель, 2015 11:29 ]
Заголовок сообщения:  Re: StdFolds

Борис Рюмшин писал(а):
Вообще страшновато выглядит.

Поддерживаю.

Да и плохо когда дизайном занимается программист.

Автор:  Иван Кузьмицкий [ Среда, 22 Апрель, 2015 12:14 ]
Заголовок сообщения:  Re: StdFolds

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

Причём настройку внешнего вида контролов легко делать установкой нужного пакета с такими фреймами. [offtop]Правда, тут лучше делать что-то поудобнее, чем нынешняя схема установки компонентов, требующая отдельных знаний о системе.[/offtop]

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/