]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h
Feature #1771 Add licence terms for all files.
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsWxGUIEditorGraphic / bbtkwxGUIEditorGraphicBBS.h
index 3a4df85f8ef3e05efa48c18994b4b38564296da6..3fb1cca8cc1359ec352908ecd5b3b6b8aded4bd0 100644 (file)
@@ -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$
 //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,9 @@
 #include "wxart_complexbox.xpm"
 #include "wxart_complexinputport.xpm"
 #include "wxart_complexoutputport.xpm"
+#include "wxart_undo.xpm"
+#include "wxart_redo.xpm"
+#include "wxart_editProperties.xpm"
 
 //Includes creaMaracasVisu
 
@@ -68,6 +98,7 @@
 #include <bbtkWxGUIPackageBrowser2.h>
 #include <bbtkWxGUIHtmlBrowser.h>
 #include <bbtkBlackBoxDescriptor.h>
+#include <bbtkUtilities.h>
 #include <bbtkConfigurationFile.h>
 #include <bbtkSystemTools.h>
 
@@ -120,6 +151,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 +170,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 +195,16 @@ 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 OnEditComplexBoxScript(wxCommandEvent& event);
 
+               
                        // Edit menu events
-                       void OnCopySelectedToComplexDiagram(wxCommandEvent& event);
+                       void OnCopySelectedToComplexDiagram(wxCommandEvent& event);                   
+                       
 
                        // Tool menu events
                        void OnCreatePackage(wxCommandEvent& event);
@@ -165,8 +213,27 @@ 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);
+
+                       std::string getCurrentDiagramDescription();
+                       std::string getCurrentDiagramAuthor();
+                       std::string getCurrentDiagramCategory();
                
                
                private:
@@ -190,6 +257,10 @@ namespace bbtk
                        std::string                         _actualPkgBrowserBoxName;
                        std::string                         _actualPkgBrowserPkgName;
 
+                       // VERY IMPORTANT FOR SAVE&LOAD PROCESSES
+                       // RaC 2012 2nd HackFest
+                       std::string                                             _currentBBGversion;
+
                protected: