OberonCore
https://forum.oberoncore.ru/

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

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

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

Да, это (то, что Гельмут предложил), скорее всего и не будет реализовано, т.к. лишняя работа.

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

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

Да и плохо когда дизайном занимается программист.
Раз уж за основу взят мой дизайн, то буду отвечать Роману :)
Я не программист, а биофизик с начальным художественным образованием и опытом разработки дизайна веб-сайтов. Дизайнер руководствуется в первую очередь техническими ограничениями. В нашем случае, чтобы рисовать без сглаживания надо, чтобы фигура была залита. Это дает и контраст, на потерю которого были жалобы. Чтобы облегчить переход, она должна быть похожа на предыдущий символ, поэтому — стрелки. Ну и добавим плюсики и минусы с приличными полями, вот и получаем то, что вышло. Вариант Петра мне тоже нравится, но много людей сказали, что будет сложно им отличить открытые складки от закрытых. Тоже не совсем понимаю, зачем им это, но раз такое граничное условие есть, видимо это важно. К тому-же в других средах разработки плюсы и минусы часто используются для сворачивания процедур, так что инструмент станет понятнее.


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

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

Не совсем понятно, зачем делать настраиваемый вид фолдов :) Изначально была цель — избавиться от шрифтов для обеспечения кроссплатформенности. То есть как раз, чтобы фолды ВЕЗДЕ выглядели одинаково. А тут получится, что даже на одной платформе будет то так, то эдак...

Автор:  Роман М. [ Воскресенье, 26 Апрель, 2015 14:57 ]
Заголовок сообщения:  Re: StdFolds

Иван Денисов писал(а):
... Ну и добавим плюсики и минусы с приличными полями, вот и получаем то, что вышло.
Просто вцелом грубовато выглядит...

Иван Денисов писал(а):
Изначально была цель — избавиться от шрифтов для обеспечения кроссплатформенности.

Неужели в стандартных шрифтах нет стрелок отсюда: http://unicode-table.com/en/sets/arrows-symbols/
Не стоит торопиться избавляться от шрифтов. Ведь они дают органичное решение для показа свёрток.

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

Большинство в центре проголосовало за включение этого фикса в сборку.

Вот такая сейчас актуальная версия от центра:
blackbox-1.7-a1.122-setup.exe
blackbox-1.7-a1.122.zip

Автор:  prospero78 [ Четверг, 13 Август, 2015 23:04 ]
Заголовок сообщения:  Re: StdFolds

Как на счёт символов открытого и закрытого замков?

Автор:  Иван Денисов [ Пятница, 14 Август, 2015 06:03 ]
Заголовок сообщения:  Re: StdFolds

prospero78 писал(а):
Как на счёт символов открытого и закрытого замков?

Решение принято, уже сделали стрелки с плюсами и минусами. Так что эту тему можно закрыть.

Автор:  GameHunter [ Четверг, 04 Май, 2023 23:23 ]
Заголовок сообщения:  Re: StdFolds

Возможно ли вставлять фолды в исходный текст модулей таким образом, чтобы всегда компилировался только тот текст, который появляется при раскрытии фолда, незафисимо от его (фолда) состояния?

Автор:  arisu [ Пятница, 05 Май, 2023 05:17 ]
Заголовок сообщения:  Re: StdFolds

нет, стандартные фолды так не работают. написать можно, но особого смысла нет, и придётся допиливать компилятор: как в районе сканера, так и в районе вставки маркеров ошибок.

если вы хотите редактор со сворачиванием кода… ну, это не нужно по многим причинам, однако если очень хочется — всегда можно перед компиляцией просто развернуть все фолды: `StdFolds.Expand; DevCompiler.Compile`. если ошибок нет — свернуть обратно. тут придётся написать команду, которая проверяет наличие маркеров ошибок в тексте, и если их нет, то вызывает `StdFolds.Collapse`. это вы можете себе сделать сами без особых сложностей.

Автор:  Иван Денисов [ Пятница, 05 Май, 2023 11:16 ]
Заголовок сообщения:  Re: StdFolds

GameHunter писал(а):
Возможно ли вставлять фолды в исходный текст модулей таким образом, чтобы всегда компилировался только тот текст, который появляется при раскрытии фолда, незафисимо от его (фолда) состояния?

Подобное делают селекторы. Они позволяют явно указывать, какой кусок использовать в компиляции, а какие нет. Посмотрите DevSelectors.

Автор:  arisu [ Пятница, 05 Май, 2023 13:03 ]
Заголовок сообщения:  Re: StdFolds

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

я считаю, что в BBCB (да и вообще в программерских редакторах) подобный фолдинг не нужен, потому что если настолько в коде путаешься, что надо его куски сворачивать — то время заняться рефакторингом и переделкой, а не полагаться на хаки. но если очень хочется — то нечто подобное можно в BBCB организовать стандартными средствами с минимумом усилий.

Автор:  Иван Денисов [ Пятница, 05 Май, 2023 13:31 ]
Заголовок сообщения:  Re: StdFolds

А, теперь понял. Согласен, лучше селекторы не использовать. В таком случае лучше вынести всё, что хотите свернуть в отдельный модуль, и оттуда вызывать. Я тоже за рефакторинг.

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