Kit d'outils graphiques GTK 4.6 disponible

Après quatre mois de développement, la sortie d'une boîte à outils multiplateforme pour créer une interface utilisateur graphique a été publiée - GTK 4.6.0. GTK 4 est développé dans le cadre d'un nouveau processus de développement qui tente de fournir aux développeurs d'applications une API stable et prise en charge pendant plusieurs années, qui peut être utilisée sans craindre de devoir réécrire les applications tous les six mois en raison des changements d'API dans le prochain GTK. bifurquer.

Parmi les améliorations les plus notables de GTK 4.6 figurent :

  • L'ancien moteur de rendu basé sur OpenGL a été supprimé, remplacé par le nouveau moteur de rendu NGL, fourni par défaut depuis GTK 4.2, qui offre de meilleures performances. NGL renommé GL. Le code de chargement des textures a été réécrit, la prise en charge des formats d'image et des espaces colorimétriques a été améliorée.
  • Le code associé au calcul de la taille des éléments et à la disposition des widgets a été considérablement retravaillé. Auparavant, les propriétés GtkWidget::halign et GtkWidget::valign étaient basées sur la taille par défaut du widget lors du placement des éléments, ce qui, en spécifiant une seule taille en mode de remplissage de zone, pouvait entraîner l'occupation d'un espace supplémentaire par l'élément. GTK 4.6 introduit la possibilité de mesurer les tailles manquantes les unes par rapport aux autres (par exemple, si une largeur est spécifiée, le placement peut prendre en compte la hauteur disponible), permettant aux widgets d'être plus fins sans occuper d'espace inutile.
    Kit d'outils graphiques GTK 4.6 disponible
    Kit d'outils graphiques GTK 4.6 disponible
  • Le widget GtkBox a la capacité de calculer la taille individuelle des éléments enfants. Alors qu'auparavant l'espace était réparti équitablement entre les widgets enfants en fonction de leur taille par défaut, GTK 4.6 prend désormais en compte la taille réelle des enfants lors de la sortie.
  • Le widget GtkLabel inclut la prise en charge du retour à la ligne du texte sur un nombre illimité de lignes, vous permettant de créer des étiquettes étroites qui occupent l'espace vertical disponible.
  • La classe GtkWindow a ajouté la possibilité d'ajuster la taille minimale au rapport hauteur/largeur, ce qui vous permet de redimensionner arbitrairement la fenêtre sans craindre qu'elle soit trop petite. Ajout de la propriété "Window.titlebar".
  • Ajout d'un nouvel avertissement concernant les différences de taille si le widget renvoie une taille incorrecte. Gtk-CRITICAL ** : 00:48:33.319 : gtk_widget_measure : l'assertion 'for_size >= taille minimale opposée' a échoué : 23 >= 42
  • Le widget GtkTextView prend désormais en charge les onglets alignés à droite ou au centre. Ajout de la prise en charge de la conversion de texte et des considérations relatives à la hauteur de ligne. Défilement amélioré vers l’opération d’étiquette spécifiée. Gestion améliorée de l’annulation des modifications. Problèmes résolus lors du collage de texte à partir du presse-papiers et du choix de l'emplacement d'affichage de l'interface de collage Emoji.
  • Le widget GtkMenuButton offre la possibilité de définir ses propres éléments enfants.
  • La précompilation des modèles a été accélérée dans GtkBuilder.
  • Ajout du signal d'activation pour activer les widgets GtkComboBox et GtkDropDown.
  • Ajout de la propriété show-arrow au widget GtkDropDown pour contrôler si la flèche est affichée.
    Kit d'outils graphiques GTK 4.6 disponible
  • Ajout de l'attribut use-markup à GtkPopoverMenu pour utiliser le balisage Pango dans le texte du menu.
  • Le système de style prend en charge les propriétés CSS font-variant-caps pour afficher les petites majuscules et text-transform pour transformer le texte.
  • Ajout de l'interface GtkSymbolicPaintable pour contrôler la couleur des icônes de symboles.
  • La prise en charge du suivi des opérations de glisser-déposer a été ajoutée à l'interface d'inspection, le module d'entrée actuel a été affiché, un visualiseur de contenu du presse-papiers a été ajouté, un graphique pour la visualisation gtk_widget_measure() a été implémenté et la possibilité d'enregistrer des événements. a été fourni. Ajout de la prise en charge du mode Glisser-Déposer à l'utilitaire gtk4-node-editor.
  • Pour Wayland, un paramètre a été mis en place pour activer le mode contraste élevé. Ajout de la prise en charge du protocole wl_seat v7.
  • Ajout du paramètre gtk-hint-font-metrics pour rapprocher le rendu du texte du comportement de GTK3.
  • Pour les systèmes basés sur X11, prise en charge supplémentaire des gestes de contrôle du pavé tactile (lors de l'utilisation de XInput 2.4) et comportement amélioré du glissement du titre de la fenêtre.
  • La bibliothèque GDK, qui fournit une couche entre GTK et le sous-système graphique, a amélioré la vérification des versions OpenGL et OpenGL ES. Ajout de la prise en charge de l'espace colorimétrique HSL. Lors du chargement des textures et du traitement des formats d'image, les bibliothèques libpng, libjpeg et libtiff sont directement impliquées. Le code d'initialisation EGL a été déplacé du côté frontend. Ajout de nouvelles API : gdk_texture_new_from_bytes, gdk_texture_new_from_filename, gdk_texture_download_float, gdk_texture_save_to_png_bytes, gdk_texture_save_to_tiff, gdk_texture_save_to_tiff_bytes et gdk_display_create_gl_context.
  • La branche « master » du référentiel Git a été renommée « main ».

Source: opennet.ru

Ajouter un commentaire