void amiga_write_config(const char *path) { cfgfile_save(&currprefs, path, 0); }
void action(const gcn::ActionEvent& actionEvent) { int i; if (actionEvent.getSource() == cmdLoad) { //----------------------------------------------- // Load selected configuration //----------------------------------------------- i = lstConfigs->getSelected(); if(ConfigFilesList[i]->BuildInID != BUILDINID_NONE) { load_buildin_config(ConfigFilesList[i]->BuildInID); strcpy(changed_prefs.description, ConfigFilesList[i]->Description); } else { target_cfgfile_load(&changed_prefs, ConfigFilesList[i]->FullPath, 0, 0); } strncpy(last_active_config, ConfigFilesList[i]->Name, MAX_PATH); DisableResume(); RefreshAllPanels(); } else if(actionEvent.getSource() == cmdSave) { //----------------------------------------------- // Save current configuration //----------------------------------------------- char filename[MAX_DPATH]; if(!txtName->getText().empty()) { fetch_configurationpath(filename, MAX_DPATH); strncat(filename, txtName->getText().c_str(), MAX_DPATH); strncat(filename, ".uae", MAX_DPATH); strncpy(changed_prefs.description, txtDesc->getText().c_str(), 256); if(cfgfile_save(&changed_prefs, filename, 0)) RefreshPanelConfig(); } } else if(actionEvent.getSource() == cmdLoadFrom) { } else if(actionEvent.getSource() == cmdSaveAs) { } else if(actionEvent.getSource() == cmdDelete) { //----------------------------------------------- // Delete selected config //----------------------------------------------- char msg[256]; i = lstConfigs->getSelected(); if(i >= 0 && ConfigFilesList[i]->BuildInID == BUILDINID_NONE && strcmp(ConfigFilesList[i]->Name, OPTIONSFILENAME)) { snprintf(msg, 256, "Do you want to delete '%s' ?", ConfigFilesList[i]->Name); if(ShowMessage("Delete Configuration", msg, "", "Yes", "No")) { remove(ConfigFilesList[i]->FullPath); if(!strcmp(last_active_config, ConfigFilesList[i]->Name)) { txtName->setText(""); txtDesc->setText(""); last_active_config[0] = '\0'; } ConfigFilesList.erase(ConfigFilesList.begin() + i); RefreshPanelConfig(); } cmdDelete->requestFocus(); } } }
void amiga_write_uae_config(const char *path) { write_log("writing uae config to %s\n", path); cfgfile_save(&currprefs, path, 0); }