X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FwxDiagramPropertiesEditionDialog.cxx;h=282a48bede834d97ca4998bc323bd270dcc6c9d4;hb=1806276675316c585768373b094621d270c649e2;hp=2fd33a7bb40313d07ab9f75145c8ad9d1637080c;hpb=467d5db94f473d376c62e55faae77b0981c6d908;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.cxx index 2fd33a7..282a48b 100755 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.cxx @@ -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: bbtkGEditor Module: $RCSfile$ @@ -36,13 +61,15 @@ Version: $Revision$ #include "wxDiagramPropertiesEditionDialog.h" #include "creaWx.h" + namespace bbtk { //========================================================================= - wxDiagramPropertiesEditionDialog::wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent):wxDialog(parent,wxID_ANY,_T("Diagram Properties"), wxDefaultPosition, wxSize(320, 280),wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER) + wxDiagramPropertiesEditionDialog::wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent, NodeTreeC tree):wxDialog(parent,wxID_ANY,_T("Diagram Properties"), wxDefaultPosition, wxSize(500, 650),wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER) { _parent = parent; + _tree = tree; constructDiagramPropertiesEditionDialog(); } @@ -55,6 +82,21 @@ namespace bbtk } //========================================================================= + + void wxDiagramPropertiesEditionDialog::constructBoxTree(NodeTreeC nodeTree, wxTreeItemId itemId) + { + + for(int i = 0 ; i < nodeTree.childs.size() ; i++) + { + string spc = nodeTree.childs[i].data; + const char* ccc = spc.c_str(); + wxString pc = wxString::FromUTF8 (ccc); + wxTreeItemId iId = _treeBox->AppendItem(itemId, pc, -1, -1, NULL); + constructBoxTree(nodeTree.childs[i], iId ); + } + } + + //================================================================================== void wxDiagramPropertiesEditionDialog::constructDiagramPropertiesEditionDialog() { @@ -64,6 +106,89 @@ namespace bbtk wxFlexGridSizer *fgsizer = new wxFlexGridSizer(5, 2, 9, 25); + //CFT + + wxStaticText *tree = new wxStaticText(panel, -1, wxT("Tree of Box")); + + string sp = _tree.data; + const char* cc = sp.c_str(); + wxString p = wxString::FromUTF8 (cc); + + _treeBox = new wxTreeCtrl (this, wxID_ANY, wxPoint(0,0), wxSize(320,300), wxTR_HAS_BUTTONS | wxTR_SINGLE ); + wxTreeItemId itemId = _treeBox->AddRoot(p, -1,-1,NULL); + + constructBoxTree(_tree, itemId); + _treeBox->ExpandAll(); + //_tree.treeTour(0); + //CFT END + +//CFT +//COMBOBOX OF MESSAGE +/* +Kind Level Nature +Interpreter 0 Messages of the interpreter +all 0 Minimum level for all kind of messages +change 0 Box i/o changes related messages +code 0 If positive then codes of the messages are displayed +config 0 Configuration related messages +connection 0 Connections related messages +data 0 Data related messages +debug 0 Debug messages +echo 1 Level>0 : Prints the output of the 'print' commands of the user. + Level>1 : Prints the command being interpreted +error 0 Error messages +gui 0 Graphical user interface related messages +help 1 Help messages +kernel 0 Messages generated by the core classes of the lib +max 9 Maximum level for all kind of messages +object 0 object memory related messages +output 1 Output messages +package 0 Packages related messages +process 0 Messages related to box processing +qt 0 Qt related messages +warning 1 Warning messages +widget 0 Widgets related messages +wx +*/ + _diagramMessageKind = new wxComboBox(panel, -1, wxEmptyString, wxDefaultPosition, wxSize(100,-1) ); + _diagramMessageKind->Append (wxT("Interpreter")); + _diagramMessageKind->Append (wxT("all")); + _diagramMessageKind->Append (wxT("change")); + _diagramMessageKind->Append (wxT("code")); + _diagramMessageKind->Append (wxT("config")); + _diagramMessageKind->Append (wxT("connection")); + _diagramMessageKind->Append (wxT("data")); + _diagramMessageKind->Append (wxT("debug")); + _diagramMessageKind->Append (wxT("echo")); + _diagramMessageKind->Append (wxT("error")); + _diagramMessageKind->Append (wxT("help")); + _diagramMessageKind->Append (wxT("kernel")); + _diagramMessageKind->Append (wxT("max")); + _diagramMessageKind->Append (wxT("object")); + _diagramMessageKind->Append (wxT("output")); + _diagramMessageKind->Append (wxT("package")); + _diagramMessageKind->Append (wxT("process")); + _diagramMessageKind->Append (wxT("qt")); + _diagramMessageKind->Append (wxT("warning")); + _diagramMessageKind->Append (wxT("widget")); + _diagramMessageKind->Append (wxT("wx")); + _diagramMessageKind->SetEditable(false); + + _diagramMessageLevel = new wxComboBox(panel, -1, wxEmptyString, wxDefaultPosition, wxSize(100,-1) ); + _diagramMessageLevel->Append (wxT("0")); + _diagramMessageLevel->Append (wxT("1")); + _diagramMessageLevel->Append (wxT("2")); + _diagramMessageLevel->Append (wxT("3")); + _diagramMessageLevel->Append (wxT("4")); + _diagramMessageLevel->Append (wxT("5")); + _diagramMessageLevel->Append (wxT("6")); + _diagramMessageLevel->Append (wxT("7")); + _diagramMessageLevel->Append (wxT("8")); + _diagramMessageLevel->Append (wxT("9")); + _diagramMessageLevel->SetEditable(false); + +//CFT END + // SELECTION CONSTANTS // 0 - Application // 1 - Complex box @@ -78,11 +203,15 @@ namespace bbtk int currentType = (_parent->isCurrentDiagramComplexBox()==false)? 0 : 1; _diagramType->Select(currentType); + _diagramMessageKind->Select(currentType); + _diagramMessageLevel->Select(currentType); wxStaticText *type = new wxStaticText(panel, -1, wxT("Type")); wxStaticText *author = new wxStaticText(panel, -1, wxT("Author")); - wxStaticText *category = new wxStaticText(panel, -1, wxT("Category")); + wxStaticText *category = new wxStaticText(panel, -1, wxT("Categories")); wxStaticText *description = new wxStaticText(panel, -1, wxT("Description")); + wxStaticText *messageKind = new wxStaticText(panel, -1, wxT("Message kind")); + wxStaticText *messageLevel = new wxStaticText(panel, -1, wxT("Message level")); _txtAuthor = new wxTextCtrl(panel, -1); _txtCategory = new wxTextCtrl(panel, -1); @@ -108,6 +237,14 @@ namespace bbtk fgsizer->Add(_txtCategory, 1, wxEXPAND); fgsizer->Add(description, 1, wxEXPAND); fgsizer->Add(_txtDescription, 1, wxEXPAND); +//cft + fgsizer->Add(messageKind); + fgsizer->Add(_diagramMessageKind, 1, wxEXPAND); + fgsizer->Add(messageLevel); + fgsizer->Add(_diagramMessageLevel, 1, wxEXPAND); + fgsizer->Add(tree); + fgsizer->Add(_treeBox, 1, wxEXPAND); +//cft end fgsizer->Add(okButton, 1, wxEXPAND); fgsizer->Add(closeButton, 1, wxEXPAND); @@ -131,7 +268,7 @@ namespace bbtk void wxDiagramPropertiesEditionDialog::onClickOk(wxCommandEvent& event) { - + printf("RaC wxDiagramPropertiesEditionDialog::onClickOk\n"); std::string txtAuthor = wx2std(_txtAuthor->GetValue()); std::string txtCategory = wx2std(_txtCategory->GetValue()); std::string txtDescription = wx2std(_txtDescription->GetValue()); @@ -148,6 +285,12 @@ namespace bbtk else if (selection == 1) _parent->enableComplexBox(); + + //Message + std::string kindSelected = wx2std(_diagramMessageKind->GetStringSelection()); + std::string levelSelected = wx2std(_diagramMessageLevel->GetStringSelection()); + _parent->setCurrentDiagramMessageKind(kindSelected); + _parent->setCurrentDiagramMessageLevel(levelSelected); Close(true); }