wxPanel* BBPanel = new wxPanel(this);
wxBoxSizer* BBPanelSizer = new wxBoxSizer(wxVERTICAL);
- std::vector<modelCDMBlackBox*> blackBoxes = this->package->GetBlackBoxes();
+
+ std::vector<modelCDMBlackBox*> blackBoxes = this->package->GetSrc()->GetBlackBoxes();
for (int i = 0; i < blackBoxes.size(); i++)
{
- wxHyperlinkCtrl* pBBlk = new wxHyperlinkCtrl(BBPanel,ID_LINK_SELECT_BLACKBOX, crea::std2wx(blackBoxes[i]->GetName().c_str()), crea::std2wx(blackBoxes[i]->GetName().c_str()));
- std::string tt = "Author: " + blackBoxes[i]->GetAuthors() + "\nDescription: " + blackBoxes[i]->GetDescription() + "\nCategories: " + blackBoxes[i]->GetCategories();
- pBBlk->SetToolTip(crea::std2wx(tt));
- pBBlk->Connect(wxEVT_ENTER_WINDOW, (wxObjectEventFunction)(wxEventFunction)(wxMouseEventFunction)&wxCDMPackageDescriptionPanel::OnMouseEnter,NULL,this);
- pBBlk->Connect(wxEVT_LEAVE_WINDOW, (wxObjectEventFunction)(wxEventFunction)(wxMouseEventFunction)&wxCDMPackageDescriptionPanel::OnMouseExit,NULL,this);
- BBPanelSizer -> Add(pBBlk, 0, wxALIGN_LEFT | wxALL, 5);
+
+ if(blackBoxes[i] != NULL)
+ {
+
+ wxHyperlinkCtrl* pBBlk = new wxHyperlinkCtrl(BBPanel,ID_LINK_SELECT_BLACKBOX, crea::std2wx(blackBoxes[i]->GetName().c_str()), crea::std2wx(blackBoxes[i]->GetName().c_str()));
+ std::string tt = "Author: " + blackBoxes[i]->GetAuthors() + "\nDescription: " + blackBoxes[i]->GetDescription() + "\nCategories: " + blackBoxes[i]->GetCategories();
+ pBBlk->SetToolTip(crea::std2wx(tt));
+ pBBlk->Connect(wxEVT_ENTER_WINDOW, (wxObjectEventFunction)(wxEventFunction)(wxMouseEventFunction)&wxCDMPackageDescriptionPanel::OnMouseEnter,NULL,this);
+ pBBlk->Connect(wxEVT_LEAVE_WINDOW, (wxObjectEventFunction)(wxEventFunction)(wxMouseEventFunction)&wxCDMPackageDescriptionPanel::OnMouseExit,NULL,this);
+ BBPanelSizer -> Add(pBBlk, 0, wxALIGN_LEFT | wxALL, 5);
+ }
}
BBPanel->SetSizer(BBPanelSizer);
void wxCDMPackageDescriptionPanel::OnBtnSetDescription(wxCommandEvent& event)
{
- //get author from user
+ //get description from user
wxTextEntryDialog* descDlg = new wxTextEntryDialog(
this,
wxT("Edit the package description."),
if (descDlg->ShowModal() == wxID_OK)
{
std::string descriptionStr = crea::wx2std(descDlg->GetValue());
- //check name
+ //check desc
if(descriptionStr.size() > 0)
{
std::string* result;
void wxCDMPackageDescriptionPanel::OnLnkBlackBoxSelect(wxHyperlinkEvent& event)
{
int bbId = 0;
- std::vector<modelCDMBlackBox*> bbs = this->package->GetBlackBoxes();
+ modelCDMBlackBox* bb;
+ std::vector<modelCDMBlackBox*> bbs = this->package->GetSrc()->GetBlackBoxes();
for (int i = 0; i < bbs.size(); i++)
{
if(bbs[i]->GetName() == crea::wx2std(event.GetURL()))
{
- bbId = bbs[i]->GetId();
+ bbId = bbs[i]->GetHeaderFile()->GetId();
+ bb = bbs[i];
break;
}
}
wxCommandEvent* newEvent = new wxCommandEvent(wxEVT_DISPLAY_CHANGED);
- newEvent->SetInt(bbId);
- newEvent->SetId(0);
+ newEvent->SetClientData(bb);
+ newEvent->SetId(1);
+ newEvent->SetString(wxT("blackbox"));
wxPostEvent(this->GetParent(), *newEvent);
wxCommandEvent* newEvent1 = new wxCommandEvent(wxEVT_COMMAND_LIST_ITEM_DESELECTED);
{
wxCommandEvent* newEvent = new wxCommandEvent(wxEVT_COMMAND_LIST_ITEM_SELECTED);
std::string BBName = crea::wx2std(((wxHyperlinkCtrl*)event.GetEventObject())->GetURL());
+
int bbId = 0;
- std::vector<modelCDMBlackBox*> boxes = this->package->GetBlackBoxes();
+ std::vector<modelCDMBlackBox*> boxes = this->package->GetSrc()->GetBlackBoxes();
for (int i = 0; i < boxes.size(); i++)
{
if(boxes[i]->GetName() == BBName)
{
- bbId = boxes[i]->GetId();
+ bbId = boxes[i]->GetHeaderFile()->GetId();
break;
}
}
wxCommandEvent* newEvent = new wxCommandEvent(wxEVT_COMMAND_LIST_ITEM_DESELECTED);
std::string BBName = crea::wx2std(((wxHyperlinkCtrl*)event.GetEventObject())->GetURL());
int bbId = 0;
- std::vector<modelCDMBlackBox*> boxes = this->package->GetBlackBoxes();
+ std::vector<modelCDMBlackBox*> boxes = this->package->GetSrc()->GetBlackBoxes();
for (int i = 0; i < boxes.size(); i++)
{
if(boxes[i]->GetName() == BBName)
{
- bbId = boxes[i]->GetId();
+ bbId = boxes[i]->GetHeaderFile()->GetId();
break;
}
}