void MacroCommand::load() { ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Macro"); if (hGrp->HasGroup("Macros")) { hGrp = hGrp->GetGroup("Macros"); std::vector<Base::Reference<ParameterGrp> > macros = hGrp->GetGroups(); for (std::vector<Base::Reference<ParameterGrp> >::iterator it = macros.begin(); it!=macros.end(); ++it ) { MacroCommand* macro = new MacroCommand((*it)->GetGroupName()); macro->setScriptName ( (*it)->GetASCII( "Script" ).c_str() ); macro->setMenuText ( (*it)->GetASCII( "Menu" ).c_str() ); macro->setToolTipText ( (*it)->GetASCII( "Tooltip" ).c_str() ); macro->setWhatsThis ( (*it)->GetASCII( "WhatsThis" ).c_str() ); macro->setStatusTip ( (*it)->GetASCII( "Statustip" ).c_str() ); if ((*it)->GetASCII("Pixmap", "nix") != "nix") macro->setPixmap ( (*it)->GetASCII( "Pixmap" ).c_str() ); macro->setAccel ( (*it)->GetASCII( "Accel",0 ).c_str() ); Application::Instance->commandManager().addCommand( macro ); } } }