aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/user_manual.txt102
1 files changed, 102 insertions, 0 deletions
diff --git a/doc/user_manual.txt b/doc/user_manual.txt
new file mode 100644
index 0000000..b39859e
--- /dev/null
+++ b/doc/user_manual.txt
@@ -0,0 +1,102 @@
+Ce manuel utilisateur a pour objectif de faciliter l'utilisation de MTools.
+
+La première patie décrit en détail les fonctionnalités générales c'est à dire
+celles communes à tous les objets MTools.
+
+La deuxième partie décrit l'utilisation spécifique de chaque objet.
+
+
+PARTIE 1 : MTools.pm
+
+Cette partie de la documentation est principalement extraite de MTools.pm
+
+MTools exporte des fonctions destinées principalement à :
+ - activer des fonctions propres à la librairie mtools
+ - assurer la compatibilité entre la manipulation des objets mtools et des
+ objets zincs
+
+Ainsi, d'une manière générale, toutes fonctions exportées s'appliquent aussi
+bien à des objets zinc qu'à des objets mtools. L'unique restriction est dans la
+méthode d'appel :
+ - obligatoirement : fct ($obj, @parametres) pour un objet zinc
+ - indiferemment $obj -> fct (@parametres).
+L'avantage de la première méthode est qu'elle s'applique aussi bien à un objet
+zinc qu'à un objet MTools. L'inconvénient est que l'on perd la possibilité de
+profiter de l'héritage et de la redéfinition éventuelle de la fonction.
+
+La fonction particuliere "new" :
+ La fonction "new" permet de générer une nouvelle frame encapsulant un
+ canvas zinc.
+ Une frame MTools est unique pour une application.
+ Elle initialise par ailleurs les données génériques pour le
+ fonctionnement de MTools.
+
+Les callbacks dans MTools :
+ \&fct : exécution de fct ()
+ [\&fct, @params] : exécution de fct (@params)
+ ['fct_name', $obj, @params] : exécution de $obj -> fct_name (@params)
+ [$obj, 'fct_name', @params] : exécution de $obj -> fct_name (@params)
+ [$obj, \&fct_name, @params] : exécution de fct_name ($obj, @params)
+
+Fonctions :
+ - propertyExists : teste si une propriété MTools a été enregistrée (par
+ recordProperty) pour l'objet en question. S'il s'agit d'un objet zinc la
+ valeur retournée est forcément 0.
+ - mconfigure : permet de configurer indifférement des propriétes zinc ou
+ MTools d'un objet. Les paramètres sont passés sous forme d'une table de
+ hash. Par habitude, les propriétes zinc ou definies pour assurer une
+ compatibilité avec zinc (comme '-visible') ont été précédées d'un '-'.
+ - mget : $obj -> mget ('propriete') permet de récupérer la valeur d'une
+ propriété
+ - plisten : $obj -> plisten ('property_name', callback) plisten permet
+ d'écouter les modifications des propriétés mtools d'un objet => associe
+ l'appel d'une fonction à la modification d'un objet MTools
+ - unplisten : $obj -> unplisten ('property_name', callback) supprime
+ l'écoute
+ - plink : plink ([$obj1, 'property_1'], [$obj2, 'property_2'], ...);
+ Synchronise n propriétés. Si property_1 est modifiée, property_2 prendra
+ la valeur de property_1 et réciproquement. À l'initialisation, toutes
+ les propriétés prennent la valeur de property_1.
+ - executer : executer (callback); permet d'exécuter une callback du type
+ predefini ci-dessus dans la section "Les callbacks dans MTools"
+ - binding : $obj -> binding ('evenement', callback) permet d'écouter un
+ évènement MTOOLS ou Tk survenant sur un objet. binding peut aussi être
+ redéfini pour écouter de nouvelles sources d'évènements (par exemple
+ MIvy ou WacomAdapter)
+ - unbinding : $obj -> unbinding ('evenement', callback) arrête l'écoute
+ d'un évènement
+ - minstanciate : minstanciate ('definition', $parent) permet de
+ retourner un objet MTools à partir de la spec 'definition'
+ . si 'definition' est un path svg, minstanciate instancie le svg et
+ retourne un objet MTools encapsulant le contenu
+ . si 'definition' est un objet zinc, minstanciate retourne un objet
+ MTools encapsulant l'objet zinc
+ . si 'definition' est déjà un objet MTools, minstanciate retourne
+ l'objet lui-meme.
+ minstanciate change également le groupe parent qui deviendra
+ obligatoirement $parent
+ - minstance : minstance ($objet, $parent) est le cousin de minstanciate
+ mais lui retourne obligatoirement un objet zinc
+ - mrun : lance l'exécution de la main loop.
+ - mfind : $objet -> mfind ('tag') permet de chercher un fils de l'objet
+ ayant le tag correspondant
+ - mplaying : permet de lire un fichier son
+
+Les fonctions suivantes encapsulent l'exécution des fonctions zinc
+associées. Voir la documentation zinc :
+http://www.tkzinc.org/Documentation/refman-3.3.4/index.html
+ - raise
+ - scale
+ - translate
+ - rotate
+ - coords
+ - bbox
+ - type
+ - tset
+ - treset
+ - tget
+ - clone
+ - chggroup
+
+
+PARTIE 2 : Les objets de MTools