## Travailler avec les Menus Contextuels

La chose la plus importante à essayer en travaillant avec GenJ est de vous servir des menus contextuels. Un clic droit (votre système peut nécessiter d'agir différemment pour activer cette action) sur l'information affichée dans l'une des fenêtres de visualisation vous permettra de voir différents types d'actions possibles.

Le menu contextuel est toujours structuré de la même manière : en premier lieu, il affiche un sous menu lié à ce sur quoi, vous avez cliqué, et éventuellement il peut vous afficher d'autres sous menus qui élargissent les possibilités en fonction du contexte.

Pour bien comprendre comment fonctionne le Menu Contextuel, il faut mieux partir sur un exemple à partir de l'Editeur Gedcom. En effet, n'oubliez pas que vous disposez dans GenJ de deux éditeurs, un Editeur Standard, et un Editeur Gedcom, mais ici je prendrais le second, car c'est lui qui offre le plus de possibilités. Donc dans l'exemple qui suit, on montre le Menu Contextuel qui apparait si on clique droit sur la propriété Nom (INDI:NAME).

- La première partie du menu concerne la propriété elle-même et les actions possibles qui y sont liées. Ainsi on voit qu'on peut Couper cette propriété (donc on va effacer l'étiquette NAME et les données qui y ont été spécifiées, à savoir le nom, le prénom, etc...), la Copier pour une utilisation ultérieure, ou Coller cette même propriété.
- En dessous, séparées des trois options précédentes par une petite ligne, on trouve deux possibilités, à savoir :
  - Ajouter une propriété - Là on va pouvoir rajouter des sous propriétés liées à la propriété sur laquelle on a lancé ce menu contextuel. Par exemple, pour le nom, cela pourrait être le "Prénom" (GIVN), un "Surnom" (NICK), une "Note" (NOTE), etc...
  - Diffuser cette propriété - Faites trés attention avec cette fonction, car là vous allez rajouter la propriété sur laquelle vous avez lancé le menu contextuel (donc dans mon exemple, la propriété Nom (name)) partout dans votre arbre, ou seulement auprés de certaines personnes. Cela dépendra de ce que vous allez choisir dans le menu qui va s'ouvrir, mais je le répète, faites trés trés attention à cette fonction, essayez là sur un fichier gedcom de test ou en ayant une sauvegarde.
    Vous pourrez en plus, mais vous le trouverez dans les questions fréquemment posées, diffusez en plus de l'étiquette, la valeur associée à cette étiquette, ainsi pour le nom, vous pourriez mettre le même nom à toutes les personnes. Vous voyez la puissance de cette fonction, mais aussi son danger.
