OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 29 Сентябрь, 2023 01:16

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




Начать новую тему Ответить на тему  [ Сообщений: 440 ]  На страницу Пред.  1 ... 16, 17, 18, 19, 20, 21, 22  След.
Автор Сообщение
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:25 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
Иван Денисов писал(а):
А у вас есть гипотезы, почему так происходит? Раньше не было такой истории. У откреплённых окон были откреплённые дочерние окна.
я никогда отцеплеными не пользовался, так что не помню, как раньше. ;-) а сейчас вполне логично всё: тайлер же перехватывает создание любых окон, и суёт в.

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

соответственно, надо проверить все места, где `targetTrack` насильно меняется, и проверить, есть ли логика делать отцепки, если целевой трек пустой. где-то в этом районе, я думаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:32 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
Да, в общем это надо будет допиливать на свежую голову. Сейчас если закрыть все документы и нажать F2 среда уходил в зависание. Но чувствую, что победа над окнами уже близко. Что-то даже начал понимать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:33 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
а почему оно вообще работает? `Dup Window` без окон должен быть серенький, неактивный. у меня так и происходит, например.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:35 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
а почему оно вообще работает? `Dup Window` без окон должен быть серенький, неактивный. у меня так и происходит, например.

F2 у меня в репозитории настроено на команду просто создать дополнительное окно. Это из старого меню MDI, которое перекрывает новое Windows. Поэтому New window активно. Наверное в этом дело, надо охрану допилить, чтобы была как у DupWindow.

Однако, если нажать F2 в сборке без открытых документов, то происходит авост...


Код:
dia@lenovo:~/desktop$ bbcb2 -DEBUG

(blackbox:33037): Gtk-WARNING **: 00:36:49.621: Загружаемый модуль тем не найден в module_path: «adwaita»,
********* TRAP REPORT - BEGIN *********
 <PC=F624C9CB, FP=FFF629E8, SP=FFF629E0>
dirty = { }
23 (precondition violated)
0: Views.InstallRoot [@=28501]  <PC=F624C9CB FP=FFF629E8>
1: StdWindows.InstallRoot [@=12352]  <PC=F61CD98B FP=FFF62A10>
2: StdTiles.Proxy.Restore [@=17623]  <PC=F5E291A8 FP=FFF62AD0>
3: Views.RestoreFrame2 [@=41494]  <PC=F624DBE3 FP=FFF62B10>
4: Views.RestoreFrame2 [@=41655]  <PC=F624DC38 FP=FFF62B50>
5: Views.RestoreFrame2 [@=41655]  <PC=F624DC38 FP=FFF62B90>
6: Views.RestoreFrame2 [@=41655]  <PC=F624DC38 FP=FFF62BD0>
7: Views.BuildFrameTree [@=42735]  <PC=F624DD79 FP=FFF62BFC>
8: StdTiles.Backend.Select [@=24118]  <PC=F5E29C8D FP=FFF62C90>
9: StdWindows.Select [@=34023]  <PC=F61CF816 FP=FFF62CA0>
10: StdWindows.Open [@=39684]  <PC=F61CFEC3 FP=FFF62D44>
11: StdWindows.StdDirectory.OpenSubWindow [@=42844]  <PC=F61D02B9 FP=FFF62D60>
12: StdCmds.NewWindow [@=28779]  <PC=F5EAC62C FP=FFF62E94>
13: StdTiles.ToggleSub [@=29541]  <PC=F5E2A321 FP=FFF62EA8>
14: Kernel.Call [@=45274]  <PC=0804A556 FP=FFF62ED4>
15: Meta.Item.ParamCallVal [@=27859]  <PC=F626F6F6 FP=FFF63334>
16: StdInterpreter.CallProc [@=5342]  <PC=F61C8159 FP=FFF6339C>
17: StdInterpreter.Command [@=9100]  <PC=F61C8943 FP=FFF637B4>
18: StdInterpreter.CallHook.Call [@=9466]  <PC=F61C8A09 FP=FFF63B70>
19: Dialog.Call [@=40562]  <PC=F62788E2 FP=FFF63B98>
20: StdDialog.HandleItem [@=4504]  <PC=F5EB515C FP=FFF63BD4>
21: StdMenus.SafeAction.Do [@=5595]  <PC=F5E616A2 FP=FFF63BE8>
22: Services.TryHandler [@=8540]  <PC=F7815381 FP=FFF63C00>
23: LinKernel.Try [@=9964]  <PC=0804DE43 FP=FFF63CC0>
24: Kernel.Try [@=70552]  <PC=0804C7BB FP=FFF63CE0>
25: Services.Try [@=8679]  <PC=F78153B7 FP=FFF63D04>
26: StdMenus.DoExecute [@=13738]  <PC=F5E62653 FP=FFF63D20>
27: StdMenus.Directory.Execute [@=14040]  <PC=F5E626AD FP=FFF63D34>
28: LinBackends.KeyPressHandler.Do [@=7633]  <PC=F5E6D98B FP=FFF63D70>
29: Services.TryHandler [@=8540]  <PC=F7815381 FP=FFF63D88>
30: LinKernel.Try [@=9964]  <PC=0804DE43 FP=FFF63E48>
31: Kernel.Try [@=70552]  <PC=0804C7BB FP=FFF63E68>
32: Services.Try [@=8679]  <PC=F78153B7 FP=FFF63E8C>
33: LinBackends.TrySignalHandler [@=3598]  <PC=F5E6D3B8 FP=FFF63E9C>
34: LinBackends.KeyPressSignal [@=9496]  <PC=F5E6DE87 FP=FFF63EC8>
35: <caller outside BB> <PC=F7425A1E FP=FFF64038>
********* TRAP REPORT - END *********
********* TRAP REPORT - BEGIN *********
 <PC=F61BB2EE, FP=FFF63C10, SP=FFF63C04>
