fermez cette fenêtre pour revenir au site de microrun

Version 1.8x :



Scroll les listes de plus d'1 ligne par flèche haut: La ou les dernières lignes n'étaient pas affichées.


Version 1.8w :



Correction d'un débordement dans l'affichage en scrollant les listes par flèche haut.


Version 1.8v :



Nombre de numéros logiques dans les listes :
Le painter était encore limité à 127 nlogs. Maintenant la limite est de 256.
z.ah: Nombre de fonctions utilisant inutilement des PTR en paramàtre d'entrée ont été modifiées pour utiliser des DCL.
Dans certains cas rares, la fonction zmesaf pouvait casser la mémoire (variable initialisée de manière aléatoire).


Version 1.8u :



zbig_bout cassait le zaskwriteconfig: Ce n'est plus le cas.
La fonction zlifposit avec des requêtes > 256 octets pouvait casser la mémoire (exceptions).
La fonction zlifposit avec chr$(254) en 1er caractère pouvait casser la mémoire (exceptions).


Version 1.8t :



Régression corrigée: Dans Z.O, erreur de syntaxe pour la fonction zlisgrafic_mode qui plantait ALD.
La fonctions zFTP_disconnect était anormalement longue. Ce n'est plus le cas.
Disparition de la fourniture ZLC.O inutilisée par les développeurs. (solution = mode ZAT)
Correction d'un défaut dans le scroll de listes dont la ligne logique comporte plusieurs lignes physqiques.


Version 1.8s :



Le painter (bikini.At) ne générait pas correctement les vues (colonnes des listes) dans les projet "version client".
Coller par Ctrl V dans les zones BCD ne fonctionnait pas toujours.

GRANDES POLICES: Meilleur test des résolutions de la zone client wexa: Bikini force le mode inférieur si nécessaire,
afin de ne pas avoir d'exception quand la résolution de l'écran est trop petite.


Version 1.8r :



L'exemple EXBIKV18.at n'était pas présent dans la fourniture Abal 3 de Bikini.
Le copier/coller sur les zones BCD ne fonctionnait pas toujours.



Version 1.8q :



Sur changement d'onglet avec des écrans contenant des listes évoluées, la mémoire n'était pas libérée.
La fonction zfile_manage ne libérait pas toujours la mémoire utilisée par les listes évoluées des écrans.
Zload_go: Simplification interne de la fonction qui ne détache plus Zlibrary avant le load.go pour la réattacher au retour.


Version 1.8n :



PAINTER: Insertion ou suppression de variable dans le painter ne modifie plus à tort les couleurs et fonds des autres saisies.
Limite à la ligne 31 pour les listes repoussée à la ligne 40.
Fin d’apparition inopportune du bouton de variation sur insertion/suppression de variable dans le painter.

ZLIB: zones texte - supprimer un caractère en fin de ligne déplace maintenant toute la ligne suivante et non le mot en début de ligne suivante.
ZLIB: Appeler un menu contextuel par click droit pouvait générer des erreurs 102 par la suite dans les zones de saisie en actionnant la roulette de la souris.
ZLIB: Dans le cas de listes liées (zlifdisplay), l'utilisation de zlifuser (up, down utilisateurs) dans la liste principale était transmise à tort à la liste secondaire.



Version 1.8m :



