====== Commit 2006-11-21 ====== ===== Modifs ===== * **Modif dépendances DLL**: * ''mtFEM'' ne dépend plus de ''mtViz''. La DLL graphique devient donc une couche de très haut niveau qui n'est appelée que par le ''main'' et python. Auparanvant, ''mtFEM'' dépendait de ''VizWin'' parce que ''Metafor'' ouvrait une fenêtre et jouait avec elle pendant l'intégration. J'ai remplacé ce vieux système par un système utilisant des observateurs. La classe ''VizWin'' dérive maintenant de ''GUIObserver'' (nouvelle classe de bas niveau dans ''mtKernel''). On peut associer à ''Metafor'' une série de ''GUIObserver''s par la commande ''addObserver'' (ceci remplace l'ancienne commande ''addWindow''. Par défaut, la fenêtre ''VizWin'' est ajoutée sous python dans ''toolbox.utilities'' à l'aide d'un simple ''vizu''. * Déplacement de ''Command.*'', ''CommandList.*'' dans ''mtViz''. Ce sont des classes utilisées uniquement dans le cas où la visu est active et qui utilise le multithreading de Qt. * Création d'une classe "interpréteur python multithread" (utilisé uniquement quand on est en mode graphique) dans ''mtViz''. Je l'ai nommé ''GUIPythonInterpreter''. * Déplacement de ''initStaticObjects.*'' vers ''mtMain''. Ca permet de supprimer la dépendance de ''mtPython'' avec ''mtViz'' et donc d'appeler l'interpréteur à partir de ''mtViz''. * __//Conséquences//__: * presque plus de ''_WITH_GUI_'' dans le code! (il en reste que dans ''mtMain'' et ''_mtViz.i'', en gros). * un seul endroit pour configurer la fenêtre par défaut ouverte par ''meta''/''restart'': ''toolbox.utilities.vizu'' (en plus, c'est du code interprété donc c'est très simple). * possibilité d'appeler ''mtFEM'' (objets de haut niveau tels ''Domain'', ''Metafor'', etc) à partir de l'interface. c'est pas encore utilisé mais ça va venir. * **Améliorations de la console ''PythonWindow''**: * Ajout d'options pour la console (menu File/Options) -- nouvelle classe ''OptionDialog''. Les options sont sauvées dans la base de registre sous Windows et dans le répertoire ''~/.qt/'' sous Unix. * Ajout d'une fonction d'impression de la console (menu File/Print). * Ajout de la liste des ''VizWin''s disponibles (et ''ObjectBrowser''s) dans le menu File/Windows. Grâce à ce menu, vous pouvez réouvrir une fenêtre que vous auriez fermée pour gagner de la place (et oui, le message "Don't close this Window" a été supprimé!). Cliquer pour fermer une fenêtre ''VizWin'' ne fait que la cacher. * Ajout d'un menu "utilities" contenant des raccourcis vers les commandes les plus utilisées: * ''meta'': lancer ''meta'' en choisissant le module à la souris. * ''restart'': pas encore implémenté. * ''vizu'': lance ''vizu'' sur un module. * ''loadFac'': charge un fac en sélectionnant le fichier à la souris * ''makeAnimation'': lance le script ''makeAnimation''. * ''import'': importe un module * ''execfile'': exécute un script python (utile pour charger des ''.t'' de ''apps.complex'' par exemple. * ''os.chdir'': change le répertoire courant (utile également pour les ''.t'') * ''convert'': * ''STEP => py'': convertit un fichier step en ''.py'' (''stp2e'' doit être spécifié dans les options). * ''BACON => py'': meme chose pour un ''.dat'' (''samcef'' doit être spécifié dans les options). * ''NASTRAN => py'': pas encore implémenté. * **Autres**: * Ajout d'un test dans ''meta'' et ''restart'' pour éviter qu'on ne lance 2x une intégration sans redémarrer Metafor. * ''MainVizWin'' devient ''VizWinWidget'' pour respecter la convention de nom des widgets Qt. ===== Screenshots ===== {{ commit:2006:qtreg.jpg |Sauvegarde de la config dans la base de registre}} ===== Projets ===== __.pro:__ * changer ''MainVizWin.ui'' en ''VizWinWidget.ui'' * ajouter ''OptionDialog.ui'' __Visual:__ * ''mtPython'' ne dépend plus de ''mtViz'' * ''mtViz'' dépend de ''mtPython'' * ''mtFEM'' ne dépend plus de ''mtViz'' ===== Fichiers ajoutés/supprimés ===== R mtFEM/algos/Metafor_windowsInitialisation.cpp A mtKernel/GUIObserver.cpp A mtKernel/GUIObserver.h A mtMain/staticObjects.cpp A mtMain/staticObjects.h R mtPython/staticObjects.cpp R mtPython/staticObjects.h R mtQt/MainVizWin.ui R mtQt/MainVizWin.ui.h A mtQt/OptionDialog.ui A mtQt/OptionDialog.ui.h A mtQt/VizWinWidget.ui A mtQt/VizWinWidget.ui.h A mtViz/GUIPythonInterpreter.cpp A mtViz/GUIPythonInterpreter.h R mtViz/StdInReader.cpp R mtViz/StdInReader.h A mtViz/Command.h A mtViz/Command.cpp A mtViz/CommandList.h A mtViz/CommandList.cpp R mtPython/Command.h R mtPython/Command.cpp R mtPython/CommandList.h R mtPython/CommandList.cpp --- //[[r_boman@yahoo.fr|Romain BOMAN]] 2006/11/21 09:24//