Documentation Technique : SoCQ GUI

Dimension: px
Commencer à balayer dès la page:

Download "Documentation Technique : SoCQ GUI"

Transcription

1 Documentation Technique : SoCQ GUI Julien Deflaux 1 er août

2 TABLE DES MATIÈRES 2 Table des matières 1 Présentation du SoCQ GUI Présentation Découpage du GUI en projets Modèle-Vue-Contrôleur avec GEF MVC : Modèle-Vue-Contrôleur GEF : Graphical Editing Framework Modèles Modèle? La classe Node? Description de la structure des modèles Vues Contrôleurs Commandes GEF CreateContent Plugin Eclipse RCP : SoCQ GUI WorkBench Eclipse Le projet à l instant initial MANIFEST.MF, plugin.xml : configuration du projet L éditeur La vue Outline Le menu et la barre d outils Le menu contextuel La feuille de propriétés Editeur de requêtes SWT vs Swing Points clés de l éditeur de requêtes Etat d avancement Gestion des tuples Eléments à développer Plugin nécessaires au fonctionnement du GUI

3 1 PRÉSENTATION DU SOCQ GUI 3 1 Présentation du SoCQ GUI 1.1 Présentation Le projet SoCQ (Service-oriented Continuous Query) vise à gérer des services dans un cadre de requêtes continues. Les informations détaillées sur ce projet ne seront pas abordées ici, et seules certaines notions pouvant être utiles seront abordées. Ce document ne permet donc que de décrire les choix techniques faits, uniquement pour la partie interface homme machine du moteur. L application GUI (Graphic User Interface) du moteur SoCQ a été développée dans le but de représenter les tables et les requêtes manipulées par le moteur. Il a donc été choisi de représenter les éléments de ce modèle en utilisant l abstraction Modèle-Vue-Contrôleur (MVC). Ce qui signifie qu à chaque modèle correspond une visualisation graphique, le lien entre les deux étant effectué par le contrôleur. L application doit aussi gérer les requêtes de l utilisateur. Pour cela, il faut utiliser le parseur de requêtes SoCQ. La documentation du parseur et de la grammaire font l objet d un autre document. Dans ce document le parseur sera utilisé et intégré au GUI, et non décrit. Il en va de même pour la grammaire du langage SoCQ, basée sur le SQL. Pour utiliser le concept MVC, il a été choisi de développer l application en JAVA sous forme de plugin Eclipse RCP (Rich Client Platform). Le choix du JAVA a été fait pour pouvoir utiliser le framework fourni par Eclipse RCP. En effet, Eclipse dès sa création en 2001 avait pour but de créer un socle pour la création d environnements de développement. Avec la création du projet Eclipse RCP en 2004, l objectif était de fournir un Framework de développement pour tous types d applications clientes. Contrairement aux applications légères qui trouvent vite leurs limites, l application riche étant basée sur le moteur d Eclipse permet de fournir des outils très complets au développeur et à l utilisateur, notamment pour ce qui concerne la qualité des GUI, la réactivité, la portabilité et l installation de l application sur différents postes et types de systèmes d exploitation. 1.2 Découpage du GUI en projets Pour plus de compréhension et pour faciliter la maintenance du GUI, il a été découpé en plusieurs sous projets. La notion de projets est liée directement à Eclipse. En fait, le GUI est découpé principalement en 3 projets :

4 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 4 BaseData : Contient la classe Data, nécessaire pour manipuler les types des Attributs, et la classe Tuple qui correspond à la classe représentant les tuples dans le GUI. ExtendedData : Contient le parseur, les types de données à représenter ( Table, BindingPattern, Schema et Attribute) et les modèles Query correspondant au modèle renvoyé par une requête Select From Where. GUI : contient l ensemble du projet décrit dans ce document. Il utilise chacun des deux autres projets et c est aussi lui qui contient l application qui est exécutée en tant que plugin. L utilisation de l ensemble des tutoriels très complets sur la création d un plugin RCP utilisant GEF fournit par Jean Charles MAMMANA [1], peut être une aide fort utile comme point de départ. 2 Modèle-Vue-Contrôleur avec GEF Pour comprendre la structure utilisée dans le GUI il convient de lire les deux parties suivantes pour bien comprendre le concept de Modèle-Vue- Contrôleur et pour comprendre ce qu est GEF. 2.1 MVC : Modèle-Vue-Contrôleur Le concept de Modèle-Vue-Contrôleur est basé sur une notion assez simple pour manipuler et représenter n importe quel type de données. En outre il est utilisé ici pour représenter les tables, les SchemaSoCQ, les attributs et les BindingPatterns, qui chacun vont correspondre à un modèle particulier. L affichage de ces modèles est géré de manière indépendante. Ensuite pour faire le lien entre le contenu du modèle et son affichage on utilise la notion de contrôleurs. Les contrôleurs permettent de répercuter les changement du modèle sur son affichage ( sa vue ) et vice-versa. Schématiquement la Figure1 montre le lien entre les différentes composantes du concept MVC. 2.2 GEF : Graphical Editing Framework Pour implémenter ce concept de Modèle-Vue-Contrôleur, Eclipse fournit un outil nommé GEF (Graphical Editing Framework). GEF fournit principalement : Des vues génériques (Figure)qui permettent d implémenter des vues pour chaque modèles. Celles-ci peuvent être intégrées facilement au plugin Eclipse. Des contrôleurs génériques (EditPart) permettants de faire le lien entre le modèle et la vue.

5 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 5 Figure 1 Model-View-Controler En ce qui concerne les modèles il n y a pas à proprement parler de classes génériques proposées par GEF. Ça correspond plus à une structure de données à utiliser. Cette structure est expliquée et détaillée dans la section 2.3. On pourra se référer au tutoriel d Eclipse sur l utilisation de GEF pour créer une application de gestion de Tables UML [6]. 2.3 Modèles Tous les modèles utilisés par le GUI sont présents dans le package : fr.cnrs.liris.socq.gui.model Modèle? Les modèles sont indépendants de GEF, ce qui permet donc de représenter à peu près ce que l on veut. La condition est que certaines primitives doivent être définies pour assurer la cohérence du modèle vis-à-vis des requis de GEF pour les vues à afficher et les contrôleurs. Dans le cadre du GUI, les modèles héritent tous d une classe de base nommée Node qui contient ces opérations primitives liées à l utilisation de GEF La classe Node? La classe dont dérive tous les modèles est la classe Node représentée sur la Figure2 avec uniquement ses attributs publics, qui nous intéressent ici. La classe Node permet de représenter chacun des éléments de la hiérarchie de modèles, hiérarchie de type arbre. Les attributs children et parent représentent respectivement le tableau de fils de l instance en cours et le Node parent. Chaque Node possède un name, qui sera le nom affiché par la vue. De plus un attribut de type Rectangle permet de stocker la position de la vue. Cet attribut s éloigne du concept de modèle au sens MVC, car le modèle devrait être parfaitement indépendant de son affichage. Mais dans

6 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 6 Figure 2 Classe Node notre contexte pour gérer le placement des Tables et des BindingPatterns, il est nécessaire de gérer leurs positions. Remarque : Une évolution du GUI pourrait être de supprimer cet attribut layout pour que la manipulation des modèles soit parfaitement indépendantes de leurs représentations. GEF fournis un outil de Layout ( voir section 2.4 ) pour générer un placement automatique des objets à partir d un algorithme basé sur la notion de graphes, mais complexe à mettre en oeuvre. Les attributs listeners et propertysource sont nécessaires dans la section 3.1 pour la gestion des feuilles de propriété Eclipse. Les méthodes de la classes Node ne seront pas commentées ici, mais dans le code directement. Chaque modèle hérite donc de la classe Node Description de la structure des modèles Les modèles initiaux à représenter sont les tables, schema, binding patterns, et attributes, comme définis dans le package : fr.cnrs.liris.socq.model.extended.data. Les modèles correspondants à chacun de ces "modèles initiaux" sont sufixés de "Model". Ainsi on retrouve par exemple la classe TableModel qui correspond au modèle initial Table. Deux choix se sont présentés pour représenter ces "Model" : Faire hériter chacun de ces Model de son modèle initial et lui faire implémenter une Interface Node correspondant à ce que pourrait être une Interface de la classe Node décrite précédemment. Faire hériter chacun des Model de la classe Node, et encapsuler son modèle initial. A première vue le premier choix peut sembler le mieux adapté, car il évite de créer en mémoire des doublons d une même instance. De plus il parait

