11. Notes de version #
← Migrer de la 2.0 à la 3.0 · Sommaire
Une version acquise ne perd jamais ses composants : la 3.0 contient les vingt et un de la 1.0 et de la 2.0, et une clé dont la maintenance couvre la date de votre build compile avec la DLL la plus récente — voir Licence.
3.0 — septembre 2026 #
Onze composants : données, utilitaires et médias #
- Breadcrumb — le fil d'Ariane : où l'on est, et retour à n'importe quel niveau en un clic. Branches ouvertes à la demande, saisie directe du chemin, fichiers déposés sur un segment.
- Button bar — une rangée de boutons de commande — icône, libellé ou les deux — dans un seul composant ; un clic rend la clé du bouton.
- Crosstab — le tableau croisé dynamique d'un DataStore : lignes, colonnes, valeurs agrégées, filtres, sous-totaux, champs et mesures calculés, export CSV et Excel.
- Crypto — empreintes, HMAC, chiffrement par mot de passe ou par clé, signatures RSA, ECDSA et Ed25519, JWT, mots de passe salés, TOTP à deux facteurs et DPAPI — sans rien installer.
- JSON — construire un document JSON type par type, le lire le long d'un chemin et le modifier sur place, en PowerScript pur.
- JSON tree — un document JSON affiché comme dans un éditeur de code : numéros de ligne, coloration par type, repli de chaque bloc, recherche.
- REST client — un client HTTPS natif et asynchrone : GET, POST, en-têtes, JSON, multipart, cookies, nouvelles tentatives, téléchargement de fichiers — sans le mur CORS d'un navigateur.
- Speech out — la lecture à voix haute avec les voix installées sur le poste : phrase et mot en cours, file d'attente, dictionnaire de prononciation, lecture synchrone.
- Video player — un lecteur vidéo avec sa propre barre au thème : sous-titres, plein écran, chapitres, marqueurs, liste de lecture, capture d'image.
- XML — construire un document XML élément par élément et le lire avec un vrai XPath : espaces de noms, modification, transformation XSLT.
- XML tree — un document XML affiché comme dans un éditeur de code : balises, attributs et texte colorés, repli de chaque élément, recherche.
Ce qui change #
- Toute position donnée à une méthode compte à partir de 1, comme celles que rendent déjà les events de réordonnancement ; une entrée en cascade rend son adresse complète. Le détail, et ce qu'il faut modifier : Migrer de la 2.0 à la 3.0.
- Button reste livré et supporté, mais il est déprécié au profit de Button bar : une barre de boutons tient en un seul composant.
Ailleurs dans la bibliothèque #
of_set_property,of_get_propertyetof_component_name: piloter une propriété par son nom, pour un écran de réglages ou une configuration enregistrée.- La boîte de message propose une liste de choix (
of_add_choice,of_choose) en plus de ses boutons.
Corrigé #
- Une couleur relue (
il_text_color,il_accent…) rendait0, du noir, qu'elle soit posée ou non : elle rend la couleur posée, et-1quand c'est celle du thème. ue_errorde Picture et de Shell explorer n'était jamais levé.- Texte riche : un
[mot]inconnu faisait disparaître la suite du texte ; il s'affiche désormais tel quel. - Barre d'état :
ue_panel_rclickeddonne des coordonnées écran, à passer telles quelles à un menu contextuel.
2.0 — septembre 2026 #
Cinq composants, tous tournés vers la navigation #
- Menu bar — barre de menus d'application : menus, sous-menus, entrées cochables, séparateurs, icônes, raccourcis et mnémoniques
&Fichier, dessinée par la bibliothèque dans le thème de l'application. - Command palette — un raccourci, trois lettres, et n'importe quelle action de l'application est atteinte sans la chercher dans les menus. Recherche sur le libellé, le groupe et les mots-clés, en plusieurs mots.
- Radial menu — les commandes en couronne autour du curseur au clic droit, choisies par leur direction plutôt qu'en parcourant une liste.
- Shell explorer — l'arborescence du vrai shell Windows : Bureau, Ce PC, lecteurs, dossiers, Réseau, avec les icônes du poste. Un seul
of_expandouvre un chemin profond. - Stepbar — le fil d'étapes d'un assistant : les étapes franchies, celle en cours et celles à venir, en horizontal ou en vertical.
Une API remodelée sur les seize de la 1.0 #
Une clé, une adresse ; tout depuis le composant ; un ajout rend un code. Les trois règles, l'avant/après et chaque signature changée sont dans Migrer de la 1.0 à la 2.0. Ce qui l'a motivé : une poignée qui ajoutait ne pouvait pas dire qu'elle avait refusé, et trois arguments pour désigner un item obligeaient chaque composant à inventer sa propre façon de le faire.
Sur tous les composants #
of_count,of_keys_atetof_has, sur le composant et à chaque niveau : ce qu'un composant contient se demande, il n'y a plus à le retenir soi-même.- Toute méthode qui rend un
longdit ce que son retour signifie :0appliqué,-5argument invalide,-2composant non créé — dans la doc embarquée de la démo comme ici. - Les propriétés d'un item se relisent en direct : l'icône d'une entrée de listbar, le texte et l'icône d'une tuile, l'état d'un bouton de barre — un getter dit ce qui est à l'écran, jamais une valeur mémorisée.
ib_visiblesur chaque entrée de menu — barre de menus, menu contextuel, menu radial, menus du ruban : masquer n'est pas griser, l'entrée quitte le menu, raccourci compris, et garde sa clé pour revenir.- La barre d'état construit ses menus entrée par entrée (
of_add_menu_item ("panel/id", …)), avec une poignée d'entrée qui grise, coche et masque — à la place des deux tableaux parallèles deof_set_panel_menu. ue_script_error: une erreur de script dans la page remonte à PowerBuilder avec son message et sa pile, au lieu de se perdre.
Corrigé #
- Un item désactivé ou masqué ne répond plus à rien : ni clic, ni clavier — la listbar sélectionnait encore une entrée grisée sur Entrée.
- Le texte grisé se lit dans tous les thèmes (contraste 3:1 au moins), et le texte survolé aussi en mode sombre — deux boutons désactivés du ruban devenaient invisibles en Office 2007.
- Un chemin Windows lu depuis la page revenait avec ses antislashs doublés (
C:\\Windows) ; une valeur contenant un guillemet était coupée. - Dock container : le panneau épinglé à gauche perdait sa bordure droite au-dessus de 100 % d'échelle d'affichage.
- Ruban : l'icône d'un bouton désactivé n'était pas grisée en mode compact ; un titre de barre de menus s'allumait en même temps que le survolé.
- Éditeur de code : le texte relu après un repli était l'ancien, et déplier écrasait la frappe.
1.0 — août 2026 #
Première version : seize composants — button, code editor, dock container, listbar, message box, PDF viewer, picture, progress, ribbon, statictext, statusbar, tab, tiles box, toaster, toolbar, web browser — une seule DLL à déployer, x86 et x64 sous le même nom, aucune dépendance .NET, ActiveX ni PBNI. Thèmes Office, Fluent et Metro, clair et sombre ; six langues et RTL ; licence entièrement hors ligne ; PowerBuilder 10.2 à 2025.