wxBlackBoxEditionDialog::wxBlackBoxEditionDialog(wxGUIEditorGraphicBBS *parent,GBlackBoxModel *model):wxDialog(parent,wxID_ANY,_T(""), wxDefaultPosition, wxSize(480, 640),wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
_model=model;
- std::string title("BlackBox Editing - Name:");
- title+=_model->getBBTKName();
- title+=" Type:";
+ std::string title("BlackBox Editing - ");
+ title+=_model->getBBTKPackage();
+ title+=":";
title+=_model->getBBTKType();
+ title+=":";
+ title+=_model->getBBTKName();
SetTitle(std2wx(title));
constructBlackBoxEditionDialog();
//=========================================================================
- wxBlackBoxEditionDialog::wxBlackBoxEditionDialog(wxGUIEditorGraphicBBS *parent,wxVtkSceneManager* scene):wxDialog(parent, wxID_ANY, _T(""), wxDefaultPosition, wxSize(300, 300))
- {
-
- }
-
- //=========================================================================
-
+
wxBlackBoxEditionDialog::~wxBlackBoxEditionDialog()
{
std::vector<GPortModel*> lstInputs = _model->getInputPorts();
wxFlexGridSizer *sizer = new wxFlexGridSizer(lstInputs.size(),3,5,5);
- for(int i = 0;i<lstInputs.size();i++)
+ for(int i = 0;i<(int)lstInputs.size();i++)
{
GPortModel* port = lstInputs[i];
- wxStaticText *lblName = new wxStaticText(this, -1, std2wx(port->getBBTKName()),wxDefaultPosition,wxSize(100,20));
- wxStaticText *lblType = new wxStaticText(this, -1, std2wx(port->getBBTKType()),wxDefaultPosition,wxSize(230,20));
+ std::string type = port->getBBTKType();
+ wxStaticText *lblName = new wxStaticText(this, -1, std2wx(port->getBBTKName()),wxDefaultPosition,wxSize(100,25));
+ wxStaticText *lblType = new wxStaticText(this, -1, std2wx(type),wxDefaultPosition,wxSize(250,25));
wxTextCtrl *txtValue = new wxTextCtrl(this, -1, _T(""),wxDefaultPosition,wxSize(90,25));
-
+
if(port->getValue()!="")
{
- txtValue->SetLabel(crea::std2wx(port->getValue()));
+ txtValue->SetValue(crea::std2wx(port->getValue()));
}
if(port->isConnected())
{
std::string connected("--Port Connected--");
- txtValue->SetLabel(crea::std2wx(connected));
+ txtValue->SetValue(crea::std2wx(connected));
txtValue->SetEditable(false);
}
- _lstNames.push_back(lblName);
- _lstTypes.push_back(lblType);
- _lstValues.push_back(txtValue);
+ char et = '*';
+ if(type.find(et)!=-1)
+ {
+ std::string noEditable("--No editable--");
+ txtValue->SetValue(crea::std2wx(noEditable));
+ txtValue->SetEditable(false);
+ }
- sizer->Add(lblName,1,wxEXPAND,5);
- sizer->Add(lblType,1,wxCENTRE|wxEXPAND,5);
+ _lstNames.push_back(lblName);
+ _lstValues.push_back(txtValue);
+ _lstTypes.push_back(lblType);
+
+ sizer->Add(lblName,1,wxEXPAND,5);
sizer->Add(txtValue,1,wxEXPAND,5);
+ sizer->Add(lblType,1,wxCENTRE|wxEXPAND,5);
+
}
wxBoxSizer *buts = new wxBoxSizer(wxHORIZONTAL);
- wxButton *okButton = new wxButton(this, 1003, _T("Ok"),wxDefaultPosition, wxSize(70, 30));
- wxButton *closeButton = new wxButton(this, 1004, _T("Close"), wxDefaultPosition, wxSize(70, 30));
+ wxButton *okButton = new wxButton(this, -1, _T("Ok"),wxDefaultPosition, wxSize(70, 30));
+ wxButton *closeButton = new wxButton(this, -1, _T("Close"), wxDefaultPosition, wxSize(70, 30));
// connect command event handlers
- Connect(1003,wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(wxBlackBoxEditionDialog::onClickOk));
- Connect(1004,wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(wxBlackBoxEditionDialog::onClickClose));
+ Connect(okButton->GetId(),wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(wxBlackBoxEditionDialog::onClickOk));
+ Connect(closeButton->GetId(),wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(wxBlackBoxEditionDialog::onClickClose));
buts->Add(okButton,0,wxCENTRE|wxEXPAND,5);
buts->Add(closeButton,0,wxCENTRE|wxEXPAND,5);
sizerDialog->Add(text,0,wxALIGN_TOP|wxALIGN_CENTER);
sizerDialog->AddSpacer(15);
sizerDialog->Add(sizer,0,wxALIGN_CENTER);
+ sizerDialog->AddSpacer(15);
sizerDialog->Add(buts,0,wxALIGN_CENTER | wxTOP | wxBOTTOM);
SetSizer(sizerDialog);
void wxBlackBoxEditionDialog::onClickOk(wxCommandEvent& event)
{
-
- for(int i=0;i<_lstValues.size();i++)
+printf("EED wxBlackBoxEditionDialog::onClickOk size %d \n", (int)_lstValues.size() );
+ for(int i=0;i<(int)_lstValues.size();i++)
{
- std::string text = wx2std(_lstValues[i]->GetLabelText());
- _model->setValueToInputPort(i,text);
+ std::string text = wx2std(_lstValues[i]->GetValue());
+printf("EED wxBlackBoxEditionDialog::onClickOk text %s \n", text.c_str() );
+ //TOFIX Search a better alternative
+ if(text!="--No editable--" && text!="--Port Connected--")
+ {
+printf("EED wxBlackBoxEditionDialog::onClickOk text %s \n", text.c_str() );
+ _model->setValueToInputPort(i,text);
+ }
}
Close(true);
void wxBlackBoxEditionDialog::onClickClose(wxCommandEvent& event)
{
+printf("EED wxBlackBoxEditionDialog::onClickClose\n");
Close(true);
}