[.Net] Créateur de machine à état

Hello,

pour un projet je dois créer un éditeur de machine à états et j’aimerais le faire de manière graphique, un peu à la manière du créateur de diagramme de classe de Visual Studio 2005, où je déplacerais des objets (les états) et créerait des liens entre eux.

Je n’ai pas trouvé de classe me permettant de faire ça de manière simple, c’est à dire ne pas dessiner à la main les objets et me farcir les problèmes de déplacement, de collisions etc.

Est-ce que quelqu’un a déjà fait quelque chose du genre? Je n’arrive pas à croire qu’il n’y ait pas quelque chose dans le genre, vu tous les éditeurs graphiques qui sont fournis dans Visual Studio.

Pour information, je pense partir sur le framework 3.0, donc avec WPF.

Merchi

Regarde par là :
http://research.microsoft.com/fse/asml/

Et tu veux peux pas partir avec ca? http://wf.netfx3.com/

Oui voila B) M’enfin vraiment si tu veux faire un truc tout con tout bete ca peut valoir le coup de se le faire soi meme a la main. Enfin tout depend des objectifs on peut pas juger la B)

Mmh, peut être me suis-je mal exprimé, mais en fait le but n’est pas d’utiliser un outil pour créer des machines à état, le but est de créer un outil pour dessiner des machines à état. Genre comme celles utilisées dans Workflow Foundation, mais dans une application qui n’aurait pas besoin de Visual Studio pour fonctionner.

En gros je voulais savoir comment l’éditeur de Worflow Foundation avait été fait et comment refaire un truc similaire, je me disais qu’il devait y avoir des moyens pour faire une application du genre sans avoir à tout gérer sois-même.

Non non mais c’etait pigé, tu peux hoster le designer de WF partout, pas juste dans VS. Ya plein d’exemples qui t’expliquent comment.
Apres de la a savoir si c’est la meilleure maniere de faire…

Ah ok, mais euh imaginons que ce ne soit pas un éditeur de machine à état, mais un éditeur de diagramme de classe, de classement d’équipes de foot ou je ne sais quoi encore, ça pourrait tout se faire avec WF?

Parce que j’avais l’impression que WF c’était déjà une sorte d’éditeur de machine à état… je suis un poil perdu.

Ha ca c’est pas fait pour faire tout et n’importe quoi, c’est vraiment fait pour editer des workflow. Maintenant comme je dis plus haut faut vraiment savoir ce que tu veux faire, son utilisation. Les scenarios precis et de bout en bout de ce que veut le client, plus que les specs techniques d’ailleurs.

Hum… mais imaginons que je veuille faire un éditeur… disons comme Visio, qui permet de faire un peut tout et n’importe quoi.
Que pourrais-je utiliser pour pouvoir créer des “objets” déplaçables sans devoir tout réinventer.

En gros, créer un objet vectoriel dans lequel on peut écrire du texte, qui peut être déplacé, redimensionné, etc.

Tain j’espere que tu realises l’etendue du boulot, c’est juste hallucinant ce que tu decris B) Pour un produit pro selon ce que ca fait je dirais que c’est 5 a 20 personnes pendant 1 an mini. Enfin oui le mieux c’est de partir sur du WPF et de se construire une super archi logicielle derriere pour faire tourner tout ca. Bon courage donc B)

Oui mais bon, le but c’est pas de refaire Visio mais un truc tout simple.

J’imaginais qu’il y avait déjà dans le framework des simplifications pour faire ce genre de trucs. Un peu de la même manière qu’il est assez facile de faire une application qui contient des fenêtres dans une fenêtre principale. Dans ce cas on a pas besoin de redéfinir la manière dont la fenêtre fonctionne, on définit juste que c’est une fenêtre et du coup on peut la déplacer, la redimensionner, etc.

J’imaginais qu’il y avait de la même manière des objets vectoriels simple déjà prédéfinis qui peuvent être redimensionnés, etc.

Mais je vais encore regarder du côté de WPF.

Merci pour votre aide B)

Ha oui clair, en natif je te dirais que c’est 5 ans avec 30 personnes huhu. Non c’est super plus simple en WPF, mais j’ai vu les mecs qui ont fait sparkle qui est un editeur XAML qui fait en gros ce que tu decris et c’est pas simple, m’enfin avoir un petit editeur qui tourne au depart et qui fait des trucs de base ca va vite oui ( mattes expression blend, le nom officiel ici: http://www.microsoft.com/products/expression/en/default.mspx tu peux telecharger une beta ). Faut bien se former a XAML/WPF je pense, ca a une philosophie a choper et a bien integrer, y a un declic a avoir sur la maniere dont ca s’organise. Je pense que tu trouveras des tutos pour faire un petit editeur XAML propre, je sais que les mecs de mon equipe qui etaient parti faire l’editeur xaml dans VS avait un truc de mega base plutot sympa qui tournait en une semaine. Mais c’etait un peu des specialistes du truc.

Je vais dire une grosse connerie vu que je vais parler d’un projet Java, mais Zgoblin avait fait un outil de conception Merise, on voyait donc les tables de maniere graphique, avec drag and drop et tout. Je sais pas s’il avait tout codé from scratch ou s’il avait utilisé quelque chose, mais ca peut valoir le coup de lui envoyer un PM pour savoir B)

Si c’est from scratch y’a surement des trucs à en tirer B)

vala :smiley: