IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Blog de Gilles Vasseur - Pascal et compagnie

[Actualité] Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus

Noter ce billet
par , 02/09/2016 à 15h41 (2083 Affichages)
Le monde de Lazarus souffre dans l'ensemble d'un manque cruel de bibliothèques fiables. Aussi, dans le domaine du graphisme, est-il heureux qu'existent des bibliothèques comme BGRABitmap de Johann Elsass pour dessiner avec anticrénelage et transparence. Puissante et stable, elle permet d'envisager la création de logiciels sophistiqués de dessin comme LazPaint, opensource lui aussi et du même auteur.

Autant dire que la nouvelle version 4.0 des contrôles graphiques BGRA Controls, fondée elle encore sur la même bibliothèque, était attendue !

Ce sont plus de trente composants qui sont à présent proposés, avec de nombreux exemples. L'ensemble s'installe sans anicroche sur la palette de Lazarus pour donner deux nouveaux volets :

Nom : 2016-09-02_113956.png
Affichages : 3447
Taille : 13,4 Ko

Petite déception à l'installation : les icônes ne sont pas vraiment explicites et souvent dupliquées. Et inutile de vouloir afficher celles des contrôles du second volet : elles n'ont même pas été personnalisées .

Cette déception est vite passée, car la richesse de la bibliothèque est indéniable.
En premier lieu, les traditionnels boutons personnalisables ne manquent pas, adaptables comme il se doit à de nombreuses situations. Voici le genre de boutons obtenus :

Nom : 2016-09-02_110211.png
Affichages : 2444
Taille : 100,0 Ko

Voici à présent d'autres boutons particulièrement adaptés à la transparence :

Nom : 2016-09-02_110548.png
Affichages : 2628
Taille : 304,5 Ko

Enfin, une place est faite aux styles qui peuvent les habiller comme d'autres contrôles :

Nom : 2016-09-02_105602.png
Affichages : 2532
Taille : 86,6 Ko

Encore un petit désagrément qui aurait pu être évité facilement : certains contrôles comme TBCXButton, TBGGameGrid ou encore TBCTrackbarUpDown sont initialisés à une taille de 5x5 pixels, ce qui les rend invisibles sur une fiche lorsqu'ils n'ont pas le focus.

Dans le domaine des mesures, les horloges et autres vus-mètres sont plutôt sympathiques :

Nom : 2016-09-02_105242.png
Affichages : 2427
Taille : 129,9 Ko

Si vous leur adjoignez des représentations en barres, vous pourrez obtenir des animations spectaculaires dont voici un instantané :

Nom : 2016-09-02_113720.png
Affichages : 2324
Taille : 42,4 Ko

Vous pourrez aussi leur préférer des instruments plus modestes, mais tout aussi efficaces :

Nom : 2016-09-02_110648.png
Affichages : 2470
Taille : 40,8 Ko

Même les éditeurs les plus connus prennent une forme et acquièrent des fonctionnalités intéressantes. Regardez par exemple ces éditeurs dont les flèches de droite vous paraîtront familières, mais qui disposent d'un troisième curseur à leur base fort utile :

Nom : 2016-09-02_110446.png
Affichages : 2406
Taille : 64,0 Ko

Le graphisme est bien évidemment à l'honneur et vous disposez de nombreux filtres pour vos dessins :

Nom : 2016-09-02_105916.png
Affichages : 2471
Taille : 100,4 Ko

Vous pouvez même utiliser des animations. L'exemple suivant est un instantané d'une pluie réglable en intensité et qui tombe sur un paysage :

Nom : 2016-09-02_113234.png
Affichages : 2365
Taille : 210,3 Ko

Ma préférence va cependant au composant TBGRAVirtualScreen qui permet la réalisation d'applications graphiques époustouflantes. Voici un exemple de jeu de labyrinthe fourni avec la bibliothèque :

Nom : 2016-09-02_112159.png
Affichages : 2481
Taille : 274,1 Ko

Le même composant sert aussi de support à des interfaces qui rappellent étrangement celles de certains logiciels actuels :


Nom : 2016-09-02_104554.png
Affichages : 2461
Taille : 26,1 Ko

J'ai encore noté la possibilité d'importer des scripts et, nouveauté très récente, d'utiliser des contrôles régis par des styles. La richesse de l'ensemble ne s'arrête pas à ce survol : il reste une étiquette bien plus polyvalente que TLabel, un bouton de commande, une barre d'outils, un panneau étendu, de quoi animer des lutins (sprites), de quoi concevoir des plugins et des grilles pour les jeux...

Reste à savoir si l'ensemble est aussi fiable que la bibliothèque sur laquelle il est fondé. J'avais laissé de côté ces contrôles il y a près de deux ans à cause de bogues rédhibitoires. Il semblerait que le travail fourni par les concepteurs ait été payant, car seul le composant TBGRAImageManipulation s'est montré récalcitrant (y compris avec l'exemple fourni). Je n'ai descellé qu'un bogue avec TBCDSpinEdit qui contrôle mal la diminution de la valeur après son augmentation, mais le problème vient de l'ancêtre TCDSpinEdit. De toute façon, l'accès au code source est garanti et, même si les commentaires sont assez rares, les concepteurs ont joué le jeu d'identificateurs très parlants.

Après avoir manipulé dans tous les sens ces contrôles, je crois pouvoir dire qu'ils devraient satisfaire les besoins essentiels de ceux qui veulent soigner la présentation de leurs applications. Pour les utilisateurs de Lazarus, c'est un véritable bonheur !

Qu'en pensez-vous ?
Allez-vous utiliser cette bibliothèque de contrôles ?

Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Viadeo Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Twitter Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Google Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Facebook Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Digg Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Delicious Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog MySpace Envoyer le billet « Sortie de BGRA Controls v4.0, une bibliothèque de composants graphiques pour Free Pascal/Lazarus » dans le blog Yahoo

Mis à jour 13/09/2016 à 18h57 par gvasseur58

Catégories
Free Pascal , Lazarus

Commentaires

  1. Avatar de matthius
    • |
    • permalink
    Je vois que Johann travaille à plusieurs.
    Moi il me manque quelqu'un qui compile régulièrement ce que je transforme.
    Pour ce qui est des bibliothèques qui ne possèdent pas de bogue, il y a les composants payants qui ont le mérite de ne même pas avoir à compiler.
    Alors cessons de nous plaindre. Soit on paye soit on participe. C'est l'un ou l'autre ou l'un et l'autre.