Biblioteka budowy interfejsów graficznych Cosmoe, wykorzystująca Wayland i API w stylu BeOS

Prezentowana biblioteka GUI Cosmoe wspiera pracę w systemie Linux w środowiskach opartych na Wayland. Cosmoe umożliwia tworzenie programów z interfejsem graficznym w języku C++, stosując do formowania interfejsu API w stylu biblioteki klas systemu operacyjnego BeOS. Biblioteka pozwala na bezpośrednie uruchamianie w Linux programów wykorzystujących API BeOS. Kod projektu udostępniany jest na licencji MIT.

Cosmoe oferuje zestaw klas C++, które pozwalają szybko i łatwo tworzyć interfejsy użytkownika. Z jednej strony, Cosmoe jest znacznie prostsze i bardziej kompaktowe niż takie zestawy jak GTK i Qt, z drugiej zaś strony umożliwia tworzenie interfejsów, które wyglądają bardziej nowocześnie niż przy użyciu lekkich FLTK i Xforms. Na przestarzałych systemach Cosmoe zapewnia bardzo niskie zużycie zasobów, a na nowoczesnych pozwala na maksymalne wykorzystanie sprzętu dzięki aktywnemu wykorzystaniu wielowątkowości. Udostępniana jest kolekcja przykładów aplikacji, które wykorzystują Cosmoe do tworzenia interfejsu, w tym emulator terminala, edytor stylów i proste gry.

Biblioteka powstała jako lekka i nie wymagająca komponentów serwerowych (app_server, registrar) gałąź kodu projektu Cosmoe Classic, przeniesionego na pracę w oparciu o kompozytowe serwerów, wykorzystujące protokół Wayland. Projekt Cosmoe Classic zajmował się portowaniem środowiska Haiku OS do pracy na jądrze Linux i wykorzystywał renderowanie interfejsu w oknie stworzonym za pomocą biblioteki SDL. Prace nad Cosmoe Classic zostały wznowione w zeszłym roku po siedemnastoletniej przerwie.

Obecnie projekt został przekształcony z rozwoju forka systemu Haiku na tworzenie odrębnej biblioteki do tworzenia aplikacji graficznych dla Linux. Na obecnym etapie rozwój znajduje się w fazie alfa, a biblioteka już wspiera około 95% wszystkich możliwości API BeOS. Spośród najważniejszych ograniczeń należy zwrócić uwagę na brak wsparcia dla niezwiązanych z ekranem egzemplarzy typu BBitmap, niezbędnych do przyspieszenia renderowania sprzętowego oraz niewgotowość API BFilePanel, służącego do tworzenia dialogów otwierania i zapisywania plików.

Biblioteka budowy interfejsów graficznych Cosmoe, wykorzystująca Wayland i API w stylu BeOS


Źródło: opennet.ru
Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster