More work on endianness,
fixed the save/load box to display names in 8+3 format, files can now be loaded in command-line. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@142 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
		
							parent
							
								
									0eaba7e952
								
							
						
					
					
						commit
						37ca8d13aa
					
				
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							@ -3,7 +3,7 @@ ifdef COMSPEC
 | 
				
			|||||||
DELCOMMAND = del
 | 
					DELCOMMAND = del
 | 
				
			||||||
BIN = grafx2.exe
 | 
					BIN = grafx2.exe
 | 
				
			||||||
COPT = -Wall -O -g -ggdb -Dmain=SDL_main $(SCREEN)
 | 
					COPT = -Wall -O -g -ggdb -Dmain=SDL_main $(SCREEN)
 | 
				
			||||||
LOPT = -mwindows -lmingw32 -lSDLmain -lSDL
 | 
					LOPT = -mwindows -lmingw32 -lSDLmain -lSDL -lshlwapi
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
# Linux specific
 | 
					# Linux specific
 | 
				
			||||||
DELCOMMAND = rm -rf
 | 
					DELCOMMAND = rm -rf
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										14
									
								
								files.c
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								files.c
									
									
									
									
									
								
							@ -121,6 +121,7 @@ char * Nom_formate(char * Nom)
 | 
				
			|||||||
  static char Resultat[13];
 | 
					  static char Resultat[13];
 | 
				
			||||||
  int         Curseur;
 | 
					  int         Curseur;
 | 
				
			||||||
  int         Autre_curseur;
 | 
					  int         Autre_curseur;
 | 
				
			||||||
 | 
					  int         Pos_DernierPoint;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (strcmp(Nom,"..")==0)
 | 
					  if (strcmp(Nom,"..")==0)
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -131,12 +132,19 @@ char * Nom_formate(char * Nom)
 | 
				
			|||||||
    strcpy(Resultat,"        .   ");
 | 
					    strcpy(Resultat,"        .   ");
 | 
				
			||||||
    // On commence par recopier la partie pr‚c‚dent le point:
 | 
					    // On commence par recopier la partie pr‚c‚dent le point:
 | 
				
			||||||
    for (Curseur=0;( (Nom[Curseur]!='.') && (Nom[Curseur]!='\0') );Curseur++)
 | 
					    for (Curseur=0;( (Nom[Curseur]!='.') && (Nom[Curseur]!='\0') );Curseur++)
 | 
				
			||||||
      Resultat[Curseur]=Nom[Curseur];
 | 
					    {
 | 
				
			||||||
 | 
					      if (Curseur < 8)
 | 
				
			||||||
 | 
					        Resultat[Curseur]=Nom[Curseur];
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    // On recherche le dernier point dans le reste du nom
 | 
				
			||||||
 | 
					    for (Pos_DernierPoint = Curseur; Nom[Curseur]!='\0'; Curseur++)
 | 
				
			||||||
 | 
					      if (Nom[Curseur]=='.')
 | 
				
			||||||
 | 
					        Pos_DernierPoint = Curseur;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Ensuite on recopie la partie qui suit le point (si n‚cessaire):
 | 
					    // Ensuite on recopie la partie qui suit le point (si n‚cessaire):
 | 
				
			||||||
    if (Nom[Curseur])
 | 
					    if (Nom[Pos_DernierPoint])
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      for (Curseur++,Autre_curseur=9;Nom[Curseur]!='\0';Curseur++,Autre_curseur++)
 | 
					      for (Curseur = Pos_DernierPoint+1,Autre_curseur=9;Nom[Curseur]!='\0' && Autre_curseur < 12;Curseur++,Autre_curseur++)
 | 
				
			||||||
        Resultat[Autre_curseur]=Nom[Curseur];
 | 
					        Resultat[Autre_curseur]=Nom[Curseur];
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										30
									
								
								main.c
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								main.c
									
									
									
									
									
								
							@ -26,7 +26,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#ifdef __linux__
 | 
					#ifdef __linux__
 | 
				
			||||||
    #include "linux.h" //Fichier avec diverses fonctions qui existaient sous dos mais pas sous linux...
 | 
					    #include "linux.h" //Fichier avec diverses fonctions qui existaient sous dos mais pas sous linux...
 | 
				
			||||||
#elif __WATCOMC__
 | 
					#else
 | 
				
			||||||
    #include <windows.h>
 | 
					    #include <windows.h>
 | 
				
			||||||
    #include <shlwapi.h>
 | 
					    #include <shlwapi.h>
 | 
				
			||||||
    #define chdir(dir) SetCurrentDirectory(dir)
 | 
					    #define chdir(dir) SetCurrentDirectory(dir)
 | 
				
			||||||
@ -215,14 +215,28 @@ void Analyse_de_la_ligne_de_commande(int argc,char * argv[])
 | 
				
			|||||||
        #ifdef __linux__
 | 
					        #ifdef __linux__
 | 
				
			||||||
            Buffer=realpath(argv[1],NULL);
 | 
					            Buffer=realpath(argv[1],NULL);
 | 
				
			||||||
            _splitpath(Buffer,Principal_Repertoire_fichier,Principal_Nom_fichier);
 | 
					            _splitpath(Buffer,Principal_Repertoire_fichier,Principal_Nom_fichier);
 | 
				
			||||||
        #elif __WATCOMC__
 | 
					        #else
 | 
				
			||||||
            Buffer = malloc(MAX_PATH);
 | 
					            Buffer = malloc(MAX_PATH);
 | 
				
			||||||
            PathCanonicalize(Buffer,argv[1]);
 | 
					            _fullpath(Buffer,argv[1],MAX_PATH);
 | 
				
			||||||
            _splitpath(Buffer,
 | 
					            {
 | 
				
			||||||
                Principal_Repertoire_fichier,
 | 
					              // Découpage du nom canonique de fichier en chemin + nom.
 | 
				
			||||||
                Principal_Repertoire_fichier+3,
 | 
					              // On croirait que c'est du classique pour la LibC, mais non...
 | 
				
			||||||
                Principal_Nom_fichier,
 | 
					              int i;
 | 
				
			||||||
                Principal_Nom_fichier+8);
 | 
					              int PosDernierSeparateur = 0;
 | 
				
			||||||
 | 
					              for (i=0; Buffer[i]!='\0'; i++)
 | 
				
			||||||
 | 
					              {
 | 
				
			||||||
 | 
					                Principal_Repertoire_fichier[i] = Buffer[i];
 | 
				
			||||||
 | 
					                if (Buffer[i]=='\\')
 | 
				
			||||||
 | 
					                  PosDernierSeparateur = i;
 | 
				
			||||||
 | 
					              }
 | 
				
			||||||
 | 
					              Principal_Repertoire_fichier[PosDernierSeparateur]='\0';
 | 
				
			||||||
 | 
					              for (i=0; Buffer[PosDernierSeparateur + i + 1]!='\0'; i++)
 | 
				
			||||||
 | 
					              {
 | 
				
			||||||
 | 
					                Principal_Nom_fichier[i] = Buffer[PosDernierSeparateur + i + 1];
 | 
				
			||||||
 | 
					              }
 | 
				
			||||||
 | 
					              Principal_Nom_fichier[i]='\0';
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            free(Buffer);
 | 
					            free(Buffer);
 | 
				
			||||||
        #endif
 | 
					        #endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user