OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Суббота, 25 Март, 2023 17:02

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 308 ]  На страницу Пред.  1 ... 9, 10, 11, 12, 13, 14, 15, 16  След.
Автор Сообщение
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 02 Февраль, 2023 19:35 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
ещё я сделал служебное сообщение PollHotkeyMsg, чтобы не мусорить в StdMenus проверками окон. оно рассылается примерно как обычный запрос хоткеев, и просто возвращает флаг. таким образом, если у нас есть форма — она съедает только «свои» хоткеи, а не все Alt+что-то. оно ещё не до конца допилено, но более-менее уже работает, можно глянуть у меня в репозитории.

я не уверен, что это самая лучшая реализация, но всяко лучше, чем тащить в StdMenus явные проверки окон. буду ещё тестировать и допиливать, конечно.

почему не использовал уже существующее ControlPref? там модификаторы не передают, а менять стандартное сообщение я не хотел.


Последний раз редактировалось arisu Четверг, 02 Февраль, 2023 19:37, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 02 Февраль, 2023 21:45 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3589
arisu писал(а):
Иван Денисов писал(а):
Если вы про это.
Код:
StdDocuments.InsertBar(doc, StdDocuments.top, mainLine1, NIL, TRUE, NIL);
StdDocuments.InsertBar(doc, StdDocuments.top, mainLine2, NIL, TRUE, NIL);
ненене, это бары — типа верхнего меню и статус-строки. а оверлей — это попап такой (ну, то, что вылазит, когда Alt+F нажать, например). и оверлей — я так понял — может быть только один. что мешает сделать вложеные подменюшки.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 02 Февраль, 2023 21:57 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
вообще, попап-менюшки надо как-нибудь вытащить наружу, потому что в виндокоде в некоторых местах используется винапи `TrackPopupMenu()`. у нас есть рабочие попапы, но они закопаны глубоко в StdMenus. надо подумать: может, получится там оформить апи, аналогичный `TrackPopupMenu()`.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 02:22 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 660
Создание полноценных видов-приборов для Controls и сохранение/выкидывание StdCFrames - ортогональны. Мое решение на то и направлено, чтобы сохранить обе возможности. В т.ч. чтобы сохранить обратную совместимость на запись: иметь в 2.0 полноценные виды-приборы, которые будут сохраняться в документы. А на прежних версиях эти же документы будут прекрасно открываться с помощью StdStdCFrames.

Кто захочет хамелеонить под платформу - пусть сделает себе полноценную PlatformStdCFrames. Но в ББ нужны полноценные виды-приборы, реализованные без всяких костылей, одинаково выглядящие на всех платформах, т.е. универсальные. А то, что сейчас имеет место - это создание универсальных приборов-не-видов в ограничивающих рамках интерфейса StdCFrames.

Т.е. самое правильное было бы выкинуть StdCFrames и StdStdCFrames, поскольку негоже импортировать в SystemControls модуль из Std.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 02:30 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 660
Я переработал механизм оверлеев. Документы научил работать с видом-распашонкой: вид, который имеет обычный размер и распахивается на весь документ (или около того). Линейное меню вставляется как такая распашонка. Когда оно распахивается (об этом оно просит свой контекст через .Consider), то имеет возможность внутрь себя вставить вертикальное меню. Это упростило взаимодействие между линейным и вертикальным, т.к. в этой схеме все как в ББ - вид-контейнер (сборник) и вид-содержимое. Когда линейное меню обнаруживает щелк вне линии и вне вертикального меню, то просит через контекст перевести себя в запахнутый режим - т.е. из этой схемы исключен документ, который раньше в этом участвовал; короче, упростилось все.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 09:06 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
adimetrius писал(а):
Я переработал механизм оверлеев. Документы научил работать с видом-распашонкой: вид, который имеет обычный размер и распахивается на весь документ (или около того). Линейное меню вставляется как такая распашонка. Когда оно распахивается (об этом оно просит свой контекст через .Consider), то имеет возможность внутрь себя вставить вертикальное меню. Это упростило взаимодействие между линейным и вертикальным, т.к. в этой схеме все как в ББ - вид-контейнер (сборник) и вид-содержимое. Когда линейное меню обнаруживает щелк вне линии и вне вертикального меню, то просит через контекст перевести себя в запахнутый режим - т.е. из этой схемы исключен документ, который раньше в этом участвовал; короче, упростилось все.
я, честно говоря, ничего не понял. ;-) но если вы сломали оверлеи, то буду плакать, потому что я их активно использую в разных местах уже.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 09:10 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
adimetrius писал(а):
Кто захочет хамелеонить под платформу - пусть сделает себе полноценную PlatformStdCFrames. Но в ББ нужны полноценные виды-приборы, реализованные без всяких костылей, одинаково выглядящие на всех платформах, т.е. универсальные. А то, что сейчас имеет место - это создание универсальных приборов-не-видов в ограничивающих рамках интерфейса StdCFrames.
и я таки тоже совершенно согласен. правда, нужен или очень гибкий механизм скинов ещё (просто перекраска не катит), или хороший набор запчастей, чтобы не повторять код. потому что я хочу любимый NX-вид, например. и скроллбары слева. ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 16:47 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 660
Скины, да, нужны, по идее, согласен. Нужно поэкспериментировать с этой абстракцией: это часть функциональности вида, в т.ч. рисование, координаты, желаемые размеры. Но не исключено, что общего понятия не удастся выделить, что для каждого вида - собственный тип для скина.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 17:45 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
да, тут сложно. но как минимум можно минимальные строительные блоки, как у меня в Guts: редактор, список, попап. сами по себе не имеют никакого оформления, только цвета можно задавать. а их можно поместить внутрь вида с рамочками, например. это я так, просто кидаю идеи, вдруг какая-то к стене прилипнет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 04 Февраль, 2023 22:04 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
(просто пробегая мимо) ужасно хочется портировать Doom. никто же не воспринимает ничего серьёзно, пока на этом не написали/запустили Doom.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 14:27 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3589
Хочу обратить внимание на то, что Блэкбокс 2.0 "BlackBox Cross-Platform" — это максимально консервативный проект.