7 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 7 aussi plus simple à manipuler car la modification du Model ne doit pas être répercutée sur son Model initial présent en attribut. Cependant le choix a été porté sur la deuxième structure, car il s avère plus simple à gérer et seuls les classes AttributeModel et TableModel encapsulent leurs modèles initiaux. De plus, cela rend cohérend le fait que la TableModel contient un attribut concernant sa description des données et un attribut concernant sa liste de tuples. Les concepts de DDL et DML Statements sont bien distincts. Remarque : La classe SchemeModel est le modèle qui contient l ensemble des Tables à afficher. Chacune de ces tables est un élément fils (cf classe Node) du scheme. Elle correspond à ce que pourrait être un modèle du Schema de Base de données. Remarque : La classe Compartment contenue dans ce package, hérite elle aussi de la classe Node et permet d ajouter un étage dans la hiérarchie des modèles. Elle n a pas d autre utilité. 2.4 Vues Toutes les vues utilisées par le GUI sont présentes dans le package : fr.cnrs.liris.socq.gui.figure Les vues sont issues d une librairie utilisée par GEF, nommée Draw2D. Cette librairie fournit des gestionnaires de figures et de calques (notion de hiérarchie). On pourra se référer au tutoriel de Daniel Lee concernant l utilisation des vues [3]. Elle permet uniquement de gérer l affichage de modèles et non leur édition. Elle fournit notamment de quoi gérer l affichage de modèles si ceux-ci sont établis sous forme hiérarchique. Cette notion de représentation hiérarchique est donc ici très utile pour représenter par exemple les tables qui contiennent un Schema, qui contient lui-même des attributs. Chaque vue hérite de la classe Figure fournie par GEF. GEF fournit différentes façon de gérer les couches (Layout) à afficher. A chaque figure est associé un layout. Les différents layouts utilisés par le GUI sont : XYLayout permettant de gérer manuellement la position de la figure en cours. Cette classe est la classe de base des layout. ToolbarLayout permet de gérer les éléments pères qui ont besoin d afficher les sous-élèments qu ils contiennent. Ce type de layout est utilisé pour les TableFigure et BindingPatternFigure. Il est entre autre possible de définir l alignement et le positionnement des éléments fils affichés. Ceci étant géré à l affichage, il ne faut donc pas instancier les éléments fils en leur précisant une position (cf. section2.7)

8 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 8 A chaque figure peuvent être associés des composants de GEF, comme par exemple les Label permettant d afficher du texte. 2.5 Contrôleurs Tous les contrôleurs utilisés par le GUI sont présents dans le package : fr.cnrs.liris.socq.gui.editpart Les contrôleurs permettent de faire le lien entre les vues et les modèles. C est-à-dire que dans le programme seuls sont manipulés les modèles. Il faut donc pouvoir mettre à jour l affichage de ces modèles lors d éventuelles modifications. Par exemple, on change le nom d une table pour une quelconque raison, il faut que la vue correspondante à cette table soit mise elle aussi à jour. Un des points important concernant les contrôleurs est qu à chaque modèle sont associées des parties éditables qui sont susceptibles d être modifiées et donc mises à jour. GEF fournit une classe nommée EditPart servant à représenter les contrôleurs et donc à faire le lien entre ces parties éditables du modèle et leur affichage. Le GUI travaille avec des modèles qui sont destinés à être affichés. Il utilise donc comme super classe pour chacun de ses EditPart la classe GraphicalEditPart qui sert à gérer les contrôleurs dont le modèle correspond obligatoirement à une visualisation. Pour propager les changements chaque EditPart du GUI agit comme un récepteur et chaque modèle comme un émetteur d événements. AppAbstractEditPart est la classe dont hérite chacun des EditPart de ce package. Cette superclasse hérite de la classe AbstractGraphicalEditPart fournie par GEF et implémente PropertyChangeListener pour la gestion des listeners. Les Listeners permettent de capter les changements du modèle via la méthode propertychange et de rafrachir l affichage de ces modèles via la méthode refreshvisuals. La sélection : Lorsqu une figure est sélectionnée, GEF manipule son Edit- Part. Donc si on sélectionne un élément graphique, ce qui sera compris comme étant sélectionné par GEF est l EditPart. Cette remarque est utile pour la section 3.6 sur la gestion des Handler. De plus la méthode getcontentpane quand elle est implémentée permet de définir où seront ajoutés les nouveaux éléments graphiques ( à l intérieur de quels composants graphiques). Ce qui est pratique pour les TableFigure et BindingPatternFigure pour placer les éléments dans le CompartmentFigure de leur figure respective. L intérêt de placer les éléments fils dans ce

9 2 MODÈLE-VUE-CONTRÔLEUR AVEC GEF 9 CompartmentFigure et non directement comme fils de ces Figures est que sinon les éléments fils sont affichés au dessus du titre, or on veut que le titre soit au dessus. Remarque : La classe SchemaPart implémente la méthode getdragtracker, issue de AbstractGraphicalEditPart dont elle hérite, qui permet de redéfinir quel EditPart est renvoyé lorsqu un SchemaPart est sélectionné. Il faut en effet renvoyer la TablePart quand on clique sur un Schema, sinon le seul moyen de sélectionner une table serais de cliquer sur le cadre bleu de la table, ce qui n est pas évident quand il n est pas visible! 2.6 Commandes GEF Toutes les commandes GEF utilisées par le GUI sont présentes dans le package : fr.cnrs.liris.socq.gui.commands.gef GEF propose d utiliser des commandes pour gérer ses modèles. Mais que sont des commandes GEF? Lors d une interaction entre l utilisateur et une des vues représentant un modèle, chaque interaction est interprétée par GEF comme une requête de classe Request. Ces requêtes sont interceptables par le contrôleur correspondant au modèle. Lors de l interception d une de ces requêtes on peut associer une Commande GEF à un type de requête. Par exemple lors du double clic sur une table on souhaite qu une action soit exécutée. Cette action correspond à la commande GEF. Une autre façon d utiliser les commandes est d associer au modèle un rôle qui sera interprété par GEF et en fonction du rôle sera associé une politique d édition EditPolicy au modèle via le contrôleur. Par exemple si l utilisateur veut bouger une vue correspondant à un modèle, il faut associer à l EditPart une politique d édition de layout via la méthode createeditpolicies. Une fois la figure déplacée, il faut de plus transmettre les changements au modèle. C est ce que se charge de faire l Edit- Policy en exécutant la commande GEF approprié au modèle sélectionné qui permettra de capter les changements de la vue et de les transmettre au modèle. Les classes correspondant aux EditPolicies sont dans le package : fr.cnrs.liris.socq.editpolicies 2.7 CreateContent La classe CreateContent est présente dans le package fr.cnrs.liris.socq.gui. Ses méthodes permettent de générer des modèles à partir d une requête. Une description détaillée de cette classe serait trop fastidieuse, il vaut mieux

