]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.cxx
creaButtonContainer & creaPanelButtonContainer: Deep errors have been solved!! ready...
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / creaPanelButtonContainer / creaPanelButtonContainer.cxx
index 133a214ddbd67baad7e14875ea08dd0500ccce8f..a9318da37b1040c04fd24a6a64e9d923d9c86329 100644 (file)
@@ -20,19 +20,24 @@ namespace creaPanelButtonContainer
        {
                this->m_ButtonContainerSettings = bcSettings;
                this->m_ButtonPanel = new wxPanel( this );
+
                //Class that manages the cartobutton event!!!
                TConcreteFunctor* functor = new TConcreteFunctor( this,
                    &PanelButtonContainer::GenericButtonEvent );
                //end of the event definition
+
                this->m_ButtonContainerPanel = new ButtonContainerPanel( this,
                    this->m_ButtonContainerSettings->GetButtonGroupSettings( functor ) );
+
                //Using AuiManager to Manage the Panels
                this->m_AuiManager = new wxAuiManager( this, wxAUI_MGR_DEFAULT );
+
                // CartoSettingsPanel Management
                this->m_AuiManager->AddPane(
                    this->m_ButtonPanel,
                    wxAuiPaneInfo( ).Name( _T("ButtonPanel") ).Caption( _("Panel") ). CaptionVisible( ).CloseButton(
                        false ).Left( ).MinSize( wxSize( 300, 300 ) ) );
+
                //CartoButtonPanel Management
                this->m_AuiManager->AddPane(
                    this->m_ButtonContainerPanel,
@@ -40,7 +45,6 @@ namespace creaPanelButtonContainer
                        _("creaButtonContainer") ). CaptionVisible( ).CloseButton( false ).Left( ) .MinSize(
                        wxSize( 300, 300 ) ) );
                this->m_AuiManager->Update( );
-               //this->createGimmick();
        }
        // ----------------------------------------------------------------------------------
        PanelButtonContainer::~PanelButtonContainer( )
@@ -50,16 +54,27 @@ namespace creaPanelButtonContainer
        void
        PanelButtonContainer::UpdatePanel( const std::string &buttonName )
        {
-               //Hiding the last CartoSettingsPanel
-               this->m_ButtonPanel->Show( false );
-               //Finding the CartoSettingsPanel of the ButtonClicket
-               this->m_ButtonPanel = this->m_ButtonContainerSettings->GetPanelButton(
-                   buttonName );
-               //CartoSettingsPanel Management
-               this->m_AuiManager->GetPane( _T("ButtonPanel") ).window
-                   = this->m_ButtonPanel;
-               //Updating the manager
-               this->m_AuiManager->Update( );
+               try
+               {
+                       //Hiding the last CartoSettingsPanel
+                       this->m_ButtonPanel->Show( false );
+                       //Finding the CartoSettingsPanel of the ButtonClicket
+                       this->m_ButtonPanel = this->m_ButtonContainerSettings->GetPanelButton(
+                           buttonName );
+                       //CartoSettingsPanel Management
+                       this->m_AuiManager->GetPane( _T("ButtonPanel") ).window
+                           = this->m_ButtonPanel;
+                       //Updating the manager
+                       this->m_AuiManager->Update( );
+               }//yrt
+               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 button is NULL"<<std::endl;
+                       exit(1);
+               }//hctac
        }
        // ----------------------------------------------------------------------------------
        void