dirty = { }
203 illegal memory read [ad = 00000084]
0: LinFonts.ShapeUString [@=4165]  <PC=F61BB2EE FP=FFF63C10>
1: LinFonts.ShapeString [@=4617]  <PC=F61BB39D FP=FFF63C30>
2: LinFonts.Font.StringWidth [@=5212]  <PC=F61BB45A FP=FFF63C58>
3: TextSetters.GatherString [@=20889]  <PC=F5F10ED5 FP=FFF63C78>
4: TextSetters.StdReader.Read [@=24889]  <PC=F5F1160E FP=FFF63C98>
5: TextSetters.StdSetter.GetLine [@=39656]  <PC=F5F12DAB FP=FFF63D94>
6: TextViews.NewLine [@=8946]  <PC=F5F04A76 FP=FFF63DB0>
7: TextViews.AddLine [@=9168]  <PC=F5F04AC0 FP=FFF63DC4>
8: TextViews.ExtendLines [@=10252]  <PC=F5F04C67 FP=FFF63DF0>
9: TextViews.ValidateLines [@=11236]  <PC=F5F04E07 FP=FFF63E10>
10: TextViews.StdView.Restore [@=37536]  <PC=F5F0795F FP=FFF63E44>
11: Views.RestoreFrame2 [@=41494]  <PC=F624DBE3 FP=FFF63E84>
12: Views.RestoreFrame2 [@=41655]  <PC=F624DC38 FP=FFF63EC4>
13: Views.BuildFrameTree [@=42735]  <PC=F624DD79 FP=FFF63EF0>
14: StdTiles.Backend.Select [@=24118]  <PC=F5E29C8D FP=FFF63F84>
15: StdWindows.Select [@=34023]  <PC=F61CF816 FP=FFF63F94>
16: StdWindows.Open [@=39684]  <PC=F61CFEC3 FP=FFF64038>
17: StdWindows.StdDirectory.Open [@=42253]  <PC=F61D01A3 FP=FFF64050>
18: StdTiles.DoOpen [@=7019]  <PC=F5E283E4 FP=FFF64318>
19: StdTiles.ViewHook.Open [@=8767]  <PC=F5E2868F FP=FFF64458>
20: Views.OpenAux [@=47691]  <PC=F624E5E0 FP=FFF64694>
21: DevDebug.OpenViewer [@=2758]  <PC=F5E42F68 FP=FFF64728>
22: DevDebug.Action.Do [@=41403]  <PC=F5E47EF9 FP=FFF647B8>
23: Services.Exec [@=2522]  <PC=F7814B90 FP=FFF647C8>
24: Services.IterateOverActions [@=4381]  <PC=F7814D8B FP=FFF647D8>
25: Services.StdHook.Step [@=4876]  <PC=F7814DE6 FP=FFF647EC>
26: Loop.Loop [@=1452]  <PC=F62622AC FP=FFF64814>
27: LinKernel.Platform.Start [@=7849]  <PC=0804DC56 FP=FFF64820>
28: Kernel.Start [@=67213]  <PC=0804C2DA FP=FFF6483C>
29: Loop.Start [@=1848]  <PC=F626232C FP=FFF64850>
30: LinInit.Init [@=2405]  <PC=F5E57409 FP=FFF6486C>
31: LinInit.$$ [@=2488]  <PC=F5E572B9 FP=FFF6487C>
32: Kernel.InitModule [@=37067]  <PC=08049A5F FP=FFF64888>
33: Kernel.RegisterMod [@=42014]  <PC=0804A1D1 FP=FFF648A0>
34: StdLoader.LoadMod [@=12875]  <PC=08056585 FP=FFF648B8>
35: StdLoader.Hook.ThisMod [@=13354]  <PC=08056664 FP=FFF648CC>
36: Kernel.ThisMod [@=38012]  <PC=08049BB5 FP=FFF648E8>
37: Kernel.LoadMod [@=38170]  <PC=08049BE5 FP=FFF64904>
38: LinLoader.Load [@=268]  <PC=080567EE FP=FFF65320>
********* TRAP REPORT - END *********
********* TRAP REPORT - BEGIN *********
 <PC=F5F04C1C, FP=FFF6456C, SP=FFF64558>