10 3 PLUGIN ECLIPSE RCP : SOCQ GUI 10 s en référer au code directement. 3 Plugin Eclipse RCP : SoCQ GUI Eclipse RCP permet de développer des plugins qui viendront s ajouter aux plugins existant d Eclipse [2]. Un plugin Eclipse est basé sur le moteur d Eclipse et a par conséquent besoin de celui-ci. Une application Eclipse RCP est différente d un plugin RCP dans le sens où, elle peut être exécutée sans qu il n y ai une instance visible d Eclipse. Ce qui peut permettre de créer un stand-alone, indépendant d Eclipse, ou tout du moins, qui se lance sans que l utilisateur sache qu il lance le moteur d Eclipse. Cette notion de plugin sous Eclipse est très importante, car le noyau d Eclipse est construit sous forme d imbrication de plugins. Pour avoir une aide dans la création de plugins utilisant GEF on pourra se référer au document fourni par IBM [2]. 3.1 WorkBench Eclipse Le WorkBench d Eclipse est la partie visible du framework proposé par Eclipse RCP (notions de vues, pages de préférences, boîtes de dialogues de types assistants, construction des menus par déclaration dans un fichier XML). Le développeur se voit offrir une solution de qualité couvrant les besoins de base d une application cliente et peut se concentrer sur les choses vraiment spécifiques à son application. Les principales notions proposées par le WorkBench sont : Les Vues : elles permettent de visualiser le modèle en temps Réel. Dans le cadre du GUI il y a 2 vue de définies : la vue Outline où l on retrouve la hiérarchie des Tables et la mini-vue qui permet d avoir une représentation réduite de l ensemble des Tables. Les Editeurs : Ils permettent de modifier en temps réel un modèle. Dans le cadre du GUI il s agit d un éditeur graphique basé sur GEF. Les Feuilles de propriétés : Il s agit de la feuille de propriété qui permettent de modifier chacun des attributs ainsi que certaines propriétés des tables. Les Perspectives : Il s agit de la disposition de l ensemble du workbench. Dans le cadre du GUI il y a par exemple la feuille de propriété qui est affichée dans le cadre inférieur gauche.

11 3 PLUGIN ECLIPSE RCP : SOCQ GUI 11 Les Points d extensions : Pour créer un plugin et lui faire utiliser une partie du moteur d Eclipse, il faut définir des points d extension. Les points d extension permettent simplement d étendre et redéfinir certaines fonctionnalités d Eclipse au plugin. Par exemple le plugin qui gère la barre de menu prévoit un point d extension qui permet à d autres plugins de venir enrichir le menu. La notion d extension est centrale dans le framework Eclipse. Dans le cadre d une application Eclipse RCP c est le moyen utilisé pour déclarer des vues, des éditeurs, des pages de préférences, des assistants Le projet à l instant initial Lors de la création d un projet plugin RCP, certaines classes sont générées automatiquement par Eclipse. La structure des fichiers est représenté par la figure3. Figure 3 Structure initiale d un projet plugin Les différents points importants à repérer sont les suivants : le fichier plugin.xml qui contient les informations de configuration du plugin, le package fr.cnrs.liris.socq.gui qui contient les classes vitales à l exécution du plugin. Le fichier MANIFEST.MF contient lui aussi des informations liées au plugin(dépendances, version...) et le fichier build.properties contient les informations de compilation. 3.3 MANIFEST.MF, plugin.xml : configuration du projet Eclipse propose un éditeur pour modifier les fichiers plugin.xml et MA- NIFEST.MF ensembles et de manière visuelle[5]. Cet éditeur est représenté sur la figure 4.

12 3 PLUGIN ECLIPSE RCP : SOCQ GUI 12 Figure 4 Editeur Eclipse de plugin.xml

13 3 PLUGIN ECLIPSE RCP : SOCQ GUI 13 Overview : L onglet Overview permet de définir quelques informations générales du projet, tel que son nom sa version, et son ID. L ID permet d identifier l application lorsqu elle est exécutée. En effet, elle sera lancée en tant que nouveau plugin d Eclipse, et ce même si elle s exécute dans une nouvelle fenêtre, il faut donc qu Eclipse puisse identifier sans ambiguïté cette application. Il est alors important d utiliser, dans les différentes classes le nécessitant, un ID unique pour éviter les conflits. La Classe Activator est générée automatiquement et permet de lancer le plugin lorsqu il est sous OSGi. Normalement il n y a rien à modifier. Dependencies : Permet de définir quels plugins sont requis pour que le GUI soit exécuté. Il faut notamment les plugins GEF, ExtendedData(pour le parseur) et BaseData(pour la gestion des types) Runtime : Permet de définir quels packages du plugin sont visibles par les autres plugins. Extensions : Permet de définir les points d extensions que le plugin étend. C est dans cet onglet qu est géré la perspective, l éditeur, les menus, et les handlers de déclenchement de commandes GEF. Chacun de ces points est un point d extension du WorkBench Eclipse, il faut donc définir sous forme XML(l éditeur est la pour simplifier la tâche) comment utiliser ces points d extension. Le point d extension Menu, permet de définir les différents menus : contextuel (popup), de la barre de menu (toolbar), et du menu déroulant (menu). La compréhension du fonctionnement pour rajouter une action à un de ces menu est intuitive. Ce qu il faut savoir c est à quelle commande de l extension commande est associée une action du menu. Le point d extension Commande permet donc d associer à chacune des actions du menu une commande définit dans ce point d extension. Chaque commande est ensuite implémentée par un handler( et non une commande au sens GEF ) présent dans le package fr.cnrs.liris.socq.commands. Chaque Handler va être déclenché lors de son activation, lors de l utilisation du menu, et celui ci va ensuite déclencher les commandes GEF associées à sa fonction. Par exemple le Handler LoadFileHandler va lancer la commande GEF LoadCommand du package fr.cnrs.liris.socq.commands.gef. Remarque : Il est donc très facile d ajouter/modifier/supprimer une action au GUI à l aide de ces points d extensions, sans aller toucher au code.

14 3 PLUGIN ECLIPSE RCP : SOCQ GUI 14 Extension Points : Permet de définir quels points d extensions le plugin offre d étendre aux autres plugins. Build : Permet de définir quels fichiers joindre à l archive lors de la compilation. Cette fonction est intéressante si on souhaite exporter l application et qu il faut par exemple inclure les icônes à l archive exportée. Les onglets restants permettent de voir le contenu des fichiers édités dans les onglets précédents. 3.4 L éditeur Il est contenu dans le package : fr.cnrs.liris.socq.gui Il est composé de 2 classes : SoCQEditorInput et SoCQGraphicalEditor. SoCQEditorInput permet de faire le lien entre le Worbench Eclipse et l éditeur personnalisé de l application GUI. Il n y a rien a modifier à l intérieur en règle générale. SoCQGraphicalEditor permet de gérer tout l affichage graphique de l éditeur. Cette classe possède un attribut ID qui permet d identifier l éditeur SoCQ, pour préciser au WorkBench quel éditeur choisir. Cet ID est utilisé pour la configuration du plugin dans la section 3.3. L éditeur permet de modifier le SchemeModel représentant l ensemble des tables. Il contient donc un attribut SchemeModel représentant ce modèle à gérer. La méthode initializegraphicalviewer est appelée au lancement de l éditeur et permet de créer son contenu, initialement vide, à l aide de la Classe CreateContent. La méthode configuregraphicalviewer est aussi appelée au lancement de l éditeur, et permet de configurer les menus et zoom, et de lui associer les EditPart SoCQ définis dans la classe EditPartFactory ( cf Section 2 ). Lors d une modification de l Editeur, le fait que celui-ci ai été modifié est sauvegardé dans le booléen dirty. Lorsque l application doit se fermer( appel de dispose() ), il y un appel à la méthode isdirty() pour vérifier si l éditeur a été modifié et si c est le cas, il y a un appel à la méthode dosave. Il convient donc de modifier cet attribut lors des modifications du SchemeModel.