ATTENTION: La version 1.8m du 27/12/2009 remplace la 1.8m du 05/12/2009 qui contenait une erreur de fourniture (le painter ne fonctionnait pas).
Click droit puis appel du calendrier pouvait casser le posit courant dans les listes.
Correction d'une anomalie en insérant une ligne dans une zone texte.
Le tri sur les dates des listes évoluées était correct avec le format xx/xx/xxxx mais pas avec le format xx/xx/xx.
Impression à l'aide de zimp_impprint: Les signes + et - provoquaient un mauvais alignement.
Lorsqu'un liste évoluée était triée par l'utilisateur selon un autre critère que le tri principal, la modification d'un record du fichier
n'était pas prise en compte en visualisation.
Fonctions zask_getoldradio et zask_getoldcheck venant compléter les fonctions zask_getold. (ces fonctions rendent la valeur AVANT la saisie.
Fonction zaskgoto_listrefresh remplaçant zaskgoto+zlisrefresh.
Fonction zaskgoto_linerefresh revenant à une liste avec REAFFICHAGE de la ligne courante (même si c'est une liste fichier évoluée chargée en mémoire
et que l'utilisateur a réalisé un tri en cliquant sur la barre de titre.
Ces fonctions seront documentées dans la version 1.9. En attendant, regarder le prototype dans z.ah.




Version 1.8l :

Le zafter ne fonctionnait pas toujours derrière un ZASK associé à un bouton contextuel.
fonctions accès fichiers ascii ZAC*: Par souci de compatibilité avec Screener, la longueur maxi de la ligne est portée de 1024 à 4096 octets.
fonctions ZAC: Le nombre de fichiers maxi passe de 64 à 512 fichiers.
La sélection multiple dans la fonction browse ne fonctionnait pas.
Choix "user" sur menu contextuel click droit. Plus besoin de passer un za correspondant à un push bouton. Un za ne correspondant à aucune saisie est autorisé à condition de gérer ce za dans l'automate.


Version 1.8k :

Correction d'une exception aléatoire en entrant dans les listes évoluées.
Diverses corrections sur les tableaux de radio boutons horizontaux.


Versions 1.8f/1.8g/1.8h/1.8i/1.8j :

ZxpLibrary est désormais livrée avec les modules de débug (*.wdg - Abal 2 / *.dbg - Abal 3) afin de mieux tracer les éventuelles erreurs Abal à l'intérieur de la bibliothèque.


Version 1.8a, 1.8b, 1.8c, 1.8d et 1.8e :

Une série d'améliorations ayant pour but de simplifier la vie du développeur, et de l'utilisateur !
des EVOLUTIONS MAJEURES ont été développées sur les listes. (voir plus bas)


NOUVEL EXEMPLE EXBIKV18.AT.
Exemples anciens actualisés avec les nouvelles fonctions :EXLISTS, EXLIST2 et EXDIALOG.

LISTES :

Un travail important a été réalisé sur les listes (MEMOIRE ET FICHIER) afin de les enrichir de fonctionnalités avancées, sans que le développeur ait à modifier son code source :

- Listes évoluées: Il est maintenant possible de contrôler dynamiquement lors de l'affichage des lignes la couleur et la police d'une "case". La nouvelle fonction zcol_modif permet de contrôler ces paramètres pour une colonne donnée s'une ligne donnée. Par exemple, il est maintenant possible d'afficher, uniquement pour un cient débiteur, son débit en rouge.



Painter: Il est maintenant possible de créer une vue [Liste avec Colonnes] sans créer de fichier: Le logiciel ne l'empêche plus.


TRIS AUTOMATIQUES Sur les colonnes d'une liste :

Dorénavant, les listes évoluées peuvent être triées par l'utilisateur en cliquant sur n'importe quelle colonne de la barre de titre. Ceci est automatique et ne demande pas de programmation supplémentaire.
Le click sur une "case" de la barre de titre enfonce cette case, la liste est triée en fonction du contenu de la colonne lors du déclick sur la barre de titre.



La colonne triée est indiquée par un signe pour un tri croissant et un autre pour un tri décroissant :



La fonction zcol_setdefault permet de définit quelle colonne est triée par défaut en entrant dans la liste.

La fonction zcol_changesort permet au développeur de prendre la main (par fonction callback) lors du click sur une colonne de la barre de titre, et de réaliser lui-même le tri. Dans ce cas, la liste est automatiquement rafraîchie après ce traitement.


LISTES FICHIERS RE-ECRITES :


Les listes fichiers changent complètement de philisophie:

Le fichier (ou une partie du fichier) est automatiquement chargée en mémoire, les listes fichiers ont maintenant un look and feel conforme aux listes Windows.

Ceci apporte aux listes:

=> La manipulation par l'utilisateur d'un ascenseur pour se positionner.
=> La possibilité pour l'utilisateur de trier la liste dans n'importe quel ordre selon son désir. par un simple click dans la barre de titre de la liste
=> La conformité du visuel avec les standards graphiques actuels.

Cette fonctionnalité est AUTOMATIQUE, sans programmation, à condition que la liste soit une liste évoluée, et que la fonction ZLIFLINE soit utilisée.
Le ZLIFREPOSIT recharge automatiquement la liste avec les nouvelles données (frappe de caractères dans la zone de saisie associée).
Si la totalité du fichier n'a pu être chargée dans le temps imparti, le déplacement de l'utilisateur à l'intérieur de la liste provoque un scroll de la partie du fichier chargée en mémoire.

Ce comportement est entièrement paramétrable, de manière globale, ou liste par liste, grâce aux fonctions zfile2mem_config, zfile2mem_search et zfile2mem_delay:

- zfile2mem_config définit si les listes fichiers suivant l'instruction sont gérées avec le nouveau mode ou pas.
- zfile2mem_search définit si des down et up sont effectués par Zxplibrary lors du déplacement du curseur dans la liste.
- zfile2mem_delay définit en 1/10e seconde le délai d'attente de chargement initial de la liste.


Un extrait de compte utilisant les nouvelles fonctionnalités (tri par lettrage) :




=> Les écritures historique apparaîssent en rouge.
=> Les écritures lettrées comportent un lettrage sur fond jaune pour le mettre en évidence.
=> L'extrait de compte peut être triée par l'utilisateur par JOURNAL, par DATE, par DEBIT, par CREDIT, par PIECE, par LETTRAGE, par LIBELLE, tout ceci sans que le développeur ait à intervenir.


- Listes mémoire et fichiers: Il est souvent souhaitable de visualiser la ligne de la liste sélectionnée par l'utilisateur lors qu'il quitte une liste. Ceci est maintenant automatiquement géré par Bikini: La ligne courante est affichée en grisé lorque la liste perd le focus.




SELECTIONS SUR LES LISTES - MULTIPLES LISTES DANS UNE BOITE DE DIALOGUE :

Le logiciel n'admettait dans une boite de dialogue donnée qu'une seule liste mémoire autorisant les sélections, ainsi qu'une seule liste fichier. Dorénavent, si les listes sont évoluées (zcol_add), jusqu'à 32 listes simmultannées comportant des sélections peuvent être gérées dans une même boite de dialogue.
Les listes comportant des sélections peuvent être triées par l'utilisateur en cliquant sur la barre de titre, sans perdre les éléments sélectionnés.

LES EXEMPLES EXLISTS.AT ET EXLIST2.AT INTEGRENT CES NOUVELLES FONCTIONNALITES !




BOITES DE DIALOGUE :

- fonction zdialog_ismodif. Lorsque l'utilisateur abandonne un écran (ESCAPE), quoi de plus énervant pour lui que de se voir afficher un message du type "Voulez-vous vraiement abandonner la saisie ?" s'il n'a rien modifié dans l'écran. Cette nouvelle fonction vous permet de savoir si l'utilisateur a modifié au moins une saisie d'un écran (ou appuyé sur un bouton), afin de lui proposer le message de confirmation d'abandon.

- fonction zask_ismodif. Cette fonction permet de savoir si, dans le traitement après, une saisie a été modifiée par l'utilisateur. Inutile maintenant de sauvegarder l'ancienne valeur avant saisie pour réaliser ce test.

- fonctions zask_getold. Jeu de fonctions permettant de récupérer, en traitement apreès une saisie, la valeur initiale d'une zone de saisie ($, #, %, bcd, Date) avant que l'utilisateur ne la change. Ceci permet par exemple de TENIR UN JOURNAL des modifications opérées par l'utilisateur.

- fonction zaskrollback_restore. Revient à la saisie précédente en restaurant automatiquement l'ancienne valeur après la saisie de l'utilisateur. S'utilise typiquement lorsque la valeur saisie est erronée pour restaurer la valeur par défaut.

- Fonctions zaskoblig et zask_notoblig: Afin de ne pas répéter les contrôles après saisie en traitement après le bouton "O.K", Bikini propose une solution qui permettra de simplifier le code source des contrôles dans les écrans et de les fiabiliser.
La fonction zaskoblig permet de flagguer une saisie (alpha, avec liste, numérique, texte...) comme obligatoire. Tant que cette saisie n'aura pas été correctement renseignée par l'utilisateur, tout appui sur le bouton O.K se soldera par un retour automatiquement géré par Bikini sur cette saisie, même si la boite de dialogue comporte des onglets.
Au développeur d'utiliser la fonction zask_notoblig dans le traitement après de la saisie obligatoire, lorsque la valeur est correcte, pour débloquer le caractère obligatoire de cette saisie.

IMPOSSIBLE maintenant pour l'uilisateur d'entrer des valeurs erronées dans un écran, et ce sans traitement particulier à insérer derrière le bouton O.K.


BITMAPS :

- Passage du nombre maximum de bitmaps par boutons de 100 à 500.



BOITES YES/NO :

- Boites Yes/No: Fini la perte de temps de positionner zmesyesdefault ou zmesnodefault sans arrêt dans le déroulement du programme: La nouvelle fonction zmesno_yes positionne le "No" par défaut, la fonction zmesyes_no positionnant toujours par défaut le "Yes".



ZDIALOG et ZDIALOG_END :

Pour les utilisateurs du painter, des fonctions plus logiques permettent de gérer les boites de dialogue:

- zdialog remplace zdialog_box et réalise automatiquement la sauvegarde de la boite de dialogue précédente (zaskpush).
- zdialog_end supprime la boite de dialogue courante, efface la fenêtre associée, et restaure le contexte (zaskpop).

Les sources générés par le painter sont adaptés en fonction des nouveautés.


Fonction ZASKTEXT :

Comportement plus moderne des zones de saisie TEXTE :
- Le mode insertion est positionné par défaut. Insérer des caractères ne pousse la ligne suivante que si la ligne courante est saturée.
- Valider en mode insertion provoque la création d'une nouvelle ligne.
- Les touches DEL et BACKSPACE ne déplacement, si possible, le texte que sur la ligne courante et non sur toute la zone texte.
- Click droit sur une zone texte affiche un MENU CONTEXTUEL qui comporte les fonctions suivantes :

- Alignement à gauche.
- Alignement à droite.
- Centrage.
- Justification.




POSSIBILITE D'ASSOCIER UN ASCENSEUR VERTICAL ET UN ASCENSEUR HORIZONTAL A ZASKTEXT:

Dans ce cas un scroll horizontal et/ou vertical est automatiquement géré dans la fonction ZASKTEXT, de manière totalement transparente.
La roulette de la souris est gérée dans le champs texte.
Le painter permet de d'associer un ascenseur vertical et/ou un ascenseur horizontal à un champs texte.


BOUTONS GRISES :

Un nouvel effet plus esthétique est associé aux boutons grisés :




On rappelle que la fonction zpbout(nobouton%,"G") permet de griser un push bouton.