Пожалуйста не предлагайте нововведений. Любое концептуальное отклонение от 1.7.2 и текущей версии — это очень высокие накладные расходы.

Цель — устранить недочёты, выпустить стабильную сборку, зафискировать достижения:
1. Плиточный интерфейс
2. Кросс-компиляция и сборка
3. Библиотекарь
4. Растры
5. Настойчивые и безопасные действия

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 14:42 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
тогда, может, давайте сделаем отдельную тему «общий трёп про 2.0»? чтобы тут осталось только то, что к «2.0 in stone», а в той теме мы вкидывали идеи, и если они интересные — тогда можно будет под них и отдельные темы создавать? просто лично я иногда использую эту тему как idea dump, и оно, кажется, не очень в правильно получается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 14:47 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3589
arisu писал(а):
тогда, может, давайте сделаем отдельную тему «общий трёп про 2.0»? чтобы тут осталось только то, что к «2.0 in stone», а в той теме мы вкидывали идеи, и если они интересные — тогда можно будет под них и отдельные темы создавать?


Да, вот есть отличный подфорум "Вопросы дальнейшего развития BlackBox" там приветствуется свободный полёт мысли про будущее Блэкбокса
viewforum.php?f=127

А вот в этом форуме будет здорово завести тему под вашу персональную сборку, где будете делиться просто новостями любыми про свои достижения
viewforum.php?f=114

UPD: Ну и про 2.0 вы тут пишите, конечно! Я хотел только прояснить ситуацию, чтобы не было каких-то недопониманий, почему ваши иногда весьма дельные предложения могут не найти поддержки. Хочется работать, делать проекты в Блэкбоксе, а не бесконечно его переделывать. Поэтому нужна сборка без багов. А если переделывать всё постоянно, то это не произойдет никогда.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 15:02 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
Иван Денисов писал(а):
Да, вот есть отличный подфорум "Вопросы дальнейшего развития BlackBox" там приветствуется свободный полёт мысли про будущее Блэкбокса
viewforum.php?f=127
я имел в виду больше отдельную общую тему, куда можно вкидывать не очень оформленые идеи, иногда просто мысли, которые немного пофутболят — и они или сразу будут забракованы как «sorry, i was on high», или дорастут до отдельной темы с обсуждением. кажется, я опять не очень понятно написал…

Иван Денисов писал(а):
А вот в этом форуме будет здорово завести тему под вашу персональную сборку, где будете делиться просто новостями любыми про свои достижения
viewforum.php?f=114
да, я планирую сделать тему под Lament Configuration чуть позже, когда сочту, что первый technology preview готов к публичной демонстрации. такой план и был. я кинул вам и А.А. ссылки чуть раньше просто потому что оттуда уже сейчас можно выдёргивать полезные кусочки. ну, и тизерю её в разных темах специально, подогреваю интерес. ;-)