15 3 PLUGIN ECLIPSE RCP : SOCQ GUI 15 La gestion du zoom ( les commandes ) est faite dans la méthode configuregraphicalviewer. Cependant il y a aussi une miniature dans la vue Outline de l ensemble de l éditeur. Cette miniature est créée dans une class embedded à SoCQGraphicalEditor qui s occupe de gérer la vue Outline. 3.5 La vue Outline Cette vue est définie dans la classe Outline, class embedded à SoCQ- GraphicalEditor du package fr.cnrs.liris.socq.gui. Il s agit d implémenter la vue qui définie la représentation hiérarchique des modèles, ainsi que la vue miniature de l ensemble de l éditeur. Remarque : La classe Outline aurait pu faire l objet d une classe séparée, mais dans ce cas il aurait fallu pouvoir capter les répercutions d un changement du modèle présent dans l éditeur. C est tout à fait possible en mettant en place des listeners, comme c est le cas pour les EditPart qui répercutent les changements du modèle sur la vue, mais cela complique le code pour un élément non significatif. La classe Outline crée le TreeViewer ( nécessaire à l affichage du Scheme- Model de l éditeur sous forme d arbre hiérarchique )dans sa méthode createcontrol. Toutes les classes relatives au TreeViewer sont dans le package : fr.cnrs.liris.socq.gui.editpart.tree Il faut remarquer que le TreeViewer a besoin de la Factory AppTreeEditPartFactory, qui permet d associer en fonction du modèle à représenter la TreeEditPart correspondante et définie dans le package cité ci dessus. Chacun des modèles a sa propre TreeEditPart dans ce package. TreeEditPart est une classe générique offerte par GEF et permettant de faire le lien entre le modèle et sa représentation sous forme d arbre. Principalement 3 méthodes sont utilisées : refreshvisuals permet de mettre à jour le nom et l icône du modèle dans l affichage du TreeViewer. propertychange permet de capter les changements du modèles et de les répercuter sur son affichage, tout comme dans la section Modèle- Vue-Contrôleur 2 page 4. performrequest Lie une commande GEF en fonction de la requête effectuée par l utilisateur sur la TreeView. Remarque : La classe SchemaTreeEditPart implémente getmodelchildren pour permettre de ne pas afficher le Compartment AttributeList dans l arbre hiérarchique représentant les modèles. On gagne ainsi un niveau dans la représentation hiérarchique.

16 3 PLUGIN ECLIPSE RCP : SOCQ GUI Le menu et la barre d outils La gestion de l affichage du menu déroulant ainsi que la de la barre d outils est définie dans le fichier plugin.xml. Pour une explication sur son fonctionnement, se reporter à la section 3.3 page 11. Chacune des actions du menu est associée à un Handler[4] présent dans le package fr.cnrs.liris.socq.commands Le lien entre le Handler, les commandes GEF et le reste du programme est illustré sur la figure5 [4]. Figure 5 Lien entre les différentes extensions d Eclipse Le Handler permet de lancer excecute() lorsqu il est sollicité. Lors du lancement de cette méthode, on peut capter quel élément sont sélectionnés dans l éditeur, et ainsi choisir d effectuer ou non l action sur ce modèle. Remarque : Une évolution pourrait consister à implémenter les méthodes isenable() et ishandled() des Handlers pour autoriser dynamiquement ou non l action dans les menus. La difficulté vient en général du fait qu autoriser ces actions est lié au modèle sélectionné dans l éditeur et que pour capter celui ci on a besoin d un Event, non présent en paramètre d entrée de ces méthodes. Une façon de procéder pourrait être d émettre des évènements dans l éditeur lui même lorsqu il y a des modifications.

17 3 PLUGIN ECLIPSE RCP : SOCQ GUI 17 Le package fr.cnrs.liris.socq.gui.actions permet de définir à la main de façon "oldschool" les menu. Cependant il a été nécessaire pour faciliter l insertion du bouton Delete et des choix du Zoom. Il faut définir chacune des commandes à utiliser dans le menu, gérer leur affichage, etc...chose que le fichier plugin.xml permet de simplifier depuis la version 3.3 d Eclipse (cf. section 3.3 page 11). 3.7 Le menu contextuel La gestion de l affichage du menu contextuel est définie dans le fichier plugin.xml. Pour une explication sur son fonctionnement, se reporter à la section 3.3 page 11. La partie description de l affichage étant définie dans ce fichier, il faut aussi préciser où on veut l insérer. Pour cela il faut l ajouter dans l éditeur, c est-à-dire dans le fichier SoCQGraphicalEditor (cf section 3.4 page 14). Il est ajouté dans la méthode configuregraphicalviewer. 3.8 La feuille de propriétés L entière gestion de la feuille de propriété s effectue dans la classe Node- PropertySource du package fr.cnrs.liris.socq.gui.model. Comme les autres outils fournis par le WorkBench, la feuille de propriété est un point d extension dans le fichier plugin.xml ( cf section 3.3). La feuille de propriété se gère principalement au travers de 3 méthodes : getpropertydescriptors() permet de définir quel type d objet issue de org.eclipse.ui.views.properties sera utilisé pour une propriété d un élément sélectionné dans l éditeur. On peut par exemple crée des PropertyDescriptor ( classe de base pour visualiser la valeur sans qu elle soit éditable), des TextPropertyDescriptor ( pour visualiser et permettre de modifier la valeur), des ComboBoxPropertyDescriptor ( pour afficher la valeur et permettre la sélection dans un menu déroulant). Le choix se fait en fonction du type de l objet. Chaque PropertyDescriptor est créé avec un flag qui permet d identifier le type de propriété à utiliser et modifier. getpropertyvalue() qui permet de récupérer la valeur d un élément et de la mettre dans son PropertyDescriptor. setpropertyvalue qui permet de répercuter les changements de la valeur sur le modèle.

18 4 EDITEUR DE REQUÊTES 18 4 Editeur de requêtes L éditeur de requête est définie dans le package : fr.cnrs.liris.socq.commands.dialog Il permet d étier des requêtes et de voir le résultat du parseur ( vérification syntaxique et sémantique ) à la volée. Comme il s agit d une nouvelle fenêtre, il a été fait le choix d utiliser Free SWTDesigner de Instantiations 1,logiciel à licence libre permettant de gérer la disposition des éléments graphique de nouvelles fenêtres. 4.1 SWT vs Swing Pour gère l affichage de nouvelles fenêtres, en java "natif", il convient d utiliser la librairie Swing. Cependant le choix a été fait d utiliser SWT, librairie proposée par Eclipse et crée par IBM. Swing : permet de gérer l affichage de nouvelles fenêtre en émulant des fenêtres. Ce qui a plusieurs conséquences. Sous n importe quel système d exploitation, la fenêtre aura le même rendu. Il s ensuit principalement une perte de rapidité, liée à l émulation et une interface finalement mal appropriée pour chaque système d exploitation. L avantage est que son utilisation peu paraître plus simple et l interface reste identique quelque-soit le système d exploitation. SWT : Face aux lacune de la librairie Swing, IBM a décidé de développer sa propre librairie, nommée SWT. Celle ci est utilisable et est la librairie qui permet de gérer l affichage d Eclipse (car ne l oublions pas Eclipse est écrit en JAVA). Les avantages sont multiples, il n est plus question d émulation système, chaque fenêtre est appelée avec une API système. A cela plusieurs avantages, sous chaque système, l utilisateur retrouve l interface à laquelle il était habitué, il n y a plus de perte de rapidité lié à l émulation. Au final l utilisation de SWT n est pas forcément bien plus compliquée que celle de Swing. Donc pour le développement de ce plugin, il y avait tout intérêt à développer avec SWT. 4.2 Points clés de l éditeur de requêtes La gestion de la vérification :L éditeur de requêtes s occupe simplement de vérifier la syntaxe et la sémantique d une String. Il ne crée pas les objets correspondants. Ces objets sont créés par la classe CreateContent (cf. section 2.7 page 9). Cet éditeur permet juste de récupérer la String une fois celle ci correctement vérifiée. 1.

