Obligement - L'Amiga au maximum

Dimanche 28 mai 2017 - 08:45  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · 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 in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


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


Soutien

N'hésitez pas à soutenir le projet Obligement



Contact

David Brunet

Courriel

 


En pratique : CanDo - réalisation d'un utilitaire (ClicList)
(Article écrit par Guy Beteille et extrait d'Amiga News - janvier 1992)


Chose promise, chose due. Voici ClicList, une petite application CanDo. Son but : ouvrir une fenêtre sur l'écran du Workbench et y afficher une liste de vos programmes préférés que vous pourrez lancer d'un clic de souris... sans ouvrir tiroirs ou disquettes.

CanDo Il existe bien sûr une foule d'utilitaires du même genre et celui-ci n'a pas la prétention de les remplacer mais seulement de vous permettre d'écrire le vôtre pour épater votre voisine ou voisin.

Le projet

Avant de programmer, essayons de voir ce qu'il nous faut :
  • Ouvrir une fenêtre sur le Workbench.
  • Afficher une liste (d'après votre fichier de configuration).
  • Avoir un bouton "Quitter".
  • Avoir un bouton "Iconifier" (pour mettre ClicList dans un coin du Workbench et donc ouvrir une toute petite fenêtre).
  • Affichage de la date et de l'heure (pourquoi s'en priver ?).
  • Exécutions de programmes externes (la véritable fonction de l'application).
Ce qui demande en langage CanDo la création de deux "Card", de deux "Boutons", d'une zone d'affichage et d'un objet "timer" pour l'heure, d'un document "list" à afficher.

Pour que notre utilitaire soit adaptable au besoin de chacun, il suffit de lui faire lire à son ouverture un fichier de configuration que chacun utilisera pour y indiquer ses programmes. Ce fichier texte doit obéir à quelques règles simples pour pouvoir être correctement compris par ClicList. Voici le modèle d'une ligne :

Nom du programme.1 | chemin du programme.1 | Taille de la pile

Soit une ligne par programme, et deux à trois "mots" par ligne. Le premier mot est le nom du programme tel qu'il sera inscrit dans la liste affichée sur le Workbench. Le deuxième mot sera le chemin complet du programme (avec son nom réel évidemment), et le troisième mot indiquera si le programme lancé a besoin d'une pile adaptée. Ici le mot se termine par une barre verticale (|).

Chaque mot sera placé dans un document. Lorsque vous cliquerez sur le nom d'un programme, l'application ira chercher dans le deuxième document où se trouve ce programme. Une fois identifié, il sera lance par la routine "LanceProgramme" et surtout par la commande CanDo "DOS". Cette routine vérifiera s'il s'agit d'un programme, d'un script AmigaDOS ou d'un "Deck".

Création de la carte "CarteList"

Cette carte n'aura qu'un script qui demandera la lecture du fichier configuration :

CanDo

Ouverture de la fenêtre

A l'aide de l'éditeur de fenêtre, ouvrez sur le Workbench une fenêtre, de la dimension que vous désirez (pas trop grande tout de même) et n'ayant pas l'objet "Redimensionnement". Cliquez sur "CloseButton", pour entrer la commande "Quit". Ainsi vous pourrez quitter l'application à partir du gadget de fermeture de la fenêtre.

Ouverture d'un document

On peut créer deux sortes de documents, le document de type "mémo" et celui de type "list". Cette distinction n'a d'ailleurs d'importance que si le document doit être visualisé à l'écran. Il n'est pas possible d'écrire dans un document "list" depuis le clavier. C'est ce type de document que nous allons créer sur la fenêtre de ClicList car il permet de sélectionner juste une ligne dans une liste (avec la souris).

CanDo

Dimensionnez le document de telle manière qu'il occupe toute la largeur de la fenêtre mais qu'il laisse suffisamment de place pour placer deux boutons en dessous et permettre d'afficher la date. Un seul script sera associé à cet objet document, le script exécuté par CanDo en cas de double-clic. Ce script sera bref, appel à une routine :

DO "LanceProgramme"

Création des boutons

Créez deux boutons que vous placez en dessous du document "list". Chaque bouton sera de type "sert' et exécutera un script en cas d'événement "OnRelease", c'est-à-dire lorsque vous relâchez le bouton de la souris. Le bouton "Iconifier" appellera la carte "Icône". Son script "Onftelease" sera : GoToCard "Icône". Le bouton "Quitter" aura pour script "OnRelease" : Quit.

CanDo

Création de l'objet "Timer"

L'éditeur de ce type d'objet permet de définir à quels intervalles réguliers un script sera exécuté, ici l'affichage de la date. Choisissons toute les dix secondes. Le script "Occurred" sera : Do "LireDate".

CanDo

Création de la carte "Icône"

Créons une nouvelle carte dont la fenêtre sera aussi minuscule que possible. Cette fenêtre aura un script "CloseButton" : GoToCard "CarteList" qui permettra de retrouver ClicList lorsque l'on clique le gadget de fermeture.

Les routines

Routine "LireConfiguration"

CanDo
CanDo

Routine "LireDate"

CanDo

Routine "FaireListe"

CanDo
CanDo

Routine "LanceProgramme"

CanDo

Exemple de fichier de configuration

CanDo

Les limites d'une application

Ce petit utilitaire est surtout destiné à ceux qui sont équipés d'un disque dur. Ceux qui en sont dépourvus peuvent toute même l'utiliser, à la condition de lancer leurs programmes depuis une seule disquette. ClicList n'a aucune utilité si vous redémarrez une disquette différente à chaque nouveau programme. Dans votre fichier de configuration, prenez soin d'indiquer le nom des disquettes où se trouvent vos programmes favoris et non pas des lecteurs de disquettes (DF0:, DF1:) !

Une limite de CanDo est la taille d'une application. Une application a en effet, si j'ose dire, deux tailles : celle de la disquette (taille du fichier source, en général assez petite), et celle de la place qu'elle occupe en mémoire. Toute application a besoin de la cando.library, or celle-ci est d'une taille assez importante. Si donc vous avez peu de mémoire. ClicList risque d'encombrer un petit peu. Un avantage toute même à cette cando.library, c'est qu'elle peut être utilisée par plusieurs applications en même temps. Dans ce cas, elles ne consomment pas plus de mémoire que d'autres programmes (d'où l'intérêt d'écrire beaucoup d'applications !).

Une autre limite de ClicList tel qu'il est décrit ici c'est l'absence de gestion des erreurs. J'ai volontairement choisi de réduire cette application à l'essentiel afin que vous ne soyez pas perturbé par un listing trop long. D'ailleurs, vous pouvez vous-même gérer ces erreurs si elles surviennent en utilisant les instructions :

IfError
...
Endif

En ce qui concerne l'exécution des scripts AmigaDOS, il y a beaucoup de lacunes. Du moins souvent une absence de réaction due tout simplement au fait que les commandes AmigaDOS de votre script qui doivent afficher des informations à l'écran, n'ont pas une fenêtre pour le faire, et comme dirait Lapalisse puisque rien n'est affiché, il n'y a rien à voir.


[Retour en haut] / [Retour aux articles]