Иван Денисов писал(а):
Ну и про 2.0 вы тут пишите, конечно! Я хотел только прояснить ситуацию, чтобы не было каких-то недопониманий, почему ваши иногда весьма дельные предложения могут не найти поддержки. Хочется работать, делать проекты в Блэкбоксе, а не бесконечно его переделывать. Поэтому нужна сборка без багов. А если переделывать всё постоянно, то это не произойдет никогда.
всё нормально, как минимум мы с вами уже об это спотыкались, и я учитываю, никаких обид. я, конечно, сражаюсь за свои идеи как котик за любимое кресло, но если не получается победить — то ничего страшного, у меня всегда есть Lament Configuration же. ;-) то, что у нас общая цель, но разные к ней пути — по-моему, не страшно, а наоборот, хорошо. а остальные участники, предполагаю, и так это знают всё. ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 15:11 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4663
Откуда: Россия, Орёл
Традиционно напомню, что важно для всех сборок и проектов ББ (текущих и будущих) — сохранить совместимость по интерфейсам. Последний случай с раскапыванием 25-летноего редактора под версию 1.4 и спокойная сборка его на 2.0 — это очень хороший показатель.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 15:13 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3589
arisu писал(а):
Иван Денисов писал(а):
Да, вот есть отличный подфорум "Вопросы дальнейшего развития BlackBox" там приветствуется свободный полёт мысли про будущее Блэкбокса
viewforum.php?f=127
я имел в виду больше отдельную общую тему, куда можно вкидывать не очень оформленые идеи, иногда просто мысли, которые немного пофутболят — и они или сразу будут забракованы как «sorry, i was on high», или дорастут до отдельной темы с обсуждением. кажется, я опять не очень понятно написал…


Заложил начало нового чата на тему :)
viewtopic.php?f=134&t=6894


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Воскресенье, 05 Февраль, 2023 15:30 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
Борис Рюмшин писал(а):
Традиционно напомню, что важно для всех сборок и проектов ББ (текущих и будущих) — сохранить совместимость по интерфейсам. Последний случай с раскапыванием 25-летноего редактора под версию 1.4 и спокойная сборка его на 2.0 — это очень хороший показатель.
да, вы правы, это очень важно. но есть ещё и такой нюанс: когда «консервативный 2.0» выйдет — то те решения, которые туда заложены, потом уже очень сложно будет поменять, по тем же соображениям совместимости. поэтому я и шатаю трубу, пока ещё есть возможность — с целью потенциальной минимизации количества родовых пятен, которые 2.0 потом будет вынуждена нести с собой просто потому что Так Исторически Сложилось.

конечно, это часто конфликтует с целью «сделать релиз, который можно использовать, а не залипнуть в цикле бесконечной разработки и перфекционизма». но на то у 2.0 есть люди, которые имеют final say, и не стесняются его say. это хорошо и правильно, проект без чёткого руководства никогда не будет сделан же. но шатать трубу я всё равно буду. ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Понедельник, 06 Февраль, 2023 13:29 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
маленький технический вопрос по CFrames: если однострочное поле редактора по высоте вмещает хотя бы две видимых строки, вин-версия обрабатывает его как multiline, но просто не позволяет вставлять туда 0DX. мне это поведение эмулировать, или оставить одну центрированую строку?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Понедельник, 06 Февраль, 2023 14:16 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3589
arisu писал(а):
маленький технический вопрос по CFrames: если однострочное поле редактора по высоте вмещает хотя бы две видимых строки, вин-версия обрабатывает его как multiline, но просто не позволяет вставлять туда 0DX. мне это поведение эмулировать, или оставить одну центрированую строку?

Думаю, что надо оставлять одну строку. Есть предложение выстраивать строку в одну, то есть удалять этот 0DX, если он из буфера обмена залетел или из пользовательской переменной.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Понедельник, 06 Февраль, 2023 14:27 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 552
Иван Денисов писал(а):
Думаю, что надо оставлять одну строку.
в принципе, я тоже так считаю. так и оставлю, наверное.

Иван Денисов писал(а):
Есть предложение выстраивать строку в одну, то есть удалять этот 0DX, если он из буфера обмена залетел или из пользовательской переменной.
если из буфера обмена — я буду просто на пробел заменять. а из пользовательской переменной — не буду, потому что нехорошо менять данные, если пользователь просто открыл и закрыл форму, ничего не редактируя. нарисовать-то в одну строку с этим 0DX и так можно. в смысле — визуально будет одна строка, но 0DX из переменной сохранится, если пользователь строку не редактировал. а если что-то отредактировал — то заменю, наверное.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 308 ]  На страницу Пред.  1 ... 9, 10, 11, 12, 13, 14, 15, 16  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2023, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB