void
        ButtonContainerSettings::AddButton( const std::string & groupName,
-           const std::string buttonName, const std::string iconpath,
-           const std::string buttonDescription, PanelButton panel )
+           const std::string &buttonName, const std::string &iconpath,
+           const std::string &buttonDescription, PanelButton panel )
        {
                //builds the button information
+               panel->Show( false );
                ButtonPair* pair = new ButtonPair( new ButtonInfo( buttonName, iconpath ),
                    new ActionButton( buttonDescription, panel ) );
-               panel->Show( false );
                this->m_ButtonGroupContainer[ groupName ].push_back( pair );
        }
+
+       void
+       ButtonContainerSettings::AddButton( const BCSettingsStruct &info )
+       {
+               //builds the button information
+               info.panel->Show( false );
+               ButtonPair* pair = new ButtonPair(
+                   new ButtonInfo( info.buttonName, info.iconpath ),
+                   new ActionButton( info.buttonDescription, info.panel ) );
+               this->m_ButtonGroupContainer[ info.groupName ].push_back( pair );
+       }
 }//ecapseman
 
 
 #include <map>
 #include <wx/panel.h>
 
+#include "structButtonContainerSettings.h"
 #include "containerSettings.h"
 #include "functor.h"
 
                        void
                        SetGroupNameList( KeyMapList m_GroupNameList );
                        void
-                       AddButton( const std::string & groupName, const std::string buttonName,
-                           const std::string iconpath, const std::string buttonDescription,
+                       AddButton( const std::string &groupName, const std::string &buttonName,
+                           const std::string &iconpath, const std::string &buttonDescription,
                            PanelButton panel );
+                       void
+                       AddButton( const BCSettingsStruct &info );
 
                private:
                        ButtonGroupMap m_ButtonGroupContainer;