Esempio n. 1
0
/**
 * @brief Renames all the currently selected systems.
 */
static void uniedit_renameSys (void)
{
   int i, j;
   char *name, *oldName, *newName;
   StarSystem *sys;

   for (i=0; i<uniedit_nsys; i++) {
      sys = uniedit_sys[i];

      /* Get name. */
      name = dialogue_input( "Rename Star System", 1, 32, "What do you want to rename \er%s\e0?", sys->name );

      /* Keep current name. */
      if (name == NULL)
         continue;

      /* Try again. */
      if (uniedit_checkName( name )) {
         free(name);
         i--;
         continue;
      }

      /* Change the name. */
      oldName = malloc((14+strlen(sys->name)));
      nsnprintf(oldName,14+strlen(sys->name),"dat/ssys/%s.xml", uniedit_nameFilter(sys->name) );
      newName = malloc(14+strlen(name));
      nsnprintf(newName,14+strlen(name),"dat/ssys/%s.xml", uniedit_nameFilter(name) );
      nfile_rename(oldName,newName);
      free(oldName);
      free(newName);
      free(sys->name);
      sys->name = name;
      if (conf.devautosave) {
         dsys_saveSystem(sys);

         /* Re-save adjacent systems. */
         for (j=0; j<sys->njumps; j++)
            dsys_saveSystem( sys->jumps[j].target );
      }
   }
}
Esempio n. 2
0
/**
 * @brief Renames all the currently selected systems.
 */
static void uniedit_renameSys (void)
{
   int i;
   char *name, *oldName, *newName;
   StarSystem *sys;

   for (i=0; i<uniedit_nsys; i++) {
      sys = uniedit_sys[i];

      /* Get name. */
      name = dialogue_input( "Rename Star System", 1, 32, "What do you want to rename \er%s\e0?", sys->name );

      /* Keep current name. */
      if (name == NULL)
         continue;

      /* Try again. */
      if (uniedit_checkName( name )) {
         free(name);
         i--;
         continue;
      }

      /* Change the name. */
      oldName = malloc((16+strlen(sys->name))*sizeof(char));
      nsnprintf(oldName,15+strlen(sys->name),"dat/ssys/%s.xml",sys->name);
      newName = malloc((16+strlen(name))*sizeof(char));
      nsnprintf(newName,15+strlen(name),"dat/ssys/%s.xml",name);
      nfile_rename(oldName,newName);
      free(oldName);
      free(newName);
      free(sys->name);
      sys->name = name;
      dsys_saveSystem(sys);
   }
}