19 5 ETAT D AVANCEMENT 19 La gestion visuelle : Il est recommandé d utiliser le plugin SWTDesigner pour modifier et visualiser simplement la fenêtre. Le redimensionnement est géré à l aide d un listener qui capte les changements de taille de la fenêtre et qui répercute ce changement sur tous ses contenus que chacun va répercuter en chaîne sur leurs contenus. Le parseur est présent en attribut de la classe pour éviter de le créer a chaque touche tapée. Pour capter l appui d une touche, il faut placer un listener sur la modification du texte du querytext. les cases à cocher permettent d activer ou pas les différents types de vérification. Chaque case correspond à un booléen qui est consulté lorsque le listener d écoute de frappe capte une modification du texte de la requête. La vérification sémentique est effectuée en donnant au parseur l ensemble des Tables présentent dans l éditeur SoCQ. L ensemble de ces tables est donc mis en paramètre du constructeur de la fenêtre. De plus si une nouvelle table est crée dans la requête et qu ensuite on choisi de faire une requête sur cette table, la vérification sémantique incluera cette Table, mais cela sera lié au fonctionnement du parseur ( cf. Doc Parseur). L utilisation des listeners est apportée par la librairie SWT. 5 Etat d avancement Cette section décrit succintement les différents points concernant le GUI qui ne sont pas totalement terminés et qui méritent d être approfondis. 5.1 Gestion des tuples Actuellement, le GUI peut gérer les tuples. A savoir : Insertion de tuples dans une table à l aide des requêtes de DML Statement. Visualisier/Ajouter/Modifier/Supprimer les tuples à l aide d une nouvelle boite de dialogue, dans le même style que la boite de saisie de requête à la volée (Voir classe TableViewer du package fr.cnrs.liris.socq.commands.dialog). Les différents points techniques concernant cette gestion de tuples ne sont pas expliqué ici en détail, le code est suffisant pour la compréhension du TableViewer. Il faut juste savoir que les tuples sont représentés pour chaque TableModel par un vecteur de Tuple. Il est possible d accéder à cette boite via le handler AddTupleHandler. Limites et points à développer pour la gestion de tuples :

20 5 ETAT D AVANCEMENT 20 Les tuples "vides" sont remplacés par des chaines de charactère vide. Cette limitation pourra peut être géner quand il faudra insérer les tuples dans le moteur SoCQ. Gérer dans le TupleViewer la suppresion de tous les tuples. Gérer dans le Tupleviewer le non ajout de tuples Virtual. Dans la méthode verifycurrenttext du Table Viewer, ajouter une vérification sur le type des tuples. Lorsqu on crée un nouveau tuple via le bouton adéquat dans le Table- Viewer, il faudrait faire afficher la nouvelle ligne en surbrillance pour pouvoir la remarquer. 5.2 Eléments à développer Certains points méritant d être approfondis ont été abordés dans ce document au travers des Remarque. Voici en complément différentes limitations actuelles du GUI et des points à développer : Gérer le chargement/sauvegarde vers le moteur SoCQ. Gérer la suppresion de tuples via les requêtes(cf Doc Parseur). Rajouter des propriétés, ou en rendre certaiens éditables pour différents modèles ( comme par exemple les BindingPatterns ). Gérer les menus pour pour qu il ne soient actifs que quand on peut les excécuter. Ajouter la possibilité de mettre des commentaires dans les fichiers de Sauvegarde : dans la classe LoadCommand, la méthode lecture permet de lire ligne par ligne le fichier. Rajouter un test si la ligne commence par alors l ignorer. La gestion des connections entre modèles est ébauchée dans le ConectionModel et ConnectionPart, il faudrait développer la rendre fonctionnelle. 5.3 Plugin nécessaires au fonctionnement du GUI GEF[6] : Nécessaire pour utiliser le GUI. Une explication est donnée à l adresse FAQ#Download_and_Install ou directement sur le site GEF http: // SWT Designer de Instanciation : Necessaire pour modifier les boites de dialogue, index.html

21 RÉFÉRENCES 21 Références [1] Jean Charles MAMMANA alias Psykokwak. 13 tutoriels gef, http: // [2] eclipsetotale.com. Présentation d eclipse rcp (rich client platform), [3] Daniel Lee IBM. Draw2d - display a uml diagram, eclipse.org/articles/article-gef-draw2d/gef-draw2d.html. [4] David Kyle. New menu contribution extension, new-menu-contribution-extension.html. [5] Lars Vogel. Configuration du plugin - eclipse rcp with eclipse ganymede, [6] Phil Zoio. Gef - building a database schema diagram editor, gef-schema-editor.html.

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies

Plus en détail

S T L - C P S - L e s p l u g i n s E c l i p s e. - Une Introduction - 2007, Frédéric Peschanski

S T L - C P S - L e s p l u g i n s E c l i p s e. - Une Introduction - 2007, Frédéric Peschanski S T L - C P S - L e s p l u g i n s E c l i p s e - Une Introduction - 2007, Frédéric Peschanski L a p l a t e f o r m e E c l i p s e Aperçu de la plateforme Eclipse Runtime Composants OSGI Equinoxe Plugins

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

Projet de développement

Projet de développement Projet de développement Introduction à Eclipse Philippe Collet Licence 3 MIAGE S6 2012-2013 http://miageprojet2.unice.fr/index.php?title=user:philippecollet/projet_de_développement_2012-2013 Plan r Application

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

Plus en détail

Introduction aux concepts d ez Publish

Introduction aux concepts d ez Publish Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de

Plus en détail

Générer du code à partir d une description de haut niveau

Générer du code à partir d une description de haut niveau Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,

Plus en détail

La base de données dans ArtemiS SUITE

La base de données dans ArtemiS SUITE 08/14 Vous préférez passer votre temps à analyser vos données plutôt qu à chercher un fichier? La base de données d ArtemiS SUITE vous permet d administrer et d organiser confortablement vos données et

Plus en détail

SOMMAIRE. Comment se connecter?

SOMMAIRE. Comment se connecter? SOMMAIRE Comment se connecter? Présentation de l interface Notions sur l espace documentaire Création d un dossier Création d un document Modifier un document Copier ou déplacer des documents Exporter

Plus en détail

«Centreon Status Map» Conception et développement d une application j2se

«Centreon Status Map» Conception et développement d une application j2se RAPPORT DE STAGE : Conception et développement d une application j2se Du Mardi 1 mai au Mercredi 31 octobre 2007. Jean- Lamotte lamott_j Effectué à : 12 avenue Raspail 94270 Gentilly France Remerciements

Plus en détail

Construire des plug-ins pour SAS Management Console SAS 9.1

Construire des plug-ins pour SAS Management Console SAS 9.1 Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Tutoriel. Votre site web en 30 minutes

Tutoriel. Votre site web en 30 minutes Tutoriel Votre site web en 30 minutes But du tutoriel Nous allons vous présenter comment réaliser rapidement votre site avec Web Creator Pro 6 en vous basant sur l utilisation des modèles fournis avec

Plus en détail

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant

Plus en détail

Publier dans la Base Documentaire

Publier dans la Base Documentaire Site Web de l association des ingénieurs INSA de Lyon Publier dans la Base Documentaire Remarque : la suppression des contributions n est pas possible depuis le Front-Office. lbuisset Page 1 18/09/2008

Plus en détail

Visual Paradigm Contraintes inter-associations

