# JMRI: Jynstruments

JMRI offre une belle façon d'intégrer des scripts Jython dans l'application Java JMRI en particulier en visant à étendre et à personnaliser l'interface graphique.

Cela s'appelle un Jynstrument. C'est un paquet de code Jython et autres ressources. Le code définit un objet Jython découlant de la Classe Jynstrument Java (elle-même dérivant de JPanel). Cet objet sera instancié par le code instrumenté JMRI lui-même et est ensuite déclenchée par un événement.

Jetez un oeil à la page du dossier Jython dans votre arborescence des sources, il y a un dossier Jynstruments avec un README et un ThrottleFrame/Light.jyn qui doit être essayé sur la fenêtre Régulateur JMRI. L'image à droite les affiche dans une utilisation (les boutons de diamant).
Dans le dossier Jython, vous trouverez également un simple Test.jyn à des fins de tests

Voir ThrottleFrame.java pour savoir comment rendre le code instrumentable; plus de détails sont dans le fichier README.

L'utilisation est assez simple, drag +déposez le dossier Light.jyn sur une Fenêtre Régulateur JMRI (le contenu de la fenêtre elle-même, la barre d'outils est instrumentable aussi, mais n' acceptera pas le Lights.jyn).

Une fois que le Jynstrument est démarré, l'interface sera mise à jour, un menu propriété Jynstrument est accessible par un clic droit sur le Jynstrument ou de ses bords. A partir de ce menu, vous pouvez supprimer Jynstrument, ou afficher sa Sortie.

Voir le contenu de l'Jynstrument lui-même (commentaires dans le fichier .py) pour des informations spécifiques à leur sujet.<

Plusieurs éléments JMRI sont Jynstrumentable aujourd'hui:

- La fenêtre principale JMRI où vous pouvez ajouter des lanceurs . Il y a un script Jython nommé JynstrumentMainFrame.py dans le dossier de script par défaut Jython JMRI qui montre comment charger ces lanceurs à partir d'un Script Jython JMRI ordinaire , alors vous pouvez sélectionner ce script pour être exécuté automatiquement au démarrage de JMRI (depuis les préférences JMRI) afin d'avoir une fenêtre principale JMRI personnalisée comme vous le souhaitez.
- La
- Fenêtre JMRI Régulateur où vous pouvez ajouter Jynstruments pour enrichir l'expérience de régulateur courant (fonctions spéciales, l'e-stop, les directions ... et même celui qui affiche la vidéo à partir d'un périphérique de capture vidéo, comme une webcam Bluetooth montée sur un train). N'hésitez pas à écrire vos propres fonctions spéciales Jynstruments, c'est ce à quoi Jynstrument est destiné.
- La fenêtres barre d'outils régulateur JMRI qui permet de Jynstruments qui pilote tous les Régulateurs de cette fenêtre (en particulier avec les contrôleurs spéciaux)