X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FbbtkwxGUIEditorGraphicBBS.h;h=ef9dc2f09c702e4f271f0687f9fc091957b2e20a;hb=3cf9e69646c27f2c77bbf4ddb657d34deffbe386;hp=3a4df85f8ef3e05efa48c18994b4b38564296da6;hpb=775c8164b5f679027b8bbafa97c0e0110711909b;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h index 3a4df85..ef9dc2f 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h @@ -1,3 +1,28 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + /*========================================================================= Program: bbtk Module: $RCSfile$ @@ -47,9 +72,11 @@ //Includes same project #include "wxTabPanelsManager.h" #include "wxBlackBoxEditionDialog.h" +#include "wxDiagramPropertiesEditionDialog.h" #include "wxVtkSceneManager.h" #include "GlobalConstants.h" + #include "wxart_new.xpm" // JPR #include "wxart_open.xpm" #include "wxart_save.xpm" @@ -61,6 +88,10 @@ #include "wxart_complexbox.xpm" #include "wxart_complexinputport.xpm" #include "wxart_complexoutputport.xpm" +#include "wxart_undo.xpm" +#include "wxart_redo.xpm" +#include "wxart_editProperties.xpm" +#include "wxart_showTree.xpm" //Includes creaMaracasVisu @@ -68,6 +99,8 @@ #include #include #include +#include +#include #include #include @@ -87,6 +120,7 @@ //Includes std #include #include +#include namespace bbtk { @@ -120,6 +154,11 @@ namespace bbtk // Shows the dialog to change the parameters and values of the black box void editBlackBox(GBlackBoxModel *bbmodel); + bool boxNameExists(std::string boxname); + bool isCurrentDiagramComplexBox(); + + // Checks and adds if necessary the .bbg/.bbs extensions + std::string CheckExtension (std::string filename, std::string extension); // Method that can be used to refresh the help and package browser // RaC TOFIX!!! void RegenerateAll(); @@ -134,14 +173,19 @@ namespace bbtk void SaveActualComplexBox(std::string filename); void SaveActualDiagram(std::string filename); void SaveCurrentDiagramAs( ); //DFCH + void SaveTempActualDiagram(const std::string &);//FCY + // File menu and toolbar events void OnCreateNewTab(wxCommandEvent& event); void OnOpenDiagram(wxCommandEvent& event); + void OpenDiagram(std::string filePathName, std::string fileName); void OnSaveActualDiagram(wxCommandEvent& event); //DFCH void OnSaveAsActualDiagram(wxCommandEvent& event); //DFCH + void OnExportConsoleExecCommand(wxCommandEvent& event); //RaC void OnOpenBBS(wxCommandEvent& event); + void OpenBBS(std::string filePathName, std::string fileName); void OnSaveActualBBS(wxCommandEvent& event); void OnSaveActualComplexBox(wxCommandEvent& event); void OnExecuteActualDiagram(wxCommandEvent& event); @@ -154,9 +198,17 @@ namespace bbtk void OnAddComplexBoxOutput(wxCommandEvent& event); void OnExit(wxCommandEvent& event); void OnHelpBBeditor(wxCommandEvent& event); + void OnUndo(wxCommandEvent& event); + void OnRedo(wxCommandEvent& event); + void OnChangeName(wxCommandEvent& event); + void OnEditDiagramProperties(wxCommandEvent& event); + void OnShowTree(wxCommandEvent& event); //CFT + void OnEditComplexBoxScript(wxCommandEvent& event); + // Edit menu events - void OnCopySelectedToComplexDiagram(wxCommandEvent& event); + void OnCopySelectedToComplexDiagram(wxCommandEvent& event); + // Tool menu events void OnCreatePackage(wxCommandEvent& event); @@ -165,9 +217,31 @@ namespace bbtk void OnEditConfig(wxCommandEvent& event); void OnShowHTMLDoc(wxCommandEvent& event); void OnCreateIndex(wxCommandEvent& event); + void OpenScript(std::string filePathNameBBS ,std::string boxType); + + bool TryToOpenScriptApplication(std::string packageName ,std::string boxType); + bool TryToOpenScriptComplexBox(std::string packageName ,std::string boxType); + bool TryToOpenScript(std::string packageName ,std::string boxType,bool scriptApplication, bool scriptComplexBox); + Factory::Pointer GetBBTKFactory(); - + // RaC-2012 + void enableComplexBox(); + void disableComplexBox(); + + // Getters and Setters of current diagram properties + + void setCurrentDiagramDescription(std::string description); + void setCurrentDiagramAuthor(std::string author); + void setCurrentDiagramCategory(std::string category); + void setCurrentDiagramMessageKind(std::string kind); + void setCurrentDiagramMessageLevel(std::string level); + + std::string getCurrentDiagramDescription(); + std::string getCurrentDiagramAuthor(); + std::string getCurrentDiagramCategory(); + std::string getCurrentDiagramMessageKind(); + std::string getCurrentDiagramMessageLevel(); private: @@ -190,6 +264,12 @@ namespace bbtk std::string _actualPkgBrowserBoxName; std::string _actualPkgBrowserPkgName; + // VERY IMPORTANT FOR SAVE&LOAD PROCESSES + // RaC 2012 2nd HackFest + std::string _currentBBGversion; + + NodeTreeC tree; + wxVtkSceneManager *_sceneM; protected: