예제 #1
0
파일: libamiga.cpp 프로젝트: emoon/fs-uae
void amiga_write_config(const char *path) {
    cfgfile_save(&currprefs, path, 0);
}
예제 #2
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();
     }
   }
 }
예제 #3
0
파일: libamiga.cpp 프로젝트: emoon/fs-uae
void amiga_write_uae_config(const char *path) {
    write_log("writing uae config to %s\n", path);
    cfgfile_save(&currprefs, path, 0);
}