Don't lose the filename when changing extension.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1583 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
		
							parent
							
								
									715ddad331
								
							
						
					
					
						commit
						7efbe04c6a
					
				@ -77,6 +77,7 @@
 | 
				
			|||||||
// Returns 0 if all ok, something else if failed
 | 
					// Returns 0 if all ok, something else if failed
 | 
				
			||||||
byte Native_filesel(byte load)
 | 
					byte Native_filesel(byte load)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						load = load;
 | 
				
			||||||
#ifdef __WIN32__
 | 
					#ifdef __WIN32__
 | 
				
			||||||
  OPENFILENAME ofn;
 | 
					  OPENFILENAME ofn;
 | 
				
			||||||
  char szFileName[MAX_PATH] = "";
 | 
					  char szFileName[MAX_PATH] = "";
 | 
				
			||||||
@ -1419,23 +1420,37 @@ byte Button_Load_or_Save(byte load, T_IO_Context *context)
 | 
				
			|||||||
        *quicksearch_filename=0;
 | 
					        *quicksearch_filename=0;
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      case  6 : // Scroller des formats
 | 
						  case  6 : // Scroller des formats
 | 
				
			||||||
        Hide_cursor();
 | 
							// On met à jour le format de browsing du fileselect:
 | 
				
			||||||
        // On met à jour le format de browsing du fileselect:
 | 
							if (Main_format != Window_attribute2) {
 | 
				
			||||||
        Main_format=Window_attribute2;
 | 
								char* savename = strdup(Selector_filename);
 | 
				
			||||||
        // Comme on change de liste, on se place en début de liste:
 | 
								int nameLength = strlen(savename);
 | 
				
			||||||
        Main_fileselector_position=0;
 | 
								DEBUG(Selector_filename, 42);
 | 
				
			||||||
        Main_fileselector_offset=0;
 | 
								Main_format = Window_attribute2;
 | 
				
			||||||
        // Affichage des premiers fichiers visibles:
 | 
								// Comme on change de liste, on se place en début de liste:
 | 
				
			||||||
        Reload_list_of_files(Main_format,file_scroller);
 | 
								Main_fileselector_position = 0;
 | 
				
			||||||
        Display_cursor();
 | 
								Main_fileselector_offset = 0;
 | 
				
			||||||
        New_preview_is_needed=1;
 | 
								// Affichage des premiers fichiers visibles:
 | 
				
			||||||
        *quicksearch_filename=0;
 | 
								Hide_cursor();
 | 
				
			||||||
 | 
								Reload_list_of_files(Main_format, file_scroller);
 | 
				
			||||||
 | 
								New_preview_is_needed = 1;
 | 
				
			||||||
 | 
								*quicksearch_filename = 0;
 | 
				
			||||||
 | 
								strcpy(Selector_filename, savename);
 | 
				
			||||||
 | 
								if (Get_fileformat(Main_format)->Default_extension[0] != '\0' &&
 | 
				
			||||||
 | 
									Selector_filename[nameLength - 4] == '.')
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									strcpy(Selector_filename + nameLength - 3,
 | 
				
			||||||
 | 
										Get_fileformat(Main_format)->Default_extension);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								free(savename);
 | 
				
			||||||
 | 
								Print_filename_in_fileselector();
 | 
				
			||||||
 | 
					        	Display_cursor();
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      case  7 : // Saisie d'un commentaire pour la sauvegarde
 | 
					      case  7 : // Saisie d'un commentaire pour la sauvegarde
 | 
				
			||||||
        if ( (!load) && (Get_fileformat(Main_format)->Comment) )
 | 
					        if ( (!load) && (Get_fileformat(Main_format)->Comment) )
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
          Readline(45,70,context->Comment,32,INPUT_TYPE_STRING);
 | 
					          Readline(45, 70, context->Comment, 32, INPUT_TYPE_STRING);
 | 
				
			||||||
          Display_cursor();
 | 
					          Display_cursor();
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
@ -1458,7 +1473,7 @@ byte Button_Load_or_Save(byte load, T_IO_Context *context)
 | 
				
			|||||||
              if(!Directory_exists(Selector_filename))
 | 
					              if(!Directory_exists(Selector_filename))
 | 
				
			||||||
              {
 | 
					              {
 | 
				
			||||||
                 strcat(Selector_filename, ".");
 | 
					                 strcat(Selector_filename, ".");
 | 
				
			||||||
                 strcat(Selector_filename,Get_fileformat(Main_format)->Default_extension);
 | 
					                strcat(Selector_filename, Get_fileformat(Main_format)->Default_extension);
 | 
				
			||||||
              }
 | 
					              }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user