dirty = { }
203 illegal memory read [ad = 0000000C]
0: TextViews.ExtendLines [@=10164]  <PC=F5F04C1C FP=FFF6456C>
1: TextViews.ValidateLines [@=11236]  <PC=F5F04E07 FP=FFF6458C>
2: TextViews.PollSection [@=23965]  <PC=F5F061BA FP=FFF645A8>
3: TextViews.StdView.HandleCtrlMsg2 [@=43253]  <PC=F5F080D4 FP=FFF645C0>
4: Containers.View.HandleCtrlMsg [@=9362]  <PC=F61F9CF8 FP=FFF645DC>
5: Views.ForwardCtrlMsg [@=35583]  <PC=F624D456 FP=FFF6461C>
6: StdDocuments.PollSection [@=20263]  <PC=F61D92CC FP=FFF64654>
7: StdDocuments.Document.HandleCtrlMsg2 [@=34734]  <PC=F61DAA84 FP=FFF64698>
8: Containers.View.HandleCtrlMsg [@=9362]  <PC=F61F9CF8 FP=FFF646B4>
9: Views.ForwardCtrlMsg [@=35583]  <PC=F624D456 FP=FFF646F4>
10: StdDocuments.GetSection [@=14649]  <PC=F61D8A95 FP=FFF6471C>
11: StdDocuments.UpdateScrollbar [@=15275]  <PC=F61D8BA6 FP=FFF64750>
12: StdDocuments.StdModel.UpdateScrollbars [@=16180]  <PC=F61D8CC9 FP=FFF6477C>
13: StdDocuments.UpdateScrollbars [@=16997]  <PC=F61D8DCD FP=FFF647AC>
14: StdWindows.Validate [@=14733]  <PC=F61CDBDE FP=FFF647C4>
15: StdWindows.Validate [@=14879]  <PC=F61CDC03 FP=FFF647DC>
16: LinInit.ValidateWindows [@=1410]  <PC=F5E57307 FP=FFF647F0>
17: Loop.Loop [@=1193]  <PC=F626221C FP=FFF64814>
18: LinKernel.Platform.Start [@=7849]  <PC=0804DC56 FP=FFF64820>
19: Kernel.Start [@=67213]  <PC=0804C2DA FP=FFF6483C>
20: Loop.Start [@=1848]  <PC=F626232C FP=FFF64850>
21: LinInit.Init [@=2405]  <PC=F5E57409 FP=FFF6486C>
22: LinInit.$$ [@=2488]  <PC=F5E572B9 FP=FFF6487C>
23: Kernel.InitModule [@=37067]  <PC=08049A5F FP=FFF64888>
24: Kernel.RegisterMod [@=42014]  <PC=0804A1D1 FP=FFF648A0>
25: StdLoader.LoadMod [@=12875]  <PC=08056585 FP=FFF648B8>
26: StdLoader.Hook.ThisMod [@=13354]  <PC=08056664 FP=FFF648CC>
27: Kernel.ThisMod [@=38012]  <PC=08049BB5 FP=FFF648E8>
28: Kernel.LoadMod [@=38170]  <PC=08049BE5 FP=FFF64904>
29: LinLoader.Load [@=268]  <PC=080567EE FP=FFF65320>
********* TRAP REPORT - END *********


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:36 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
вообще, у меня такое подозрение, что и тайлер, и гриды (да и StdWindows) — это полуфабрикаты, которые А.А. положил в 2.0 чтобы хоть что-то было, а потом до них руки не дошли вычистить. интересно, я прав? ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:39 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
Иван Денисов писал(а):
F2 у меня в репозитории настроено на команду просто создать дополнительное окно. Это из старого меню MDI, которое перекрывает новое Windows. Поэтому New window активно. Наверное в этом дело, надо охрану допилить, чтобы была как у DupWindow.
ах… я давно F2 отцепил, тыкал в меню постоянно, и чисто по логике — на "Dup Window". но "New Window" у меня тоже серенькая, они одним и тем же сторожем в меню охраняются.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:48 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
Иван Денисов писал(а):
Однако, если нажать F2 в сборке без открытых документов, то происходит авост…
по-моему, оно у вас пытается сдублировать главное окно, и очень офигевает от такой идеи. ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:55 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
вообще, у меня такое подозрение, что и тайлер, и гриды (да и StdWindows) — это полуфабрикаты, которые А.А. положил в 2.0 чтобы хоть что-то было, а потом до них руки не дошли вычистить. интересно, я прав? ;-)

