Bonjour,

Je programme avec Ooobasic une application dans un document Calc.

Pour initialiser les variables globales et un singleton de mon application Calc je cherche quel événement du document je devrais gérer afin que ma procédure d'initialisation soit la première à s'exécuter (avant l'exécution des fonctions de ma feuille de calcul). Notez que j'ai essayé avec l'événement */"Document Ouvrir"/* mais j'ai compris, peut être à tord, que cet événement arrivait parfois après l'exécution des premières fonctions de la feuille de calcul. Il ne me conviendrait donc pas...

J'ai également essayé d'instancier le singleton du modèle de mon application dans l'appel de la première fonction exécutée sur ma feuille de calcul. Mais j'ai de nombreuses fonctions similaires et concurentes sur la même feuille. Et j'observe dans mes tests que l'appel à la procédure de création du modèle singleton est doublé et entrelacé par des appels aux autres fonctions concurrentes de ma feuille de calcul !

Pour résumer Je me pose donc trois questions :

1. *Quel événement du document pourrait être géré pour initialiser les
   variables de mon application avant l'exécution de la première
   fonction dans les cellules de ma feuille de calcul ?*
2. Sinon existe t-il un moyen d'empêcher l'exécution des fonctions de
   ma feuille tant que le code de création de mon modèle singleton n'a
   pas fini son exécution ?
3. Existe t-il enfin une méthode plus élégante que l'usage d'une
   variable *Global Boolean* pour gérer la création d'un singleton ?

C'est la première fois que j'envoie un message sur cette liste, peut être pour la programmation existe t-il une autre liste plus spécialisée. Dans ce cas je vous remercie par avance de bien vouloir me communiquer la liste vers laquelle envoyer ma demande d'aide.

Je vous remercie pour votre aide.
Patrick

--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés

Répondre à