Obligement - L'Amiga au maximum

Vendredi 21 septembre 2018 - 18:22  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles en d'autres langues


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Logiciels
 · Jeux
 · Scène démo
 · Divers


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Programmation : GFA Basic - Les gadgets de chaînes
(Article écrit par Denis Obriot et extrait d'Amiga News Tech - mai 1990)


Cette fois, nous allons voir le dernier type de gadget d'Intuition : les gadgets de chaîne. Ils permettent de saisir une chaîne de caractères ou un entier sans passer par la lecture du clavier.

Ils consistent en une zone de saisie dans laquelle il faut cliquer pour pouvoir rentrer les données. Nous avons déjà vu que dans le champ type de la structure gadget 4 correspond à un gadget de chaîne (voir cet article). Il faut ensuite placer dans le champ "Special Info" un pointeur sur une structure StringInfo.

Voici comme d'habitude la structure C :

GFA Basic

Les variables de cette structure n'appellent pas de commentaire particulier.

Quelques petites précisions

Le champ activation de la structure gadget comporte quelques bits ayant une signification pour les gadgets de chaîne :
  • &h0200 : la chaîne sera centrée dans le conteneur du gadget.
  • &h0400 : la chaîne sera justifiée à droite.
  • &h0800 : le gadget représente un entier long.
  • &h1000 : le gadget possède une structure AltKeyMap personnelle.
Voilà pour les données générales, le programme de ce mois-ci définit un gadget de chaîne, et affiche la chaîne lors du clic sur le gadget. Trois routines sont définies :
  • Stringinfo qui initialise la structure C et les deux tampons de saisie (buffer) et un dobuffer, le calcul des premières lignes permet de déterminer la longueur exacte occupée dans la mémoire (on aligne un dobuffer% pour ne pas avoir d'adresse impaire car le 68000 en a horreur). La boucle en fin de procédure sert à initialiser le tampon par la chaîne c$ en la terminant par un zéro (en C, les chaînes se terminent par un zéro qui sert de délimiteur).
  • Litstringinfo qui permet de récupérer la chaîne saisie par l'intermédiaire du gadget.
  • Et enfin Liberestringinfo qui libère la mémoire occupée par le gadget.
Utilisation du gadget de chaîne

L'activation du gadget est effectuée par clic dans le conteneur du gadget. La fin de saisie est réalisée soit par l'appui sur la touche "Entrée" soit par clic hors du conteneur du gadget.

Le gadget de chaîne permet la saisie d'une chaîne bien plus longue que la place occupée à l'écran : les touches curseurs permettent de se déplacer à l'intérieur de la chaîne.

Les touches "Suppr" et "Effacement" permettent respectivement d'effacer le caractère sous le curseur et le caractère à gauche du curseur.

L'appui simultané sur "Amiga-droite" et "Q" annule la dernière modification. L'appui simultané sur "Amiga-droite" et "X" efface le tampon d'entrée.

Programme de démonstration des gadgets

GFA Basic
GFA Basic
GFA Basic


[Retour en haut] / [Retour aux articles] [Article précédent]