X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FcreaPanelButtonContainer%2FcreaPanelButtonContainer.cxx;h=f65c76cbc11bba7c7cdd4ac5a6c174894c2f509c;hb=412ca8c0300bc76e1a5e50a6de58840efc0d71b1;hp=d377773c6c77f6d61bb9dfaae82ee6218b21ac89;hpb=ff116b1d805145619b44879358f1fa8521ef5569;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.cxx index d377773..f65c76c 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.cxx @@ -36,6 +36,8 @@ namespace creaPanelButtonContainer { BEGIN_EVENT_TABLE(PanelButtonContainer,wxPanel) + //EVT_LIST_ITEM_SELECTED(-1, ListWx::ListEvent) + //(*EventTable(ButtonContainerPanel) //*) END_EVENT_TABLE() @@ -45,7 +47,7 @@ namespace creaPanelButtonContainer PanelButtonContainer::PanelButtonContainer( wxWindow* parent, ButtonContainerSettings* bcSettings, int type ) : wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE, _T("creaPanelButtonContainer") ) { - std::cout<< std::endl << " MLER creaPanelButtonContainer.cxx / PanelButtonContainer() " << std::endl; + std::cout<< "MLER | creaPanelButtonContainer:: PanelButtonContainer() " << std::endl; this->m_ButtonContainerSettings = bcSettings; this->m_ButtonPanel = new wxPanel( this ); @@ -56,25 +58,36 @@ namespace creaPanelButtonContainer // TConcreteFunctor* functor = new TConcreteFunctor( this->m_ButtonPanel, &PanelButtonContainer::GenericButtonEvent ); //end of the event definition + TConcreteFunctor* lFunctor = new TConcreteFunctor( this, &PanelButtonContainer::GenericListEvent ); + //MLER - wxPanel* listPanel = new wxPanel(this); + this->m_ListPanel = new wxPanel(this); if(type == 0) + { + std::cout << "tipo 0; new ButtonContainerPanel"<m_ButtonContainerPanel = new ButtonContainerPanel( this, this->m_ButtonContainerSettings->GetButtonGroupSettings( functor ),type ); - else if( type == 1) - this->mylist = new ListWx(listPanel, -1, this->m_ButtonContainerSettings->GetItemsMap(), functor); - //MLER + } +// else if( type == 1) +// { +// std::cout << "tipo 1; new LIstWx"<mylist = new ListWx(this->m_ListPanel, -1,this->m_ButtonContainerSettings->GetItemsMap(), lFunctor); +// }//MLER //Using AuiManager to Manage the Panels this->m_AuiManager = new wxAuiManager( this, wxAUI_MGR_DEFAULT ); - this->m_AuiManager->AddPane(this->m_ButtonPanel, wxAuiPaneInfo( ).Name( _T("ButtonPanel") ).Caption( _("Panel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); + if(type == 0) + this->m_AuiManager->AddPane(this->m_ButtonContainerPanel, wxAuiPaneInfo( ).Name( _T("ButtonPanel") ).Caption( _("Panel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); + else if(type == 1) + this->m_AuiManager->AddPane(this->m_ListPanel, wxAuiPaneInfo( ).Name( _T("ListPanel") ).Caption( _("Panel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); + //CartoButtonPanel Management if(type == 0) - this->m_AuiManager->AddPane( this->m_ButtonContainerPanel,wxAuiPaneInfo( ).Name( _T("creaButtonContainer") ).Caption(_("creaButtonContainer") ). CaptionVisible( false ).CloseButton(false ).Center( ).Resizable( true ) ); - else - this->m_AuiManager->AddPane( listPanel,wxAuiPaneInfo( ).Name( _T("creaButtonContainer") ).Caption(_("creaButtonContainer") ). CaptionVisible( false ).CloseButton(false ).Center( ).Resizable( true ) ); + this->m_AuiManager->AddPane( this->m_ButtonContainerPanel,wxAuiPaneInfo( ).Name( _T("ButtonPanel") ).Caption(_("ListPanel") ). CaptionVisible( false ).CloseButton(false ).Center( ).Resizable( true ) ); + else if(type ==1) + {this->m_AuiManager->AddPane( this->m_ListPanel,wxAuiPaneInfo( ).Name( _T("ListPanel") ).Caption(_("ListPanel") ). CaptionVisible( false ).CloseButton(false ).Center( ).Resizable( true ) );} this->m_AuiManager->Update( ); } // ---------------------------------------------------------------------------------- @@ -87,16 +100,19 @@ namespace creaPanelButtonContainer { try { + std::cout<< "MLER | creaPanelButtonContainer:: UpdatePanel() " << std::endl; + //Hiding the last CartoSettingsPanel this->m_ButtonPanel->Show( false ); //Finding the CartoSettingsPanel of the ButtonClicket this->m_ButtonPanel = this->m_ButtonContainerSettings->GetPanelButton(buttonName ); + std::cout<< buttonName << "---testEvento 2 "<m_ButtonPanel->GetParent( ) != this ) { this->m_ButtonPanel->Reparent( this ); }//fi - //CartoSettingsPanel Management + //Panel Management this->m_AuiManager->GetPane( _T("ButtonPanel") ).window = this->m_ButtonPanel; //Updating the manager this->m_AuiManager->Update( ); @@ -114,9 +130,53 @@ namespace creaPanelButtonContainer void PanelButtonContainer::GenericButtonEvent( const std::string &buttonName ) { + std::cout<< "MLER | creaPanelButtonContainer:: GenericButtonEvent() " << std::endl; + std::cout<< buttonName << "---testEvento 1 "<UpdatePanel( buttonName ); } // ---------------------------------------------------------------------------------- + +/* + void + PanelButtonContainer::UpdateListPanel( const std::string &buttonName ) + { + try{ + + std::cout<< "MLER | creaPanelButtonContainer:: UpdateListPanel() " << std::endl; + std::cout<< buttonName << " --- test 2 "<m_ListPanel->Show( false ); + + this->m_ListPanel = this->m_ButtonContainerSettings->GetPanelList(buttonName ); + + if ( this->m_ListPanel->GetParent( ) != this ) + { + this->m_ListPanel->Reparent( this ); + }//fi + //Panel Management + this->m_AuiManager->GetPane( _T("ListPanel") ).window = this->m_ListPanel; + //Updating the manager + this->m_AuiManager->Update( ); + + }catch( const std::exception& e ) + { + std::cerr + << "PanelButtonContainer::UpdatePanel( const std::string &buttonName )" + << "exception: " << e.what( ) << std::endl; + std::cout << "Maybe the panel of the list is NULL" << std::endl; + exit( 1 ); + }//hctac + } +*/ + void + PanelButtonContainer::GenericListEvent( const std::string &buttonName ) + { + std::cout<< "MLER | creaPanelButtonContainer:: GenericListEvent() " << std::endl; + std::cout<< buttonName << " --- test 3 "<UpdateListPanel( buttonName ); + } + + }//ecapseman