Это некий сплав наших намерений. Большей частью руками и головой Антона, но где-то моим усердием и провидением был создан сей Франкенштейн (не потому что чудовище, а потом что из идейных кусков). Однако я его очень люблю и верю, что смогу с божьей помощью и помощью неравнодушных граждан доделать до идеального в моём представлении состояния.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 20:56 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
Иван Денисов писал(а):
Однако, если нажать F2 в сборке без открытых документов, то происходит авост…
по-моему, оно у вас пытается сдублировать главное окно, и очень офигевает от такой идеи. ;-)

Да, чего-то там никакой защиты нет от такого. Нехорошо, надо будет поправить. Спасибо за наводку на GetTarget.


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

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
Провел сверку с последней доступной версией от Антона, и вроде теперь Dup Window для откреплённых окон делает откреплённые окна. Уже соображаю плохо. Завтра сложный день. В целом я уже доволен и прокруткой и окнами. Надо дать отлежаться коду. Да и пора переключиться на многострочные поля ввода.


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

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
Иван Денисов писал(а):
Это некий сплав наших намерений. Большей частью руками и головой Антона, но где-то моим усердием и провидением был создан сей Франкенштейн (не потому что чудовище, а потом что из идейных кусков). Однако я его очень люблю и верю, что смогу с божьей помощью и помощью неравнодушных граждан доделать до идеального в моём представлении состояния.
да оно нормальное вполне. просто видно, что неполировано, очень похоже на код, который где-то в процессе допилки завис — вот я и поинтересовался. ну, и дизайн видно что не завершён. но лично я особых претензий к этим штукам не имею, нормальный рабочий процесс, чего там.


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

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
Иван Денисов писал(а):
Да и пора переключиться на многострочные поля ввода.
блин, мне их именно вот настолько делать не хочется! я уже и новый бэкэнд запилил, и треть системы перепахал — лишь бы не их… ;-)