Visual Paradigm Contraintes inter-associations Visual Paradigm Contraintes inter-associations Travail de Bachelor d'informaticien de gestion Partie C Présentation de Visual Paradigm 1 Présentation de Visual Paradigm For UML L objet du travail de Bachelor

Plus en détail

L import /export @GoogleDocs : Mise à jour rapide de votre catalogue

L import /export @GoogleDocs : Mise à jour rapide de votre catalogue L import /export @GoogleDocs : Mise à jour rapide de votre catalogue L export @GoogleDocs se situe au dessus du résultat de la recherche, qu elle soit simple ou avancée. En cliquant sur le texte «Export

Plus en détail

TD/TP 1 Introduction au SDK d Android

TD/TP 1 Introduction au SDK d Android TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

Documentation Liste des changements apportés

Documentation Liste des changements apportés Version 4.1.000 Documentation Liste des changements apportés C2 Innovations 2010 Table des matières À LA VERSION 4.1... 4 NOUVEAU PRE REQUIS POUR L INSTALLATION DE C2... 4 FERMER LA SESSION D UN UTILISATEUR

Plus en détail

Utilisation de l éditeur.

Utilisation de l éditeur. Utilisation de l éditeur. Préambule...2 Configuration du navigateur...3 Débloquez les pop-up...5 Mise en évidence du texte...6 Mise en évidence du texte...6 Mise en page du texte...7 Utilisation de tableaux....7

Plus en détail

Séminaire d information MIGRATION WINDOWS 7 ET OFFICE 2010

Séminaire d information MIGRATION WINDOWS 7 ET OFFICE 2010 Séminaire d information MIGRATION WINDOWS 7 ET OFFICE 2010 Pourquoi migrer vers Office 2010? Pour bénéficier d une meilleure ergonomie Pour faciliter les échanges avec l extérieur Pour profiter de la puissance

Plus en détail

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume Studio HERITIER Emmanuelle PERSYN Elodie SCHMUTZ Amandine SCHWEITZER Guillaume Cours R Présentation projet 10/10/2013 Introduction RStudio est une interface créé par JJ Allaire Elle est sortie le 11 Février

Plus en détail

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée.

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée. Créer un site Internet à l aide du logiciel NVU Le logiciel NVU, permet l édition Wysiwyg (What You See, Is What You Get, ce que vous voyez, est ce que vous obtenez ) d un site internet. Vous rédigez le

Plus en détail

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server Sébastien Boutard Thomas David Le plan de la présentation Petit retour sur les environnements de développement ArcGIS Server

Plus en détail

< Atelier 1 /> Démarrer une application web

< Atelier 1 /> Démarrer une application web MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE

Plus en détail

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau labsticc.univ-brest.fr/pages_perso/babau/ Ingénierie Dirigée par les Modèles Editeurs de modèles (Eclipse Modeling Tools) Jean-Philippe Babau Département Informatique, UFR Sciences, Laboratoire Lab-STICC

Plus en détail

Guide d usage pour Word 2007

Guide d usage pour Word 2007 Formation TIC Septembre 2012 florian.jacques@etsup.com Guide d usage pour Word 2007 ETSUP 8 villa du Parc Montsouris 75014 PARIS SOMMAIRE Interface... 2 Organiser son espace de travail... 3 La barre d

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

KWISATZ MODULE PRESTASHOP

KWISATZ MODULE PRESTASHOP Table des matières -1) KWISATZ - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) PRESTASHOP :...4-1.3.1.1) Les Web Services :...4-1.3.2) KWISATZ

Plus en détail

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO _TUTO_module_magento Table des matières -1) - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) MAGENTO :...4-1.3.1.1) Les Web Services :...4-1.3.1.2)

Plus en détail

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES Avant-propos Conçu par des pédagogues expérimentés, son originalité est d être à la fois un manuel de formation et un manuel de référence complet présentant les bonnes pratiques d utilisation. FICHES PRATIQUES

Plus en détail

COURS WINDEV NUMERO 3

COURS WINDEV NUMERO 3 COURS WINDEV NUMERO 3 01/02/2015 Travailler avec un fichier de données Etude du gestionnaire d analyse, Manipulation des tables mémoires, Manipulation de données, Création d états, Pré requis : Cours WinDev

Plus en détail

Manuel Utilisateur. Boticely

Manuel Utilisateur. Boticely Manuel Utilisateur Boticely Auteur : Logica Version : 1.4 Droit d auteur Ce texte est disponible sous contrat Creative Commons Paternité - Pas d'utilisation Commerciale - Partage des Conditions Initiales

Plus en détail

Méthode de préparation du fichier texte d import depuis Excel, via Access jusqu à Drupal.

Méthode de préparation du fichier texte d import depuis Excel, via Access jusqu à Drupal. IMPORT SCROL vous invite fortement à lui confier cette tâche pour vous décharger de toute responsabilité dans le cas d'un import manqué. Si vous confiez à SCROL vos nouvelles données (souches, images,

Plus en détail

26 Centre de Sécurité et de

26 Centre de Sécurité et de 26 Centre de Sécurité et de Maintenance La fenêtre du Centre de sécurité et de maintenance (CSM) rassemble tous les outils nécessaires au contrôle, à l analyse, à la maintenance, à la sauvegarde et au

Plus en détail

Introduction à Expression Web 2

Introduction à Expression Web 2 Introduction à Expression Web 2 Définitions Expression Web 2 est l éditeur HTML de Microsoft qui répond aux standard dew3c. Lorsque vous démarrez le logiciel Expression Web 2, vous avez le choix de créer

Plus en détail

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8 Sage 100 CRM Guide de l Import Plus avec Talend Version 8 Mise à jour : 2015 version 8 Composition du progiciel Votre progiciel est composé d un boîtier de rangement comprenant : le cédérom sur lequel

Plus en détail

Guide d utilisation 2012

Guide d utilisation 2012 Guide d utilisation 2012 Tout ce dont vous avez besoin pour bien démarrer REACOM La performance marketing SOMMAIRE Démarrez avec reagiciel Accédez à votre console d administration 4 Gestion internet Aperçu

Plus en détail

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de Guide de l utilisateur Faites connaissance avec la nouvelle plateforme interactive de Chenelière Éducation est fière de vous présenter sa nouvelle plateforme i+ Interactif. Conçue selon vos besoins, notre

Plus en détail

Intégration de l interface graphique de Ptidej dans Eclipse

Intégration de l interface graphique de Ptidej dans Eclipse Intégration de l interface graphique de Ptidej dans Eclipse Driton Salihu (salihudr@iro.umontreal.ca) Lulzim Laloshi (laloshil@iro.umontreal.ca) Département d informatique et de recherche opérationnelle

Plus en détail

Optimiser pour les appareils mobiles

Optimiser pour les appareils mobiles chapitre 6 Optimiser pour les appareils mobiles 6.1 Créer un site adapté aux terminaux mobiles avec jquery Mobile... 217 6.2 Transformer son site mobile en application native grâce à PhoneGap:Build...

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

Plus en détail

Comment utiliser FileMaker Pro avec Microsoft Office

Comment utiliser FileMaker Pro avec Microsoft Office Guide d utilisation Comment utiliser FileMaker Pro avec Microsoft Office Comment utiliser FileMaker Pro et Microsoft Office page 1 Table des matières Introduction... 3 Avant de commencer... 4 Partage de

Plus en détail

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B Excel : Réalisation d un classeur Compta Saisir les étiquettes Renommer la première feuille Compta Laisser la première ligne vide et sur la deuxième ligne saisir les étiquettes Se placer sur A2 et saisir

Plus en détail

1. Installation du Module

1. Installation du Module 1 sur 10 Mise en place du Module Magento V 1.5.7 1. Installation du Module Vous pouvez installer le module de deux façons différentes, en passant par Magento Connect, ou directement via les fichiers de

