namespace view
{
// ----------------------------------------------------------------------------------
- ListWx::ListWx( wxWindow* parent, wxWindowID id,ItemsMap iMap , TFunctor* functor ): wxListCtrl(parent,id)
+ ListWx::ListWx( wxWindow* parent, wxWindowID id,ItemsMap iMap , TFunctor* functor ):
+ wxPanel(parent,id)
{
std::cout<< "MLER | ListWx::ListWx()" << std::endl;
this->m_itemsMap = iMap;
this->functor = functor;
- int i = 0;
+
+ wxFlexGridSizer* sizer = new wxFlexGridSizer(1);
+ sizer->Add( new wxStaticText(this,-1, _("Lista")));
+ sizer->AddGrowableCol(0);
+ this->SetSizer(sizer);
+
+ listBox = new wxListBox(this,-1);
+
+ std::cout << "is ListBox"<< listBox->GetId()<< std::endl;
+ // this->Connect( -1,wxEVT_COMMAND_CHOICE_SELECTED,
+ // (wxObjectEventFunction) (void (wxPanel::*)(wxEvent&))(&ListWx::ListEvent) );
+ this->Connect(wxEVT_COMMAND_LISTBOX_DOUBLECLICKED,
+ wxCommandEventHandler(ListWx::ListEvent));
+
for (ItemsMap::iterator it=this->m_itemsMap.begin(); it!=this->m_itemsMap.end(); ++it)
{
std::string key = it->first;
- long index = this->InsertItem(i, wxString(key.c_str(), wxConvUTF8));
- std::cout << "index" << index << std::endl;
- this->Connect( -1, wxEVT_COMMAND_LIST_ITEM_SELECTED,
- wxListEventHandler(ListWx::ListEvent) );
- i++;
+ listBox->Append( wxString(key.c_str(), wxConvUTF8));
+
}
+ sizer->Add(listBox,1,wxGROW);
+
+
}
// ----------------------------------------------------------------------------------
}
void
- ListWx::ListEvent( wxListEvent& event )
+ ListWx::ListEvent( wxCommandEvent& event )
{
try
{
std::cout<< "MLER | ListWx::ListEvent( wxListEvent& event )" << std::endl;
- wxString itemNom = event.GetItem().GetText();
+ // wxString itemNom = this->GetString(this->GetSelection());
+
+ // std::string itemNomC = std::string(itemNom.mb_str());
+
+ //this->functor->Call(itemNomC);
+
+ int iSelection;
+ iSelection = listBox->GetSelection();
+ wxString itemNom = listBox->GetString(iSelection);
std::string itemNomC = std::string(itemNom.mb_str());
this->functor->Call(itemNomC);