p.s.: а вообще, признаюсь, что никак особо отсутствие многострочного ввода не замечал. вообще, у меня такое подозрение, что это просто рудимент винды: в винде в edit control оно было — омики и сделали. а надо ли оно в принципе — не ясно.


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

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
Иван Денисов писал(а):
Да и пора переключиться на многострочные поля ввода.
блин, мне их именно вот настолько делать не хочется! я уже и новый бэкэнд запилил, и треть системы перепахал — лишь бы не их… ;-)

p.s.: а вообще, признаюсь, что никак особо отсутствие многострочного ввода не замечал. вообще, у меня такое подозрение, что это просто рудимент винды: в винде в edit control оно было — омики и сделали. а надо ли оно в принципе — не ясно.

не не, очень надо и руки как раз уже прямо горят, хочу этим заняться


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

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
Так я починил внезапно сломавшийся ToggleSub, и заодно полностью перенёс настройки роута в StdConfig, считаю, что именно там должна быть настройка пользовательской конфигурации воркспейса и роутинга.

Выложил сборку 176.


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

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
Иван Денисов писал(а):
И ещё обнаружил такой новый недочёт, что у откреплённых окон дочерние окна начали встраиваться в плитки. Должны отдельно быть также.
дискусионный вопрос. F1, например, открывается в отдельном окне (если научить OpenAuxDialog открывать как detached). но клац по ссылке… ну, меня устраивает, например, что оно открывается в тайлере.

а вот тут дочерние, я имел в виду, это именно SubWindows, а не те, что по ссылкам открываются. Те что открываются по ссылкам, те и будут в плитки встраиваться. В вот дочернее окно дубликат (SubWindow), оно именно также в отдельном окне открывается. Вот такая логика.


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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Четверг, 01 Июнь, 2023 23:01 

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BlackBox 2.0
СообщениеДобавлено: Суббота, 03 Июнь, 2023 07:43 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
кстати. вот вам магия для блита RGBA-битмапов из памяти без GDI+. смотреть в районе `AlphaBlend()`. оный `AlphaBlend()` надо в WinApi добавить, и одну структуру. тоже у меня можно взять. готовить битмап надо точно как у меня написано: с обменом цветов, и с premultiplied alpha.


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

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3732
arisu писал(а):
кстати. вот вам магия для блита RGBA-битмапов из памяти без GDI+. смотреть в районе `AlphaBlend()`. оный `AlphaBlend()` надо в WinApi добавить, и одну структуру. тоже у меня можно взять. готовить битмап надо точно как у меня написано: с обменом цветов, и с premultiplied alpha.

Здорово! то, что надо, похоже, я смогу это изучить чуть позднее.


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

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1105
и можете попереть у меня из Raster читалку пингов, например. там можно собрать читалку и распаковщик deflate-потоков в один очень компактный файлик, и не надо таскать за собой большие библиотеки типа Vi и Zlib.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 440 ]  На страницу Пред.  1 ... 16, 17, 18, 19, 20, 21, 22  След.

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


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

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


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

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