Plus en détail

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles Manuel d utilisation de la plate-forme de gestion de parc UCOPIA La mobilité à la hauteur des exigences professionnelles 2 Manuel d utilisation de la plate-forme de gestion de parc UCOPIA 1 Table des matières

Plus en détail

Guide de démarrage Tradedoubler. Manuel éditeur / affilié

Guide de démarrage Tradedoubler. Manuel éditeur / affilié Guide de démarrage Tradedoubler Manuel éditeur / affilié 1 DEMARRER 1. Devenir éditeur sur Tradedoubler 2. Ajouter ses informations bancaires 3. Bénéficier des paiements internationaux 4. Avoir accès aux

Plus en détail

Manuel utilisateur de KB3 V3

Manuel utilisateur de KB3 V3 : MANAGEMENT DES RISQUES INDUSTRIELS G ROUPE : ANALYSE DES R ISQUES DES O RGANISATIONS ET S YSTEMES DE FONCTIONNEMENT 1, AVENUE DU GENERAL DE GAULLE F-92141 CLAMART C EDEX Novembre 2005 T EL : 33 1 47

Plus en détail

Cartographie Informatique Eclairage Public

Cartographie Informatique Eclairage Public Syndicat Départemental d Electricité de la Haute Garonne Cartographie Informatique Eclairage Public Fonctionnalité de déclaration et de suivi des pannes Notice d utilisation 1-Préambule : L application

Plus en détail

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe : 1 CONNEXION A LA MESSAGERIE ZIMBRA PAR LE WEBMAIL Ecran de connexion à la messagerie Rendez vous dans un premier temps sur la page correspondant à votre espace webmail : http://webmailn.%votrenomdedomaine%

Plus en détail

MEGA ITSM Accelerator. Guide de démarrage

MEGA ITSM Accelerator. Guide de démarrage MEGA ITSM Accelerator Guide de démarrage MEGA 2013 1ère édition (janvier 2013) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne sauraient en aucune

Plus en détail

Module Criteo Tags et Flux pour Magento

Module Criteo Tags et Flux pour Magento Module Criteo Tags et Flux pour Ma Module Criteo Tags et Flux pour Ma Documentation Auteur : Web In Color Date : 23 décembre 2014 Version : 1.3.1 Compatibilité : Ma 1.5.x 1.9.x Nom du document : wic_criteo_fr.pdf

Plus en détail

PARAMETRAGE D INTERNET EXPLORER POUR L UTILISATION DE GRIOTTE

PARAMETRAGE D INTERNET EXPLORER POUR L UTILISATION DE GRIOTTE PARAMETRAGE D INTERNET EXPLORER POUR L UTILISATION DE GRIOTTE ETAPE 1 : configurer votre site Griotte comme site de confiance. Ouvrir votre navigateur sur une page Griotte, n importe laquelle, par exemple

Plus en détail

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

Plus en détail

Access 2007 FF Access FR FR Base

Access 2007 FF Access FR FR Base ACCESS Basic Albertlaan 88 Avenue Albert Brussel B-1190 Bruxelles T +32 2 340 05 70 F +32 2 340 05 75 E-mail info@keyjob-training.com Website www.keyjob-training.com BTW TVA BE 0425 439 228 Access 2007

Plus en détail

Création d un formulaire de contact Procédure

Création d un formulaire de contact Procédure Création d un formulaire de contact Procédure Description : Cette procédure explique en détail la création d un formulaire de contact sur TYPO3. Outil Procédure CMS: TYPO3 Auteur : hemmer.ch SA Extension:

Plus en détail

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn 1 Organisation Projet de développement Introduction à Eclipse Philippe Collet Licence 3 Informatique Cours 1 : principes généraux - svn Cours 2 : Redmine et gestion de projet Cours 3 : Introduction à Eclipse

Plus en détail

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net Your Detecting Connection Manuel de l utilisateur support@xchange2.net 4901-0128-5 ii Table des matières Table des matières Installation... 4 Conditions d utilisation de XChange 2...4 Définir vos Préférences

Plus en détail

Le moteur de workflow JBPM

Le moteur de workflow JBPM Le moteur de workflow Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/

Plus en détail

GUIDE DE DÉMARRAGE. SitagriPro Infinite FINANCEAGRI. Un service. c o r p o r a t e

GUIDE DE DÉMARRAGE. SitagriPro Infinite FINANCEAGRI. Un service. c o r p o r a t e GUIDE DE DÉMARRAGE SitagriPro Infinite Un service FINANCEAGRI c o r p o r a t e SOMMAIRE ÉTAPE 1 : Installation... p.3 1. Introduction 2. Connexion à SitagriPro Infinite ÉTAPE 2 : Identification... p.5

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont I Open Boutique Sommaire : I Open Boutique... 1 Onglet «Saisie des Produits»... 3 Création d'une nouvelle fiche boutique :... 3 Création d'une nouvelle fiche lieux de retraits :... 10 Création d'une nouvelle

Plus en détail

TD3 - Facturation avec archivage automatisé

TD3 - Facturation avec archivage automatisé TD3 - Facturation avec archivage automatisé Objectifs Insérer les formules nécessaires aux calculs d une facture. Créer une macro- commande avec l enregistreur de macros et l affecter à un bouton. Utiliser

Plus en détail

Manuel d utilisation de l outil collaboratif

Manuel d utilisation de l outil collaboratif Manuel d utilisation de l outil collaboratif Réf OCPD-V2 Page 1 / 24 a mis en œuvre un outil collaboratif qui permet de partager des informations entre collaborateurs. Il permet à des utilisateurs travaillant

Plus en détail

FAA : Fonctions Automatiques de l Application. Les fonctions automatiques incluses dans vos applications développées avec

FAA : Fonctions Automatiques de l Application. Les fonctions automatiques incluses dans vos applications développées avec FAA : Fonctions Automatiques de l Application Les fonctions automatiques incluses dans vos applications développées avec Fonctionnalités automatiques WinDev 12 - Version 2-03-08 Fonctionnalités automatiques

Plus en détail

TechSoftware Présentations

TechSoftware Présentations TechSoftware Présentations Philippe THOMAS Spécialiste Supervision chez Tivoli THOMAS1@FR.IBM.COM 2 Mes Sessions à TechSoftware TIV02 - Comment construire ses rapports avec BIRT pour les solutions Tivoli

Plus en détail

Eclipse atelier Java

Eclipse atelier Java Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer

Plus en détail

1 Presentation du bandeau. 2 Principe de création d un projet : C2 industrialisation Apprendre Gantt project Ver 2.6 planifier

1 Presentation du bandeau. 2 Principe de création d un projet : C2 industrialisation Apprendre Gantt project Ver 2.6 planifier 1 Presentation du bandeau Créer une tâche Supprimer une tâche Affiche les propriétés d une tâche Onglet Gantt ou Ressources Calendrier Liste des tâches (ID ; Nom ; Date début et Date de Fin) 2 Principe

Plus en détail

Publication dans le Back Office

Publication dans le Back Office Site Web de l association des ingénieurs INSA de Lyon Publication dans le Back Office Note : dans ce guide, l'appellation GI signifie Groupe d'intérêt, et GR Groupe Régional laure Buisset Page 1 17/09/2008

Plus en détail

UTILISATION DU MODULE PHOCAGALLERY

UTILISATION DU MODULE PHOCAGALLERY UTILISATION DU MODULE PHOCAGALLERY I. Préambule Le module est installé, configuré et fonctionne sur votre site. II. Importation des photos de la galerie dans MEDIAS Un module d import d images existe dans

Plus en détail

LES TOUT PREMIERS PAS

