-/*
-# ---------------------------------------------------------------------
-#
-# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
-# pour la Sant�)
-# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
-# Previous Authors : Laurent Guigues, Jean-Pierre Roux
-# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
-#
-# 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.
-# ------------------------------------------------------------------------
-*/
-
-
-/*
- * ControlCreaDevManagerProject.cpp
- *
- * Created on: 5/11/2012
- * Author: Daniel Felipe Gonzalez Obando
- */
-
-#include "ControlCreaDevManagerProject.h"
-
-#include <creaWx.h>
-#include <wx/dirdlg.h>
-#include <stdlib.h> // for getenv
-
-ControlCreaDevManagerProject::ControlCreaDevManagerProject()
-{
- // TODO Auto-generated constructor stub
-
-}
-
-ControlCreaDevManagerProject::~ControlCreaDevManagerProject()
-{
- // TODO Auto-generated destructor stub
-}
-
-bool ControlCreaDevManagerProject::CreateProject(const std::string& name, const std::string& dir, const std::string& author, const std::string& description)
-{
- // ------ Windows
-#if(_WIN32)
-
- std::string command("creaNewProject.bat ");
- std::string command1("creaSed.exe ");
- std::string command2("del ");
-
- command += "\"" + dir + "\" \"" + name + "\"";
- command1 += "\"" + dir+"\\"+name+"\\CMakeLists.txt.in\" " + "NameOfTheProject " + name + "> \"" + dir + "\\" + name + "\\CMakeLists.txt\"";
- command2 += "\"" + dir+"\\"+name+"\\CMakeLists.txt.in\"";
- if ( ! system ( command.c_str() ) )
- {
- system ( command1.c_str() );
- system ( command2.c_str() );
-
- // Create a Package at the same time. JPR
- char *author = author.c_str();
- std::string nomDirectory = dir + "\\" + name;
- std::string nomPackageDirectory = nomDirectory + "\\" + "bbtk_" + name + "_PKG";
- std::string bbCreatePackage("bbCreatePackage ");
- bbCreatePackage += nomDirectory + " " + name + " " + author + " " + description;
- system (bbCreatePackage.c_str());
- std::string add;
- add = "echo ADD_SUBDIRECTORY(bbtk_" + name + "_PKG) >> " + nomDirectory + "/CMakeLists.txt";
- system(add.c_str());
-
- wxMessageBox(_T("New Project created !"),_T("creaNewProject"), wxOK | wxICON_INFORMATION);
- }
- else
- {
- wxString err(_T("An error occured while running '"));
- err += crea::std2wx(command) + _T("'");
- wxMessageBox(err,_T("creaNewProject"),wxOK | wxICON_ERROR);
- return false;
- }
-
-#else
- // ------ LINUX / MacOS
- std::string command("creaNewProject.sh ");
- command += "\"" + dir + "\"" +" " + name;
- std::cout << "executing " << command << std::endl;
- if ( ! system ( command.c_str() ) )
- {
- //wxMessageBox(_T("New Project created !"),_T("creaNewProject"), wxOK | wxICON_INFORMATION);
-
- std::string nomDirectory = dir + "/" + name;
- std::string nomPackageDirectory = nomDirectory + "/" + "bbtk_" + name + "_PKG";
-
- std::string bbCreatePackage("bbCreatePackage ");
- bbCreatePackage += nomDirectory + " " + name + " " + author + " " + description;
- std::cout << "executing " << bbCreatePackage << std::endl;
- system (bbCreatePackage.c_str());
-
- std::string add;
- add = "echo 'ADD_SUBDIRECTORY(bbtk_" + name + "_PKG)' >> " + nomDirectory + "/CMakeLists.txt";
- //std::cout << add << std::endl;
- std::cout << "executing " << add << std::endl;
- system(add.c_str());
-
- }
- else
- {
- wxString err(_T("An error occured while running '"));
- err += crea::std2wx(command) + _T("'");
- wxMessageBox(err,_T("creaNewProject"),wxOK | wxICON_ERROR);
- return false;
- }
-
-#endif
-
- return true;
-}