- On retrouve aprés un ensemble de trois actions possibles.
  - La première concerne plusieurs possibilités que l'on pourrait résumer en des liens vers des entités, ainsi on va pouvoir associer une Source (Créer un(e) (des) Source), ou une Note (Créer un(e) Note), ou encoder l'information sur laquelle a été lancé le menu contextuel (donc ici, on encoderait le nom de la personne), ou enfin, on va pouvoir rechercher toutes les instances de l'arbre contenant la variable appliquée à cette étiquette, donc toujours dans l'exemple, rechercher dans toutes les étiquettes "Nom", le mot "Meier".

  - Le second sous menu concerne l'entité (ici un individu) à laquelle cette propriété appartient (la propriété étant le Nom de l'individu).

    Le sous menu pour l'Individu 'I008' présente les actions suivantes :
    - Créer un enfant - on va créer un enfant (et une famille si nécessaire) pour l'individu I008.
    - Créer des parents - on va créer un père ou une mère (et une famille si nécessaire) pour l'individu I008.
    - Créer un(e) Epoux(se) - on va créer un(e) époux(se) (et une famille si nécessaire) pour l'individu I008.
    - Créer un(e) Frère(Soeur) - on va créer un(e) Frère(Soeur) (et des parents si nécessaire) pour l'individu I008.
      - - - - - - - - - -
    - Ajout d'une Note - création d'une note décrivant l'individu I008. Attention cependant, il ne s'agit pas d'une Note en tant que sous-étiquette de l'individu, mais au contraire un lien vers une Note externe à cette personne. Un exemple permettra de mieux comprendre : Si j'ai une note générale dans mon arbre qui dit "Il faut que je travaille sur cette personne". Je peux lier cette note avec n'importe quelle entité de mon arbre. Ici par exemple, si je choisis de Créer une Note et que ma Note existe déjà, je vais la choisir dans le menu déroulant de la fenêtre qui va s'ouvrir quand j'aurai cliqué sur "Créer une Note". Je vais donc lier la note qui dit qu'il faut que je travaille sur cette personne, à l'individu I008. Jetez un coup d'oeil aux Questions Fréquemment Posées (FAQ).
    - Ajout d'un Fournisseur d'Information - on va créer la personne ayant fourni les informations à propos de l'individu I008. Même remarque que ce que je décris juste au dessus pour la Note.
    - Ajout d'une Source - Création d'une source d'information concernant l'individu I008. Même remarque que ce que j'ai décrit au dessus pour la Note.
      - - - - - - - - - -
    - Effacer - Permet la suppression de l'Entité I008.
      - - - - - - - - - -
    - Viennent ensuite tout un tas de rapports qui peuvent être lancés à partir de ce menu contextuel, mais sur un individu. La longueur de la liste dépend du nombre de rapports que vous avez dans votre distribution. Exemples : Ages, Almanach, etc...
  - Le troisième sous menu concerne le fichier Gedcom auquel cette entité appartient.

    On retrouve ici la possibilité de créer des Individus, Familles, Notes, Lieux de stockage, Sources, Fournisseurs d'information, suivis de tous les rapports qu'il est possible de lancer sur le fichier gedcom lui-même.
    Il faut bien comprendre ici qu'il s'agit d'entités non liées à la personne sur laquelle on a lancé le menu contextuel. Donc si vous dites que vous voulez créer un individu, ce sera un individu non lié à la personne sur laquelle vous êtes. Donc attention à ce que vous faites. Ce menu peut cependant être trés intéressant pour créer de nouvelles notes générales à votre fichier, de nouvelles sources, etc... Plus haut je vous donnais l'exemple d'une note générale, qui disait quelque chose comme "Information à vérifier", ou "Personne a retravailler". Une telle note qui est une Note générale va être créer à partir de ce menu.

Enfin un exemple qui montre comment le menu contextuel peut offrir des possibilités encore plus importantes et cela de manière dynamique en fonction de l'endroit d'où il est lancé.

On peut le voir facilement lorsque l'on fait un clic droit afin d'afficher les menus, sur un node (un cadre) dans la visualisation de l'Arbre Généalogique :

- l'endroit où l'on vient de cliquer n'est pas la représentation d'une propriété, mais une entité elle-même (ici l'Individu I008), aussi le premier sous menu concerne cet Individu.
  Dans la Visualisation de l'Arbre Généalogique le menu contextuel affiche une action particulière supplémentaire qui est l'ajoût d'un Signet (Bookmark) sur cette personne. De cette manière, dans l'avenir, si vous vouliez centrer votre arbre sur cette personne, il vous suffirait de la choisir dans la liste des Signets.
- L'autre sous-menu concerne le fichier gedcom lui-même.

Voilà un autre exemple, quand le menu contextuel est lancé à partir de la visualisation chronologique. On voit ici qu'on a cliqué sur la date de naissance de la personne, aussitôt le menu contextuel vous offre des possibilités liées soit à la date de naissance, elle-même, soit à la propriété naissance proprement dite, soit à la personne, soit au fichier gedcom d'une manière générale.

Une telle manière de faire vous montre la puissance de l'éditeur gedcom, puisque vous pouvez intervenir à tous moments sur tous les paramètres, tout en respectant le format gedcom.