LES TOUT PREMIERS PAS DESMODO, un logiciel de gestion d idées http://www.desmodo.net/ LES TOUT PREMIERS PAS Desmodo est un logiciel (libre) qui permet, entre autre, de visualiser et de synthétiser, de manière organisée, sous

Plus en détail

COURS AUTOCAD. Création et utilisation des blocs. b leclerc. ERP Jean Moulin METZ

COURS AUTOCAD. Création et utilisation des blocs. b leclerc. ERP Jean Moulin METZ COURS AUTOCAD Création et utilisation des blocs QU EST-CE QU UN BLOC? C est un élément de dessin, auquel peut être associé du texte (des attributs ). Un bloc constitue un élément de bibliothèque. Il peut

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Database Manager Guide de l utilisateur DMAN-FR-01/01/12

Database Manager Guide de l utilisateur DMAN-FR-01/01/12 Database Manager Guide de l utilisateur DMAN-FR-01/01/12 Les informations contenues dans le présent manuel de documentation ne sont pas contractuelles et peuvent faire l objet de modifications sans préavis.

Plus en détail

Manuel d utilisation du site web de l ONRN

Manuel d utilisation du site web de l ONRN Manuel d utilisation du site web de l ONRN Introduction Le but premier de ce document est d expliquer comment contribuer sur le site ONRN. Le site ONRN est un site dont le contenu est géré par un outil

Plus en détail

Atelier Le gestionnaire de fichier

Atelier Le gestionnaire de fichier Chapitre 12 Atelier Le gestionnaire de fichier I Présentation Nautilus est un gestionnaire de fichiers pour l environnement de bureau Gnome. Il offre toutes les fonctions de gestion de fichier en local

Plus en détail

APIs de table pour SQL Server

APIs de table pour SQL Server 2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et de fin du

Plus en détail

Reporting Services - Administration

Reporting Services - Administration Reporting Services - Administration Comment administrer SQL Server Reporting Services Cet article a pour but de présenter comment gérer le serveur depuis le "portail" de Reporting Services. Nous verrons

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

F O R M A T I O N S LOTUS NOTES. 8.5 Utilisateurs. 02 40 42 33 37 13 rue de la Bôle. E U R L. a u c a p i t a l d e 1 0 0 0

F O R M A T I O N S LOTUS NOTES. 8.5 Utilisateurs. 02 40 42 33 37 13 rue de la Bôle. E U R L. a u c a p i t a l d e 1 0 0 0 Bureautique - Internet - Développement ALTAIRE F O R M A T I O N S Logiciels - Audit - Marketing LOTUS NOTES 8.5 Utilisateurs 02 40 42 33 37 13 rue de la Bôle 44510 le Pouliguen altair.formation s@wan

Plus en détail

Environnements de développement (intégrés)

Environnements de développement (intégrés) Environnements de développement (intégrés) Introduction aux EDI, la plateforme Eclipse Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

Cours iguess. inotes v10.1

Cours iguess. inotes v10.1 Cours iguess inotes v10.1 Ce projet a été financé avec le soutien de la Commission européenne. Cette publication (communication) n engage que son auteur et la Commission n est pas responsable de l usage

Plus en détail

Votre premier projet Android

Votre premier projet Android 3 Votre premier projet Android Maintenant que le SDK Android est installé, il est temps de créer votre premier projet. La bonne nouvelle est qu il n exige aucune ligne de code les outils Android créent

Plus en détail

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde Sommaire Installation du logiciel...2 Enregistrement du logiciel...2 Présentation du logiciel...3 Initialisation du logiciel... 1. Initialisation des constantes...4 2. Initialisation des codes grades...5

Plus en détail

CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF

CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF SOMMAIRE Sommaire... 2 Un espace de travail collaboratif, pourquoi faire?... 3 Créer votre espace collaboratif... 4 Ajouter des membres... 6 Utiliser

Plus en détail

GUIDE D UTILISATION DU BACKOFFICE

GUIDE D UTILISATION DU BACKOFFICE GUIDE D UTILISATION DU BACKOFFICE 1. Modifier les pages du site : - Aller dans l onglet «PAGE HTML», puis «Liste des pages HTML» - Pour visualiser votre page, cliquer sur le nom écrit en vert, dans la

Plus en détail

Europresse.com. Pour les bibliothèques publiques et de l enseignement. Votre meilleur outil de recherche en ligne. Guide version 1.

Europresse.com. Pour les bibliothèques publiques et de l enseignement. Votre meilleur outil de recherche en ligne. Guide version 1. Europresse.com Pour les bibliothèques publiques et de l enseignement Votre meilleur outil de recherche en ligne Guide version 1.5 CEDROM-SNi Comprendre la page d accueil 1. Bandeau de navigation 2. Espace

Plus en détail

Utilisation de Sarbacane 3 Sarbacane Software

Utilisation de Sarbacane 3 Sarbacane Software Tutorial par Anthony Da Cruz Utilisation de Sarbacane 3 Sarbacane Software Ambiance Soleil 17 Rue Royale 74000, Annecy Sommaire 1. Présentation générale 2. Guide étape par étape 3. Astuces de l éditeur

Plus en détail

Utiliser les infopages

Utiliser les infopages Utiliser les infopages Karen Chabriac - CRDP de l Académie de Toulouse, 2011 N.B Cette fiche vient accompagner la formation «PMB, fonctions avancées» durant laquelle des explications et exemples complémentaires

Plus en détail

Infolettre #18 : Les graphiques avec Excel 2010

Infolettre #18 : Les graphiques avec Excel 2010 Infolettre #18 : Les graphiques avec Excel 2010 Table des matières Introduction... 1 Hourra! Le retour du double-clic... 1 Modifier le graphique... 4 Onglet Création... 4 L onglet Disposition... 7 Onglet

Plus en détail

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013 Exemple d utilisation du gestionnaire de conception Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013 6, rue de l Etang, L-5326

Plus en détail

MANUEL GANTT PROJECT

MANUEL GANTT PROJECT MANUEL GANTT PROJECT A FAIRE UN GANTT PREVISIONNEL 1 Définir le problème Le diagramme de GANTT est un outil permettant de modéliser la planification de tâches nécessaires à la réalisation d'un projet.

Plus en détail

Manuel du composant CKForms Version 1.3.2

Manuel du composant CKForms Version 1.3.2 Manuel du composant CKForms Version 1.3.2 Ce manuel vous présente les principales fonctionnalités du composant CKForms y compris le module et le plug-in CKForms 1.3 est la nouvelle version du composant

Plus en détail

ZOTERO Un outil gratuit de gestion de bibliographies

ZOTERO Un outil gratuit de gestion de bibliographies ZOTERO Un outil gratuit de gestion de bibliographies Téléchargement sur http://www.zotero.org Zotero est une extension du navigateur Web Firefox 0 Mais désormais applications autonomes par rapport à Firefox

Plus en détail

Manuel d utilisateur BilanKine Version 1.5

Manuel d utilisateur BilanKine Version 1.5 Manuel d utilisateur BilanKine Version 1.5 Manuel d utilisateur BilanKine 2 Table des matières 1 Introduction 3 2 Installation 3 2.1 Sous Windows................................... 3 2.2 Sous Macintosh..................................

Plus en détail

Site web établissement sous Drupal

Site web établissement sous Drupal Site web établissement sous Drupal Etat Date Rédacteur Version Création 12/12/2013 C. Vilport Pôle Web DASI 1.0 Modification 04/02/2014 C. Vilport Pôle Web DASI 1.1 Diffusion aux 06/02/2014 C. Vilport

Plus en détail

Réglages du portail de P&WC

Réglages du portail de P&WC Réglages du portail de P&WC Afin de régler votre navigateur Internet Explorer et de résoudre quelques problèmes spécifiques que les utilisateurs du portail de P&WC pourraient éprouver, nous vous recommandons

Plus en détail