A Cosmoe GUI könyvtár bemutatása, amely támogatja a Linux működését Wayland alapú környezetekben. A Cosmoe lehetővé teszi grafikus felhasználói felületek létrehozását C++ nyelven, a BeOS operációs rendszer osztálykönyvtárának API-ját alkalmazva a felület kialakításához. A könyvtár lehetővé teszi BeOS API-t használó programok közvetlen futtatását Linuxon. A projekt kódja MIT licenc alatt érhető el.
A Cosmoe C++ osztályok gyűjteményét kínálja, amelyek lehetővé teszik a felhasználói felületek gyors és egyszerű létrehozását. Egyrészről a Cosmoe lényegesen egyszerűbb és tömörebb, mint például a GTK és Qt, másrészt viszont lehetővé teszi a modernebb kinézetű felületek kialakítását, mint amelyet a könnyűsúlyú FLTK és Xforms használatával lehetne elérni. Elavult rendszerek esetén a Cosmoe nagyon alacsony erőforrás-felhasználást biztosít, míg modern rendszereken lehetőséget ad a hardver maximális teljesítményének kihasználására, a párhuzamos feldolgozás aktív alkalmazásának köszönhetően. Példák gyűjteménye áll rendelkezésre, amelyek bemutatják a Cosmoe használatát felületek létrehozására, többek között terminálemulátor, stílus szerkesztő és egyszerű játékok.
A könyvtár könnyűsúlyú, szerver komponenseket (app_server, registrar) nem igénylő ágazatként alapult a Cosmoe Classic projekt kódalapján, amelyet kompozitok felett való működésre fordítottak. szerverek, amelyek Wayland protokollt használnak. A Cosmoe Classic projekt Haiku OS környezetének Linux kernel feletti portolásával foglalkozott, és a felület rajzolását az SDL könyvtár segítségével létrehozott ablakban végezte. A Cosmoe Classic fejlesztése tavaly újjáéledt tizenhét éves szünet után.
Jelenleg a projekt átkonfigurálódott a Haiku OS fork fejlesztéséről egy önálló könyvtár létrehozására grafikus alkalmazásokhoz Linux alatt. Jelen fázisban a fejlesztés alfa állapotban van, és a könyvtár már körülbelül 95%-át támogatja a BeOS API összes lehetőségének. A legfontosabb korlátozások között szerepel, hogy nem támogatottak a képernyőhöz nem kötött példányok, például a BBitmap, amelyek szükségesek a grafikus rajzolás hardveres gyorsításához, és az API BFilePanel, amely fájlok megnyitására és mentésére szolgáló párbeszédpanelek létrehozását nem készítették el.

Forrás: opennet.ru
