Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl

Het GNOME Project heeft de release van Libadwaita 1.2 gepubliceerd, die een set componenten bevat voor de styling van de gebruikersinterface die de GNOME HIG (Human Interface Guidelines) volgt. De bibliotheek bevat kant-en-klare widgets en objecten voor het bouwen van applicaties die voldoen aan de algemene GNOME-stijl, waarvan de interface adaptief kan worden aangepast aan schermen van elk formaat. De bibliotheekcode is geschreven in C en wordt gedistribueerd onder de LGPL 2.1+ licentie.

Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl

De libadwaita-bibliotheek wordt gebruikt in combinatie met GTK4 en bevat componenten van het Adwaita-thema dat in GNOME wordt gebruikt en die uit GTK naar een aparte bibliotheek zijn verplaatst. Door GNOME-stijlelementen naar een aparte bibliotheek te verplaatsen, kunnen GNOME-specifieke wijzigingen afzonderlijk van GTK worden ontwikkeld, waardoor GTK-ontwikkelaars zich kunnen concentreren op de kernzaken en GNOME-ontwikkelaars sneller en flexibeler de stijlveranderingen kunnen doorvoeren die ze willen, zonder dat dit gevolgen heeft voor GTK zelf.

De bibliotheek bevat standaardwidgets die verschillende interface-elementen bestrijken, zoals lijsten, panelen, bewerkingsblokken, knoppen, tabbladen, zoekformulieren, dialoogvensters, enz. Met de voorgestelde widgets kunt u universele interfaces creëren die naadloos functioneren, zowel op grote pc- en laptopschermen als op kleine touchscreens van smartphones. De applicatie-interface verandert dynamisch, afhankelijk van de schermgrootte en beschikbare invoerapparaten. De bibliotheek bevat ook een reeks Adwaita-stijlen die het uiterlijk in overeenstemming brengen met de GNOME-richtlijnen zonder dat handmatige aanpassing nodig is.

Grote veranderingen in libadwaita 1.2:

  • Adw.EntryRow-widget toegevoegd, bedoeld voor gebruik als lijstelement. De widget biedt een invoerveld en een header met de mogelijkheid om extra widgets voor en na het invoerveld toe te voegen (bijvoorbeeld invoerbevestigingsknoppen of een indicator dat de gegevens kunnen worden bewerkt). Bovendien is de optie Adw.PasswordEntryRow beschikbaar, ontworpen voor het invoeren van wachtwoorden.
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl
  • De Adw.MessageDialog-widget toegevoegd om een ​​dialoogvenster met een bericht of vraag weer te geven. Een widget is een geavanceerde vervanging voor Gtk.MessageDialog die de lay-out van elementen kan aanpassen aan de grootte van het venster. In brede vensters kunnen knoppen bijvoorbeeld op één regel worden weergegeven, terwijl ze in smalle vensters in meerdere kolommen kunnen worden verdeeld. Een ander verschil is dat de widget geen kind is van de GtkDialog-klasse en een volledig nieuwe API biedt die niet is gekoppeld aan de vooraf gedefinieerde GtkResponseType-knoptypen (in Adw.MessageDialog worden alle acties afgehandeld door de applicatie), waardoor het gemakkelijker wordt om andere in te sluiten widgets die de eigenschap extra-child gebruiken, en biedt aparte stijlen voor titel en hoofdtekst.
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl
  • De Adw.AboutWindow-widget toegevoegd om een ​​venster met informatie over het programma weer te geven. De widget vervangt Gtk.AboutDialog en beschikt over een adaptieve lay-out van elementen en uitgebreide ondersteuningssecties, zoals een lijst met wijzigingen, een bedankvenster, informatie over licenties van componenten van derden, links naar informatiebronnen en gegevens om het debuggen te vereenvoudigen.
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijlUitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl
  • De mogelijkheden van de Adw.TabView- en Adw.TabBar-widgets zijn uitgebreid, waarbij het mechanisme voor het verwerken van sneltoetsen opnieuw is ontworpen om het probleem op te lossen met de werking van combinaties die overlappen met GTK4-handlers (bijvoorbeeld Ctrl+Tab). De nieuwe versie biedt ook een eigenschap voor het instellen van tooltips voor indicatoren en tabbladknoppen.
  • De klasse Adw.PropertyAnimationTarget is toegevoegd om het eenvoudiger te maken objecteigenschappen te animeren.
  • De stijl van de tabbladbalk (Adw.TabBar) is aanzienlijk gewijzigd: het actieve tabblad is duidelijker gemarkeerd en het contrast van elementen in de donkere versie is vergroot.
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl
  • De hoogte van de verticale scheidingslijnen is verlaagd, waardoor de koptekst en zoekbalk afleidende lichte randen konden verwijderen ten gunste van donkere randen die zijn ingesteld met @headerbar_shade_color, en een achtergrondstijl kon worden toegevoegd die overeenkomt met de panelen in de koptekst.
  • De stijlklasse ".large-title" is verouderd en in plaats daarvan moet ".title-1" worden gebruikt.
  • De opvulling in de Adw.ActionRow-widget is verminderd om het uiterlijk dichter bij de panelen en de Adw.EntryRow-widget te brengen.
  • De Gtk.Actionbar- en Adw.ViewSwitcherBar-widgets gebruiken dezelfde stijlen als de koptekst-, zoek- en tabbladbalken.
    Uitgave van de Libadwaita 1.2-bibliotheek voor het maken van interfaces in GNOME-stijl

Bron: opennet.ru

Voeg een reactie