
Historique
version 1.0 (achevée en 1992)
Première version du programme. Elle est développée sur Atari 1040SFT,
écran monochrome indispensable. Entièrement écrit en GFA Basic.
Environnement 'maison' (n'utilise pas le GEM).
Permet l'impression des arbres ascendants ou descendants
via l'appel système hardcopy().
version 1.1 (1993)
Réécriture complète du programme, toujours en GFA Basic.
Cette version se veut 100% compatible GEM. Cette version n'est pas du tout stable
et ne sera jamais terminée. Un programme annexe
permet d'imprimer un arbre (ascendant ou descendant) via GDOS
(ça fonctionnait à merveille sur ma Citizen 120D).
version 1.2 (1994-1996)
Réécriture complète du programme, cette fois en C (Sozobon C v1.40i).
Tout au long de ces 3 années, le programme n'a cessée d'
évoluer, en opérant à des modifications majeures.
Le principe est resté le même, mais les outils pour construire l'arbre
ont évolué pour devenir de plus en plus simples et efficaces.
De même, de nombreuses fonctions sont apparues, d'autres ont
disparues, tout cela dans le but d'avoir un programme
le plus intuitif, simple, et complet possible.
Depuis sa première mouture, cette version utilise SpeedoGDOS.
version 1.29 (fin 1996)
Ce programme me semble assez mûr, et peut intéresser d'autres
personnes. Je pense maintenant à le diffuser beaucoup plus
largement. De nombreuses fonctions en cours de développement
(arbres biscendants, appel à diderot, etc...), qui ne sont
pas toutes très stables, sont rendues temporairement inaccessibles
afin d'obtenir un programme 'propre' et diffusable. Parallèlement,
le programme continue d'évoluer.
version 1.30 (29 mars 1997)
Ca y est. Cette version me semble d'une présentation
correcte : j'ai essayé de supprimer tous les accès aux
fonctions en cours de développement.
Je m'attaque maintenant à la documentation au format HTML
(tout en continuant à faire évoluer le programme). A partir
de cette version, ce fichier historique sera régulièrement
mis à jour.
version 1.31 (2 juin 1997)
- Il n'y a plus de préférence 'une fenêtre par type de
représentation' qui était un peu lourde à utiliser, et
qui n'apportait pas vraiment un confort d'utilisation.
- Utilisation de paramètres par défaut pour l'ouverture
d'arbres ou de liste de fiches.
- Ajout du bouton 'imprimer' dans les barres d'outils des
fenêtres arbres et liste de fiches
- Ré-écriture de la gestion de l'impression via SpeedoGDOS
- Modification des fonctions de trie. Dorénavant, la date
de naissance est un argument supplémentaire pour trier
un fiche.
- Possibilité de décaler une fiche vers le bas ou vers le
haut dans un arbre descendant, c'est à dire de modifier
la position d'une fiche par rapport à ses frères et soeurs.
Ceci est très utile quand les dates de naissance sont
inconnues.
- Les flèches sont désormais des raccoucis claviers pour les
ascenseurs de la fenêtre au premier plan.
version 1.32 (17 juin 1997)
- La doc au format HTML est maintenant bien entamée
- Le drag 'n drop interne a été complètement revu. Maintenant, il est
possible de déplacer autre chose que des fiches. En particulier, il
est possible de déplacer l'icône "masque" des barres d'outils en
fenêtre vers la poubelle pour démasquer toutes les fiches.
De plus, les destinations possibles pour le drag 'n drop ne sont
plus QUE les fenêtres ou les icones du bureau. Ces destinations
sont n'importe quel objet de la fenêtre (icone d'une barre d'outil,
par exemple). Ainsi, il est possible de déplacer :
- une ou plusieurs fiches vers l'icône 'arbre ascendant' (descendant
ou biscendant) des barres d'outils des fenêtres "arbres"
pour ouvrir une nouvelle fenêtre,
- une ou plusieurs fiches vers l'icône 'masque' des barres d'outils
pour masquer/démasquer la fiche concernée.
- Une entrée de la barre de menu 'Utils/Aide' permet d'accéder à l'aide
en ligne. C'est l'équivalent de la touche HELP du clavier.
- Raccourci pour les opérations de masquage : l'entrée 'Util/masquer'
de la barre de menu permet de masquer/démasquer la ou les fiches
sélectionnées.
version 1.40 (15 août 1997)
- debuggage
- modification de l'apparence des formulaires permanents : il n'ont
ni titre, ni bouton de sortie. Le changement d'état d'un objet
est immédiatement pris en compte.
- chaque type de fenêtre est désormais associé à une page diderot.
avant, les pages diderot étaient associés aux formulaires en
fenêtre uniquement.
- optimisation des procédures de redraw
- suppression de messages redraw superflus
- drag'n drop d'une fiche sur une fenêtre arbre : si ALT est
enfoncé, c'est une nouvelle fenêtre arbre qui s'ouvre.
- ré-écriture des routines liées aux modèles de présentation
en vu de l'implémentation du formulaire "aperçu avant impression"
CHANGEMENT DE COMPILATEUR :
JE SUIS PASSE DE SOZOBON C 1.40i au SOZOBONX 2.00
ET CHANGEMENT DE LIBRAIRIE ... DEBUGGAGE INTENSIF ET REECRITURE
DE PLUSIEURS FONCTIONS DES LIBRAIRIES STANDARDS (SURTOUT XVDIFAST
POUR ASSURER LA COMPATIBILITE AVEC LES NOUVEAUX DRIVERS SPEEDO)
- donc, debuggage intensif.
- la doc html prend forme.
- les icônes du bureau (et des barres d'outils des listes de fiches)
sont entièrement redessinés. Ils sont enfin (!) présentables.
- Il est maintenant possible d'imprimer le titre du document.
Le titre de la fenêtre sera inscrit en haut de la page, avec
en dessous la date actuelle. Les fontes utilisées sont celles
du nom (du modèle de présentation) pour le titre, et du prénom
pour la date.
- Des repères de séparations de pages peuvent être dessinés
si le document est imprimé sur plusieurs pages. Ces repères
sont une aide au découpage des pages avant de les coller
entre elles.
- Le paramètre 'afficher fiches vides' a été supprimé pour
les représentaions descendantes. Ce paramètre n'était
jamais utilisé et pouvait engendrer des erreurs de saisie
assez pénibles à rectifier.
- Autre modification des arbres descendants : en cas de
masquage, les conjoints apparaissent (comme en bout
d'arbre), ce qui n'était pas le cas avant (les conjoints
aussi étaient masqués).
- Les arbres de type biscendants sont désormais pleinement
fonctionnels !
- La date de naissance (et de décès) est ajoutée aux noms et
prénoms des racines des arbres dans les titres (titres des
fenêtres, utilisés à l'impression).
version 1.41 (4 septembre 1997)
- Comme toujours, correction de quelques bugs mineurs
- Utilisation plus complète des nouveaux drivers SpeedoGDOS
(utilisation de la fonction vs_page_info())
- Le formulaire "aperçu avant impression" est maintenant
pleinement opérationnel.
- Le titre des documents à imprimer est désormais entièrement
paramètrable. Le formulaire peut être appelé depuis le
formulaire "Configurer l'impression". Il permet d'ajouter un
en-tête aux documents, composé de 3 chaînes de caractères
dont les positions, les fontes, les attributs, la taille,
la justification et le contenu sont entièrement paramètrables.
CE FORMULAIRE N'EST ACCESSIBLE QU'AVEC UNE VERSION ENREGISTREE
DU PROGRAMME.
version 1.42 (8 septembre 1997)
- Les modèles de présentation sont redéfinis (fichier GENE.INF).
Il y a maintenant 3 modèles de présentations utilisés pour
les possesseur de SpeedoGDOS (ou NVDI), et 3 autres pour ceux
qui ne disposent que de la fonte système. Celà, aussi bien pour
les arbres, que pour les listes de fiches. Mais, ils restent
entièrement paramètrables et modifiables à volonté !
- Le bureau de Génération peut ne pas être installé, ou peut être
réinstallé "à la volée". Sa couleur et son motif sont également
paramètrables.
- Meilleure gestion des fenêtres en arrière plan : on peut choisir
le comportement d'un clic sur une fenêtre en arrière plan. Soit
cette fenêtre est ramenée au premier plan, soit le clic a lieu
comme si la fenêtre était au premier plan.
- Les fonctions d'impression ne sont accessibles que si un pilote
SpeedoGDOS est installé.
- Ajout des fonctions "shrink & grow -box" à la fermeture et à l'ouverture
des fenêtres : c'est plus beau sous MagiC avec Stewart !
- Les tempos des ascenseurs (dans les formulaires) sont paramètrables.
- Il est possible de dessiner une zone (en maintenant le bouton
de la souris appuyé) dans laquelle tous les objets seront sélctionnés.
Cela permet de sélectionner facilement plusieurs icônes du bureau,
ou plusieurs fiches d'une fenêtre.
version 1.43 (27 septembre 1997)
- On peut désormais passer un fichier *.ARB (fichier contenant
un graphe) en paramètre du programme : il sera automatiquement
chargé. Ainsi, pour charger un fichier, il suffit de déposer
le fichier *.ARB sur l'icône de GENE.PRG, ou de déclarer GENE.PRG
comme application pour les fichiers *.ARB, et de double-cliquer
sur le fichier *.ARB.
- Lors de la création d'une fiche (père, mère, fils, fille,
ou conjoint), la nouvelle fiche était sélectionnée, et restait
sélectionnée après la saisie. Désormais, l'ancienne fiche sélectionnée
redevient automatiquement sélectionnée. Cela permet, par exemple,
de sélectionner la fiche Père, et de créer toutes les fiches enfants
sans devoir re-sélectionner la fiche père à chaque fois.
- Au moment de quitter, le programme vous propose de sauver le fichier
s'il a été modifié.
version 1.44 (12 octobre 1997)
- Génération reconnait désormais le protocole VA_START : il est
possible de charger un fichier par un double-clic sur son icône
(sous réserve que génération soit installé comme application
des fichiers ARB), alors que le programme Génération tourne
déjà. Il en va de même pour le "drag 'n drop" d'une icône ARB
sur celle du programme.
- Après le chargement d'un arbre, c'est désormais une liste des
fiches qui s'ouvre à l'écran. Avant, la fenêtre qui s'ouvrait
par défaut était l'ascendance de la première fiche trouvée.
- Maintenant, au moment de quitter, le fichier vous propose de
sauver le fichier que si celui-ci a été modifié. Avant, ce
formulaire apparaissait à chaque fois.
- Un caractère '*' rouge, dans le formulaire info, sera affichée
à gauche du nom de fichier si celui-ci n'a pas été sauvé. Si ce
caractère n'apparait pas, c'est que le fichier a été sauvé
depuis la dernière modification du graphe.
- Correction d'un bug mineur au niveau de l'allocation des masques.
- Génération envoie maintenant un message AV_UD_PATH après la
sauveagarde d'un graphe, de telle sorte que les fenêtres du
bureau (pour les systèmes multi-tâches) soient toujours
à jour.
version 1.50 (15 novembre 1997)
- NOUVEAU FORMAT DE FICHIER. Il contient, en plus du graphe,
la liste des fenêtres "fiches" ouvertes, c'est à dire les
arbres (ascendants, descendants et biscendants), et les listes
de fiches (et donc, le presse-papier), avec leurs masquages.
- La taille des fenêtres s'adapte à la résolution de l'écran. Ainsi,
une fenêtre qui occupe le quart, en bas à droite, de l'écran,
dans une résolution de 640*400, occupera également le quart
bas-droite de l'écran si elle est ouverte en 800*600, et
inversement.
- Bien entendu, l'ancien format de fichier est toujours reconnu,
dans ce cas, c'est une liste de fiches qui s'ouvre après le
chargement (comme dans la version 1.44).
- Quelques bugs en moins
- Amélioration du fonctionnement quand Génération n'est pas l'
application active (c'est assez rare, car, la plupart du temps,
quand on travail avec un programme, c'est l'application active...).
Les points modifiés sont la détection du clic long et le drag 'n drop.
Pour les programmeurs, ce problème venait du fait que le programme
attendait un évènement MU_BUTTON quand le bouton est relaché, or
cet évènement n'arrive JAMAIS si l'application n'est pas "l'application
active".
- Pour les représentations descendantes (arbres descendants et
biscendants), des liens sont
dessinés des conjoints vers leurs parents existants. Celà permet
de savoir, en regardant une représentation descendante, si les
parents des conjoints sont connus ou pas.
- Ajout d'un champ "créateur" dans le formulaire INFO, qui est
utilisé lors de la sauvegarde du graphe, et réinitialisé au chargement
d'un nouveau graphe. Ce nom sera utilisé lors de l'impression avec
un nouveau driver (fonction vs_page_info()).
- Désormais, un double-clic sur l'icône "liste de fiche", à gauche dans
la barre d'outils des fenêtres "Liste de fiches" et "presse-papier",
ouvre une nouvelle liste de fiches.
- La doc au format Diderot est disponible, mais elle ne peut toujours
pas être appelée par Génération.
- la procédure pour afficher les listes de fiches à été complètement
ré-écrite : elle est maintenant beaucoup plus rapide.
- ajout de "shink_box" et "grow_box" à l'iconification et à la
désiconification des fenêtres.
- Ré-écriture d'une partie de la procédure de création des liens
automatiques : elle a sont champ d'action un peu plus réduit, et est
légèrement optimisée. Exemple : un arbre composé d'un père, de son
enfant, et de sa compagne qui n'est pas la mère de l'enfant. En
ajoutant une autre fiche enfant au père, un lien automatique est
créé entre ce deuxième enfant et la compagne. C'est normal.
Avant, Génération effectuait aussi un lien automatique entre le
premier enfant et la compagne. Ce n'est plus le cas.
- Optimisation de la mises à jour de l'écran lors de la séléction
et la déselection de fiches : les fenêtres ne sont plus
entièrement ré-actualisées à la moindre action, et un grand nombre
de ces routines d'affichage ont été grandement optimisées.
version 1.55 (9 décembre 1997)
- Correction d'un bug lors de l'impression des listes de fiches :
la première fiche de la liste était toujours imprimée en haut de la
feuille, même si un titre était imprimé.
- transformation des objets 3D : c'est plus beau sur Hades, et ils
ont une taille beaucoup plus raisonnable sur l'AES du Falcon...
version 1.56 (17 décembre 1997)
- Correction d'un bug lors du scrolling des fenêtres dans certains
cas.
- Un message parasite pouvait être généré dans un cas bien particulier
et extrêmement rare, qui pouvait amener l'ouverture d'une boîte d'alerte
"message inattendu", sans AUCUNE conséquence (ce message parasite
était tout simplement ignoré). Corrigé.
- Quand le programme prend fin, toutes les fenêtres sont fermées, en
commençant par la fenêtre la plus au premier plan. S'il y a un grand
nombre de fenêtres ouvertes, cela peut perturber l'AES du Falcon (je n'ai
noté aucun problème sous MagiC), et bloquer le Falcon. Désormais,
elles sont fermées en commençant par la fenêtre la plus en arrière plan,
et le problème est résolu.
version 1.57 (19 décembre 1997)
- Les raccourcis claviers pour les boutons HELP et UNDO n'étaient plus
gérés depuis la version 1.50. Corrigé.
- Quand les boutons d'aides sont appuyés, il ne se passait rien. Mais
comme l'aide en ligne n'est toujours pas gérée, cela ne prêtait pas
à conséquence. Corrigé.
- Toutes les opérations de masquages n'étaient pas accessibles depuis
les fenêtres biscendantes (entre autre, le double-clic sur l'icone
"masque" de la barre d'outils ne faisait pas apparaître le formulaire
de masquage). Corrigé.
- Quand on édite le masquage des fiches, il pouvait arriver que le programme
réserve un masque pour la fenêtre, alors que ce masque est inutile.
Corrigé.
- Il était possible, depuis la barre d'outils des fenêtres ascendantes,
de rendre le masquage actif ou inactif, alors que l'icône était
inaccessible (grisé). Cela n'était absolument pas gênant, mais c'est
corrigé.
- Lors du chargement d'un fichier, si celui-ci contient des fenêtres "arbre",
le masque de ces fenêtres arbres n'était pas correctement chargé
(le chargement des masques des listes de fiches ne pose aucun problème).
Corrigé.
version 2.00 (12 mars 1998)
- AJOUT DE NOUVEAU CHAMPS
Désormais, on peut enter pour chaque fiche, en plus de ce qui
existait déjà (nom, prénoms, dates de naissance/décès/mariage,
sexe, décédé), les informations suivantes :
- une profession
- un lieu de naissance,
- un lieu de décès,
- et un lieu de mariage.
- De ce fait, le formulaire d'édition des fiches a été revu pour
contenir les nouveaux champs.
- De même, le formulaire pour paramètrer les dates de mariages,
et celui pour créer ou détruire un lien de mariage ont également
été revus, et proposent maintenant le champ "lieu de mariage".
- Les modèles de présentations ont aussi été revus, afin de contenir
ces nouveaux champs, et même davantage !
Génération proposait déjà les champs suivants (tous entièrement
paramètrables, bien sûr) :
- Nom
- Prénoms
- Date de naissance
- Date de décès
- ( Date de naissance / Date de décès )
- Date de mariage
- Numéro de conjoint
- masque
J'y ai ajouté les champs suivants :
- Profession
- Date de naissance ( Lieu de naissance )
- Date de décès ( Lieu de décès )
- Date de mariage ( Lieu de mariage )
- Champ libre #1
- Champ libre #2
- Champ libre #3
les champs libres sont des champs qui peuvent contenir n'importe
quel texte, pouvant contenir des mots clés. Ceci permet,
par exemple, d'avoir une ligne du type né le /ddn à /ldn,
où /ddn sera remplacé par la date de naissance, et /ldn par
le lieu de naissance.
- Le formulaire de paramètrage des modèles de présentation a été
à cette occasion complètement ré-écrit. Il propose maintenant
un aperçu, ou l'on peut juger du résultat avant de l'adopter.
- Création d'un nouveau type d'objet pour les formulaires : les
classeurs. Ils sont utilisés notamment dans le formulaire de
paramètrage des titres.
- LE PARAMETRAGE DE LA MISE EN PAGE A ETE AMELIORE
Voyez les points ci-dessous pour plus de détails.
- Le formulaire de paramètrage des titres a été complètement ré-écrit.
On peut maintenant avoir jusqu'à 6 lignes, toutes paramètrables
à volonté, et un aperçu est également proposé.
- Le formulaire "zones de recouvrement" a été créé. Il permet un
paramètrage beaucoup plus simple et visuel de ces zones de
recouvrement. Accessible par le formulaire de paramètrage de
l'impression.
- AJOUT DE LA FONCTION "HISTORIQUE"
Cette fonction permet de garder une trace de toutes les opérations
que vous effectuez pour construire votre arbre généalogique.
Toutes ce opérations peuvent être sauvées dans un fichier sous forme
de texte, et/ou visualisées directement dans une fenêtre.
Des formulaires de paramètrage on aussi vu le jour, afin de choisir
le nom du fichier, la concaténation de ce fichier, la fonte à utiliser,
et la taille du buffer.
- On peut choisir un fichier ARB à charger par défaut. Ainsi, après
avoir lancé le programme, ce fichier sera automatiquement chargé. Très
pratique, vu que l'on travaille presque toujours avec le même fichier.
- Optimisation de quelques routines sensibles.
- Le drag 'n drop de l'icône du presse-papier sur celle de la poubelle
permet de vider le presse-papier (avant, il fallait passer par les
opérations de masquage).
- Listes des fiches : mise en place d'un "autolocator". Quand une liste
de fiches est ouverte, appuyez sur une touche du clavier. L'ascenseur
vertical de la fenêtre se positionnera automatiquement de telle sorte
que la première fiche dont le nom commence par cette lettre apparaisse
en haut de la fenêtre.