When gfx2.ini is missing, default values are now taken from gfx2.dat.
Removed a custom toupper() function. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@174 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
7197a98fe3
commit
48fca5ceb3
@ -8,7 +8,7 @@ graph.o: graph.c sdlscreen.h struct.h const.h graph.h divers.h moteur.h \
|
||||
sdlscreen.o: sdlscreen.c global.h struct.h const.h loadsave.h sdlscreen.h \
|
||||
divers.h erreurs.h
|
||||
divers.o: divers.c struct.h const.h sdlscreen.h global.h loadsave.h \
|
||||
graph.h erreurs.h boutons.h moteur.h divers.h
|
||||
graph.h erreurs.h boutons.h moteur.h divers.h clavier.h
|
||||
special.o: special.c const.h struct.h global.h loadsave.h graph.h \
|
||||
moteur.h
|
||||
boutons.o: boutons.c const.h struct.h global.h loadsave.h divers.h \
|
||||
@ -34,7 +34,8 @@ op_c.o: op_c.c op_c.h struct.h const.h op_asm.h erreurs.h
|
||||
linux.o: linux.c
|
||||
op_asm.o: op_asm.c op_c.h struct.h const.h graph.h
|
||||
readini.o: readini.c const.h global.h struct.h loadsave.h
|
||||
saveini.o: saveini.c const.h global.h struct.h loadsave.h readini.h
|
||||
saveini.o: saveini.c const.h global.h struct.h loadsave.h readini.h \
|
||||
files.h erreurs.h
|
||||
shade.o: shade.c global.h struct.h const.h loadsave.h graph.h moteur.h \
|
||||
divers.h readline.h
|
||||
clavier.o: clavier.c global.h struct.h const.h loadsave.h
|
||||
|
||||
2
const.h
2
const.h
@ -15,6 +15,7 @@
|
||||
#define BETA2 0 // |
|
||||
#define ALPHA_BETA "ß" // Type de la version "Þ" ou "ß"
|
||||
#define TAILLE_FICHIER_CONFIG 10351 // Taille du fichier GFX2.CFG
|
||||
#define DAT_DEBUT_INI_PAR_DEFAUT 0xF385 // Dans gfx2.dat, début du fichier gfx2.ini standard
|
||||
#define NB_MODES_VIDEO 60 // Nombre de modes vidéo
|
||||
#define NB_BOUTONS 38 // Nombre de boutons à gérer
|
||||
#define NB_TOUCHES 134 // Nombre de combinaisons de touches
|
||||
@ -104,7 +105,6 @@ enum CODES_D_ERREURS
|
||||
ERREUR_NUMERO_MODE, // Erreur de choix de mode sur la ligne de commande
|
||||
ERREUR_SAUVEGARDE_CFG, // Erreur en écriture pour GFX2.CFG
|
||||
ERREUR_REPERTOIRE_DISPARU, // Le répertoire de lancement n'existe plus
|
||||
ERREUR_INI_ABSENT, // Le fichier GFX2.INI est absent
|
||||
ERREUR_INI_CORROMPU, // Le fichier GFX2.INI est corrompu
|
||||
ERREUR_SAUVEGARDE_INI, // Le fichier GFX2.INI n'est pas inscriptible
|
||||
ERREUR_SORRY_SORRY_SORRY // On le refera plus, promis
|
||||
|
||||
18
files.h
18
files.h
@ -1,25 +1,25 @@
|
||||
// Modifie Principal_Repertoire_courant en y mettant sa nouvelle valeur
|
||||
// (avec le nom du disque)
|
||||
int Determiner_repertoire_courant(void);
|
||||
// D‚termine si un r‚pertoire pass‚ en paramŠtre existe ou non dans le
|
||||
// r‚pertoire courant.
|
||||
// Détermine si un répertoire passé en paramètre existe ou non dans le
|
||||
// répertoire courant.
|
||||
int Repertoire_existe(char * Repertoire);
|
||||
// D‚termine si un fichier pass‚ en paramŠtre existe ou non dans le
|
||||
// r‚pertoire courant.
|
||||
// Détermine si un fichier passé en paramètre existe ou non dans le
|
||||
// répertoire courant.
|
||||
int Fichier_existe(char * Fichier);
|
||||
|
||||
// -- Destruction de la liste chaŒn‚e ---------------------------------------
|
||||
// -- Destruction de la liste chaînée ---------------------------------------
|
||||
void Detruire_liste_du_fileselect(void);
|
||||
// -- Lecture d'une liste de fichiers ---------------------------------------
|
||||
void Lire_liste_des_fichiers(byte Format_demande);
|
||||
// -- Tri de la liste des fichiers et r‚pertoires ---------------------------
|
||||
// -- Tri de la liste des fichiers et répertoires ---------------------------
|
||||
void Trier_la_liste_des_fichiers(void);
|
||||
// -- Affichage des ‚l‚ments de la liste de fichier / r‚pertoire ------------
|
||||
// -- Affichage des éléments de la liste de fichier / répertoire ------------
|
||||
void Afficher_la_liste_des_fichiers(short Decalage_premier,short Decalage_select);
|
||||
// -- R‚cup‚rer le libell‚ d'un ‚l‚ment de la liste -------------------------
|
||||
// -- Récupérer le libellé d'un élément de la liste -------------------------
|
||||
void Determiner_element_de_la_liste(short Decalage_premier,short Decalage_select,char * Libelle);
|
||||
|
||||
// -- D‚placements dans la liste des fichiers -------------------------------
|
||||
// -- Déplacements dans la liste des fichiers -------------------------------
|
||||
|
||||
void Select_Scroll_Down(short * Decalage_premier,short * Decalage_select);
|
||||
void Select_Scroll_Up (short * Decalage_premier,short * Decalage_select);
|
||||
|
||||
340
gfx2.ini
340
gfx2.ini
@ -24,55 +24,55 @@
|
||||
|
||||
[MOUSE] # [SOURIS]
|
||||
|
||||
; The sensitivity of the mouse can ³ La sensibilité de la souris peut
|
||||
; take values from 1 to 64. The ³ prendre des valeurs de 1 à 64. Plus
|
||||
; smaller values, the faster. ³ les valeurs sont petites, plus c'est
|
||||
; ³ rapide.
|
||||
; The sensitivity of the mouse can | La sensibilité de la souris peut
|
||||
; take values from 1 to 64. The | prendre des valeurs de 1 à 64. Plus
|
||||
; smaller values, the faster. | les valeurs sont petites, plus c'est
|
||||
; | rapide.
|
||||
X_sensitivity = 1 ; (default 3)
|
||||
Y_sensitivity = 1 ; (default 3)
|
||||
|
||||
; Due to the fact that those stupid ³ A cause du fait que ces imbéciles de
|
||||
; mouse drivers' makers don't care ³ programmeurs de gestionnaires de
|
||||
; if the mouse moves by steps of 2, ³ souris se fichent que votre souris se
|
||||
; 4 or even 8 pixels, we have to ³ deplace par pas de 2, 4 ou même 8
|
||||
; stretch the virtual area of the ³ pixels, nous devons élargir la zone
|
||||
; mouse and divide coordinates to ³ virtuelle de la souris et diviser les
|
||||
; get a one-pixel step motion. ³ coordonnées pour obtenir un pas de 1.
|
||||
; (Warning: the mouse movement can ³ (Attention: le déplacement de la
|
||||
; be correct in some video modes ³ souris peut être correct dans certains
|
||||
; but not in others... But all the ³ modes vidéos mais pas dans d'autres...
|
||||
; "Modes X" should behave the same ³ Mais tout les Modes X devraient se
|
||||
; way, so you won't have to test ³ comporter de la même manière, donc
|
||||
; them all). ³ vous n'aurez pas à tous les tester.
|
||||
; A correction factor of 0 means ³ Un facteur de correction de 0 signifie
|
||||
; that you are very lucky because ³ que vous avez de la chace car votre
|
||||
; your driver doesn't need any ³ driver n'a pas besoin de correction.
|
||||
; correction. If you set the ³ Si vous définissez le facteur de
|
||||
; correction factor to 1, it means ³ correction à 1, cela signifie que
|
||||
; that your mouse moves by steps of ³ votre souris se déplace par pas de 2
|
||||
; 2 pixels; 2 for 4; 3 for 8, etc...³ pixels; 2 pour 4; 3 pour 8, etc...
|
||||
; If you want to use GrafX2 in a ³ Si vous désirez lancer GrafX2 dans une
|
||||
; Win95 window, you should turn ³ fenêtre Windows95, vous devriez passer
|
||||
; these values to 0 (and increase X ³ ces valeurs à 0 (et augmenter les sen-
|
||||
; and Y sensitivities above). ³ sibilités X et Y définies plus haut).
|
||||
; Due to the fact that those stupid | A cause du fait que ces imbéciles de
|
||||
; mouse drivers' makers don't care | programmeurs de gestionnaires de
|
||||
; if the mouse moves by steps of 2, | souris se fichent que votre souris se
|
||||
; 4 or even 8 pixels, we have to | deplace par pas de 2, 4 ou même 8
|
||||
; stretch the virtual area of the | pixels, nous devons élargir la zone
|
||||
; mouse and divide coordinates to | virtuelle de la souris et diviser les
|
||||
; get a one-pixel step motion. | coordonnées pour obtenir un pas de 1.
|
||||
; (Warning: the mouse movement can | (Attention: le déplacement de la
|
||||
; be correct in some video modes | souris peut être correct dans certains
|
||||
; but not in others... But all the | modes vidéos mais pas dans d'autres...
|
||||
; "Modes X" should behave the same | Mais tout les Modes X devraient se
|
||||
; way, so you won't have to test | comporter de la même manière, donc
|
||||
; them all). | vous n'aurez pas à tous les tester.
|
||||
; A correction factor of 0 means | Un facteur de correction de 0 signifie
|
||||
; that you are very lucky because | que vous avez de la chace car votre
|
||||
; your driver doesn't need any | driver n'a pas besoin de correction.
|
||||
; correction. If you set the | Si vous définissez le facteur de
|
||||
; correction factor to 1, it means | correction à 1, cela signifie que
|
||||
; that your mouse moves by steps of | votre souris se déplace par pas de 2
|
||||
; 2 pixels; 2 for 4; 3 for 8, etc...| pixels; 2 pour 4; 3 pour 8, etc...
|
||||
; If you want to use GrafX2 in a | Si vous désirez lancer GrafX2 dans une
|
||||
; Win95 window, you should turn | fenêtre Windows95, vous devriez passer
|
||||
; these values to 0 (and increase X | ces valeurs à 0 (et augmenter les sen-
|
||||
; and Y sensitivities above). | sibilités X et Y définies plus haut).
|
||||
X_correction_factor = 0 ; (default 3)
|
||||
Y_correction_factor = 0 ; (default 3)
|
||||
|
||||
; Aspect of the main cursor (cross) ³ Aspect du curseur principal (croix)
|
||||
; 1: Solid ³ 1: Solide
|
||||
; 2: Transparent ³ 2: Transparent
|
||||
; 3: Thin (solid) ³ 3: Fin (solide)
|
||||
; Aspect of the main cursor (cross) | Aspect du curseur principal (croix)
|
||||
; 1: Solid | 1: Solide
|
||||
; 2: Transparent | 2: Transparent
|
||||
; 3: Thin (solid) | 3: Fin (solide)
|
||||
Cursor_aspect = 1 ; (default 1)
|
||||
|
||||
|
||||
|
||||
[MENU] # [MENU]
|
||||
|
||||
; Colors of the menus (the black ³ Couleurs des menus (la couleur noire
|
||||
; and the white colors cannot be ³ et la couleur blanche ne peuvent pas
|
||||
; modified). ³ être modifiées).
|
||||
; Values are in {Red,Green,Blue} ³ Les valeurs sont dans l'ordre {Rouge,
|
||||
; order and are between 0 and 63. ³ Vert,Bleu} et vont de 0 à 63.
|
||||
; Colors of the menus (the black | Couleurs des menus (la couleur noire
|
||||
; and the white colors cannot be | et la couleur blanche ne peuvent pas
|
||||
; modified). | être modifiées).
|
||||
; Values are in {Red,Green,Blue} | Les valeurs sont dans l'ordre {Rouge,
|
||||
; order and are between 0 and 63. | Vert,Bleu} et vont de 0 à 63.
|
||||
Light_color = 42,42,42 ; (default 42,42,42)
|
||||
Dark_color = 27,27,27 ; (default 27,27,27)
|
||||
;
|
||||
@ -88,202 +88,202 @@
|
||||
; Light_color = 10,40,55 ; \_ Oceanic
|
||||
; Dark_color = 10,20,32 ; /
|
||||
|
||||
; Aspect ratio and size of the ³ Proportion des menus et de la barre
|
||||
; menus and the tool-bar. ³ d'outils.
|
||||
; Possible values: ³ Valeurs possibles:
|
||||
; 0: Do not adapt (pixels are not ³ 0: Ne pas adapter (les pixels ne sont
|
||||
; stretched) ³ pas étirés)
|
||||
; 1: Adapt the menus and the tool- ³ 1: Adapter les menus et la barre
|
||||
; bar according to the resolution³ d'outils suivant la résolution
|
||||
; 2: Slightly adapt the ratio of ³ 2: Adapter légèrement les proportions
|
||||
; the menus and tool-bar ³ des menus et de la barre d'outils
|
||||
; Aspect ratio and size of the | Proportion des menus et de la barre
|
||||
; menus and the tool-bar. | d'outils.
|
||||
; Possible values: | Valeurs possibles:
|
||||
; 0: Do not adapt (pixels are not | 0: Ne pas adapter (les pixels ne sont
|
||||
; stretched) | pas étirés)
|
||||
; 1: Adapt the menus and the tool- | 1: Adapter les menus et la barre
|
||||
; bar according to the resolution| d'outils suivant la résolution
|
||||
; 2: Slightly adapt the ratio of | 2: Adapter légèrement les proportions
|
||||
; the menus and tool-bar | des menus et de la barre d'outils
|
||||
Menu_ratio = 1 ; (default 1)
|
||||
|
||||
; Font: ³ Police de caractères (fonte):
|
||||
; 1: Classic ³ 1: Classique
|
||||
; 2: Fun ³ 2: Fun
|
||||
; Font: | Police de caractères (fonte):
|
||||
; 1: Classic | 1: Classique
|
||||
; 2: Fun | 2: Fun
|
||||
Font = 2 ; (default 1)
|
||||
|
||||
|
||||
|
||||
[FILE_SELECTOR] # [SELECTEUR_DE_FICHIERS]
|
||||
|
||||
; Show special files and ³ Afficher les fichiers et répertoires
|
||||
; directories (values are 'yes' or ³ spéciaux (les valeurs sont 'yes' ou
|
||||
; 'no'). ³ 'no').
|
||||
; Show special files and | Afficher les fichiers et répertoires
|
||||
; directories (values are 'yes' or | spéciaux (les valeurs sont 'yes' ou
|
||||
; 'no'). | 'no').
|
||||
Show_hidden_files = no ; (default 'no')
|
||||
Show_hidden_directories = no ; (default 'no')
|
||||
Show_system_directories = no ; (default 'no')
|
||||
|
||||
; Delay before displaying a preview ³ Délai avant d'afficher une preview
|
||||
; in file-selectors (in 18.2th of ³ dans les sélecteurs de fichiers (en
|
||||
; second). Possible values range ³ 18.2èmes de seconde) Les valeurs
|
||||
; from 1 to 256. ³ possibles vont de 1 à 256.
|
||||
; Delay before displaying a preview | Délai avant d'afficher une preview
|
||||
; in file-selectors (in 18.2th of | dans les sélecteurs de fichiers (en
|
||||
; second). Possible values range | 18.2èmes de seconde) Les valeurs
|
||||
; from 1 to 256. | possibles vont de 1 à 256.
|
||||
Preview_delay = 8 ; (default 8)
|
||||
|
||||
; Maximize the preview of the ³ Maximiser la preview des images pour
|
||||
; pictures so that it is as big as ³ qu'elle soit aussi grande que
|
||||
; possible. If you're not in the ³ possible.
|
||||
; same resolution as the picture's ³ Si vous n'êtes pas dans la même réso-
|
||||
; one, it can try to correct the ³ lution que celle de l'image, cela peut
|
||||
; aspect ratio, but if the picture ³ essayer de corriger les proportions,
|
||||
; does not fill the whole screen, ³ mais si l'image ne prend pas tout
|
||||
; it can be worse. ³ l'écran, cela peut être pire.
|
||||
; Maximize the preview of the | Maximiser la preview des images pour
|
||||
; pictures so that it is as big as | qu'elle soit aussi grande que
|
||||
; possible. If you're not in the | possible.
|
||||
; same resolution as the picture's | Si vous n'êtes pas dans la même réso-
|
||||
; one, it can try to correct the | lution que celle de l'image, cela peut
|
||||
; aspect ratio, but if the picture | essayer de corriger les proportions,
|
||||
; does not fill the whole screen, | mais si l'image ne prend pas tout
|
||||
; it can be worse. | l'écran, cela peut être pire.
|
||||
Maximize_preview = no ; (default 'no')
|
||||
|
||||
; This option is used to place the ³ Cette option est utilisée pour placer
|
||||
; selection bar on a filename by ³ la barre de sélection sur un nom de
|
||||
; typing its first letters. ³ fichier en tapant ses 1ères lettres.
|
||||
; For example, if you want to find ³ Par exemple, si vous voulez trouver le
|
||||
; the "PICTURE.PKM" in a directory ³ fichier "PICTURE.PKM" dans un réper-
|
||||
; that also contains "PALETTE.PAL", ³ toire contenant également le fichier
|
||||
; you'll just have to type P and I. ³ "PALETTE.PAL", vous n'aurez qu'à taper
|
||||
; The different values of "FFF" ³ P puis I.
|
||||
; indicate if you want to find the ³ Les different valeurs de "FFF"
|
||||
; name in both files and directories³ indiquent si vous voulez trouvez le nom
|
||||
; or just in only one of these: ³ dans les fichiers ET les répertoires ou
|
||||
; 0: files and directories ³ simplement dans l'un OU l'autre.
|
||||
; 1: files only ³ 0: fichiers et répertoires
|
||||
; 2: directories only ³ 1: fichiers seulement
|
||||
; ³ 2: répertoires seulement
|
||||
; This option is used to place the | Cette option est utilisée pour placer
|
||||
; selection bar on a filename by | la barre de sélection sur un nom de
|
||||
; typing its first letters. | fichier en tapant ses 1ères lettres.
|
||||
; For example, if you want to find | Par exemple, si vous voulez trouver le
|
||||
; the "PICTURE.PKM" in a directory | fichier "PICTURE.PKM" dans un réper-
|
||||
; that also contains "PALETTE.PAL", | toire contenant également le fichier
|
||||
; you'll just have to type P and I. | "PALETTE.PAL", vous n'aurez qu'à taper
|
||||
; The different values of "FFF" | P puis I.
|
||||
; indicate if you want to find the | Les different valeurs de "FFF"
|
||||
; name in both files and directories| indiquent si vous voulez trouvez le nom
|
||||
; or just in only one of these: | dans les fichiers ET les répertoires ou
|
||||
; 0: files and directories | simplement dans l'un OU l'autre.
|
||||
; 1: files only | 0: fichiers et répertoires
|
||||
; 2: directories only | 1: fichiers seulement
|
||||
; | 2: répertoires seulement
|
||||
Find_file_fast = 0 ; (default 0)
|
||||
|
||||
|
||||
[LOADING] # [CHARGEMENT]
|
||||
|
||||
; Automatically set the resolution ³ Passer automatiquement dans la bonne
|
||||
; when loading a picture. ³ résolution lors du chargement d'une
|
||||
; You should set this value to ³ image.
|
||||
; 'yes' after disabling the video ³ Vous devriez définir cette option à
|
||||
; modes that are not supported by ³ 'yes' après avoir inhibé les modes
|
||||
; your video card or monitor. ³ vidéo qui ne sont pas supportés par
|
||||
; ³ votre matériel.
|
||||
; Automatically set the resolution | Passer automatiquement dans la bonne
|
||||
; when loading a picture. | résolution lors du chargement d'une
|
||||
; You should set this value to | image.
|
||||
; 'yes' after disabling the video | Vous devriez définir cette option à
|
||||
; modes that are not supported by | 'yes' après avoir inhibé les modes
|
||||
; your video card or monitor. | vidéo qui ne sont pas supportés par
|
||||
; | votre matériel.
|
||||
Auto_set_resolution = yes ; (default 'no')
|
||||
|
||||
; If the variable above is set to ³ Si la variable ci-dessus est à 'yes',
|
||||
; 'yes', this one tells if you want ³ celle-ci indique si vous voulez
|
||||
; to set the resolution according ³ définir la résolution suivant:
|
||||
; to: ³ 1: les dimensions de "l'écran
|
||||
; 1: the internal "original screen" ³ d'origine" internes à l'image
|
||||
; dimensions of the picture ³ 2: les véritables dimensions de
|
||||
; 2: the actual dimensions of the ³ l'image
|
||||
; picture ³
|
||||
; If the variable above is set to | Si la variable ci-dessus est à 'yes',
|
||||
; 'yes', this one tells if you want | celle-ci indique si vous voulez
|
||||
; to set the resolution according | définir la résolution suivant:
|
||||
; to: | 1: les dimensions de "l'écran
|
||||
; 1: the internal "original screen" | d'origine" internes à l'image
|
||||
; dimensions of the picture | 2: les véritables dimensions de
|
||||
; 2: the actual dimensions of the | l'image
|
||||
; picture |
|
||||
Set_resolution_according_to = 1 ; (default 1)
|
||||
|
||||
; If you load a picture with a ³ Si vous chargez une image ayant une
|
||||
; palette of less than 256 colors, ³ palette de moins de 256 couleurs,
|
||||
; this option defines if you want ³ cette option indique si vous souhaitez
|
||||
; to clear the palette or to keep ³ effacer la palette ou bien conserver
|
||||
; the colors of the previous ³ les couleurs de l'image précédente qui
|
||||
; picture that are over the number ³ se situent au-delà du nombre de la
|
||||
; of colors of the new picture. ³ nouvelle image.
|
||||
; For example, if you load a ³ Par exemple, si vous chargez une image
|
||||
; 32-color picture, the colors 32 ³ de 32 couleurs, les couleurs 32 à 255
|
||||
; to 255 will be set to black if ³ seront passées en noir si cette option
|
||||
; this option is set to 'yes', or ³ est à 'yes', ou bien elles resteront
|
||||
; they will be kept unchanged if ³ inchangées si elle est à 'no'.
|
||||
; this option is set to 'no'. ³
|
||||
; If you load a picture with a | Si vous chargez une image ayant une
|
||||
; palette of less than 256 colors, | palette de moins de 256 couleurs,
|
||||
; this option defines if you want | cette option indique si vous souhaitez
|
||||
; to clear the palette or to keep | effacer la palette ou bien conserver
|
||||
; the colors of the previous | les couleurs de l'image précédente qui
|
||||
; picture that are over the number | se situent au-delà du nombre de la
|
||||
; of colors of the new picture. | nouvelle image.
|
||||
; For example, if you load a | Par exemple, si vous chargez une image
|
||||
; 32-color picture, the colors 32 | de 32 couleurs, les couleurs 32 à 255
|
||||
; to 255 will be set to black if | seront passées en noir si cette option
|
||||
; this option is set to 'yes', or | est à 'yes', ou bien elles resteront
|
||||
; they will be kept unchanged if | inchangées si elle est à 'no'.
|
||||
; this option is set to 'no'. |
|
||||
Clear_palette = yes ; (default 'yes')
|
||||
|
||||
|
||||
[MISCELLANEOUS] # [DIVERS]
|
||||
|
||||
; Draw the limits of the picture. ³ Afficher les limites de l'image
|
||||
; Draw the limits of the picture. | Afficher les limites de l'image
|
||||
Draw_limits = yes ; (default 'yes')
|
||||
|
||||
; Adjust the brush grabbing in ³ Ajuster la capture de brosse en mode
|
||||
; "grid" mode. ³ "grille".
|
||||
; Adjust the brush grabbing in | Ajuster la capture de brosse en mode
|
||||
; "grid" mode. | "grille".
|
||||
Adjust_brush_pick = yes ; (default 'yes')
|
||||
|
||||
; Coordinates: ³ Coordonnées:
|
||||
; 1: Relative ³ 1: Relatives
|
||||
; 2: Absolute ³ 2: Absolues
|
||||
; Coordinates: | Coordonnées:
|
||||
; 1: Relative | 1: Relatives
|
||||
; 2: Absolute | 2: Absolues
|
||||
Coordinates = 2 ; (default 1)
|
||||
|
||||
; Create a backup file when saving. ³ Créer un fichier backup lors des
|
||||
; ³ sauvegardes.
|
||||
; Create a backup file when saving. | Créer un fichier backup lors des
|
||||
; | sauvegardes.
|
||||
Backup = no ; (default 'no')
|
||||
|
||||
; Number of pages stored in memory ³ Nombre de pages stockées en mémoire
|
||||
; for "undoing". ³ destinées à annuler les dernières
|
||||
; Values are between 1 and 99. ³ modifications. Valeurs entre 1 et 99.
|
||||
; Number of pages stored in memory | Nombre de pages stockées en mémoire
|
||||
; for "undoing". | destinées à annuler les dernières
|
||||
; Values are between 1 and 99. | modifications. Valeurs entre 1 et 99.
|
||||
Undo_pages = 1 ; (default 1)
|
||||
|
||||
; Speed of the scroll-bars (in VBLs ³ Vitesse des barre de défilement (en
|
||||
; waited) while clicking with the ³ VBLs attendus) lorsque l'un des
|
||||
; left or right button of the mouse.³ boutons de la souris est enfoncé.
|
||||
; Values can be between 1 and 255. ³ Les valeurs sont comprises entre 1 et
|
||||
; The bigger values, the slower. ³ 255. Plus elles sont grandes, plus
|
||||
; ³ c'est lent.
|
||||
; Speed of the scroll-bars (in VBLs | Vitesse des barre de défilement (en
|
||||
; waited) while clicking with the | VBLs attendus) lorsque l'un des
|
||||
; left or right button of the mouse.| boutons de la souris est enfoncé.
|
||||
; Values can be between 1 and 255. | Les valeurs sont comprises entre 1 et
|
||||
; The bigger values, the slower. | 255. Plus elles sont grandes, plus
|
||||
; | c'est lent.
|
||||
Gauges_scrolling_speed_Left = 10 ; (default 10)
|
||||
Gauges_scrolling_speed_Right = 3 ; (default 3)
|
||||
|
||||
; Automatically save the configu- ³ Enregistre automatiquement la configu-
|
||||
; ration when exiting the program. ³ ration lorsqu'on quitte le programme.
|
||||
; Automatically save the configu- | Enregistre automatiquement la configu-
|
||||
; ration when exiting the program. | ration lorsqu'on quitte le programme.
|
||||
Auto_save = yes ; (default 'yes')
|
||||
|
||||
; Maximum number of vertices used ³ Nombre maximum de vertex utilisés dans
|
||||
; in filled polygons and polyforms, ³ les polygônes et polyformes pleins, et
|
||||
; and lasso. Possible values range ³ le lasso. Les valeurs possibles vont
|
||||
; from 2 to 16384. ³ de 2 à 16384.
|
||||
; Each vertex takes 4 bytes. ³ Chaque vertex prend 4 octets.
|
||||
; Maximum number of vertices used | Nombre maximum de vertex utilisés dans
|
||||
; in filled polygons and polyforms, | les polygônes et polyformes pleins, et
|
||||
; and lasso. Possible values range | le lasso. Les valeurs possibles vont
|
||||
; from 2 to 16384. | de 2 à 16384.
|
||||
; Each vertex takes 4 bytes. | Chaque vertex prend 4 octets.
|
||||
Vertices_per_polygon = 1024 ; (default 1024)
|
||||
|
||||
; Automatically zoom into the ³ Zoomer automatiquement la zone pointée
|
||||
; pointed area when you press the ³ par la souris lorsque vous appuyez sur
|
||||
; short-key of the Magnifier button ³ la touche de raccourci de la loupe.
|
||||
; while being above the picture. ³
|
||||
; Automatically zoom into the | Zoomer automatiquement la zone pointée
|
||||
; pointed area when you press the | par la souris lorsque vous appuyez sur
|
||||
; short-key of the Magnifier button | la touche de raccourci de la loupe.
|
||||
; while being above the picture. |
|
||||
Fast_zoom = yes ; (default 'yes')
|
||||
|
||||
; Separate the colors in the tool- ³ Séparer les couleurs dans la barre
|
||||
; bar by a black squaring. ³ d'outils par un quadrillage noir.
|
||||
; Separate the colors in the tool- | Séparer les couleurs dans la barre
|
||||
; bar by a black squaring. | d'outils par un quadrillage noir.
|
||||
Separate_colors = no ; (default 'yes')
|
||||
|
||||
; Initial value of the feedback for ³ Valeur initiale du "feedback" pour les
|
||||
; the drawing modes (cf. docs). ³ modes de dessin (cf. docs).
|
||||
; Initial value of the feedback for | Valeur initiale du "feedback" pour les
|
||||
; the drawing modes (cf. docs). | modes de dessin (cf. docs).
|
||||
FX_feedback = yes ; (default 'yes')
|
||||
|
||||
; When you reduce the palette or ³ Si vous réduisez la palette ou "zappez"
|
||||
; "zap" some colors out of it, it is³ quelques couleurs, il est possible
|
||||
; possible that there are not enough³ qu'il ne reste pas assez de couleurs
|
||||
; colors left to draw the menus. ³ pour afficher les menus. Mettre cette
|
||||
; Switching the following variable ³ variable à 'yes' ramènera automatiquent
|
||||
; on will bring back the colors of ³ les couleurs du menu s'il reste moins
|
||||
; the menu if there are less than 4 ³ de 4 couleurs après une "réduction" ou
|
||||
; colors left after "reducing" or ³ un "zapping".
|
||||
; "zapping". ³
|
||||
; When you reduce the palette or | Si vous réduisez la palette ou "zappez"
|
||||
; "zap" some colors out of it, it is| quelques couleurs, il est possible
|
||||
; possible that there are not enough| qu'il ne reste pas assez de couleurs
|
||||
; colors left to draw the menus. | pour afficher les menus. Mettre cette
|
||||
; Switching the following variable | variable à 'yes' ramènera automatiquent
|
||||
; on will bring back the colors of | les couleurs du menu s'il reste moins
|
||||
; the menu if there are less than 4 | de 4 couleurs après une "réduction" ou
|
||||
; colors left after "reducing" or | un "zapping".
|
||||
; "zapping". |
|
||||
Safety_colors = no ; (default 'yes')
|
||||
|
||||
; Display a message at startup ³ Afficher un message au démarrage
|
||||
; telling the version number of the ³ indiquant le numéro de version du
|
||||
; program. ³ programme.
|
||||
; Display a message at startup | Afficher un message au démarrage
|
||||
; telling the version number of the | indiquant le numéro de version du
|
||||
; program. | programme.
|
||||
Opening_message = yes ; (default 'yes')
|
||||
|
||||
; Take the Stencil into account when³ Prendre le Stencil en compte lorsqu'on
|
||||
; clearing the image. ³ efface l'image.
|
||||
; Take the Stencil into account when| Prendre le Stencil en compte lorsqu'on
|
||||
; clearing the image. | efface l'image.
|
||||
Clear_with_stencil = yes ; (default 'yes')
|
||||
|
||||
; Directly set the discontinuous ³ Passer automatiquement en mode de
|
||||
; freehand drawing mode after brush ³ dessin discontinu après la prise d'une
|
||||
; grabbing. ³ brosse.
|
||||
; Directly set the discontinuous | Passer automatiquement en mode de
|
||||
; freehand drawing mode after brush | dessin discontinu après la prise d'une
|
||||
; grabbing. | brosse.
|
||||
Auto_discontinuous = no ; (default 'no')
|
||||
|
||||
; Save the screen dimensions in GIF ³ Sauver les dimensions de l'écran dans
|
||||
; files. If you want to read these ³ les fichiers GIF. Si vous voulez lire
|
||||
; files with Photoshop or Alchemy, ³ ces fichiers avec Photoshop ou Alchemy,
|
||||
; and maybe some other programs, you³ et peut-être d'autres programmes, vous
|
||||
; must set this option to 'no'. ³ devez mettre cette option à 'no'.
|
||||
; Save the screen dimensions in GIF | Sauver les dimensions de l'écran dans
|
||||
; files. If you want to read these | les fichiers GIF. Si vous voulez lire
|
||||
; files with Photoshop or Alchemy, | ces fichiers avec Photoshop ou Alchemy,
|
||||
; and maybe some other programs, you| et peut-être d'autres programmes, vous
|
||||
; must set this option to 'no'. | devez mettre cette option à 'no'.
|
||||
Save_screen_size_in_GIF = no ; (default 'no')
|
||||
|
||||
; Automaticaly count the number of ³ Compter automatiquement le nombre de
|
||||
; different colors used when opening³ couleurs différentes utilisées lors de
|
||||
; the palette editor window. (Set it³ d'ouverture de la fenêtre d'édition de
|
||||
; to 'no' if you have a slow PC or ³ la palette. (Mettez-le à 'no' si vous
|
||||
; if you edit huge pictures) ³ avez un PC lent ou bien si vous éditez
|
||||
; ³ d'énormes images).
|
||||
; Automaticaly count the number of | Compter automatiquement le nombre de
|
||||
; different colors used when opening| couleurs différentes utilisées lors de
|
||||
; the palette editor window. (Set it| d'ouverture de la fenêtre d'édition de
|
||||
; to 'no' if you have a slow PC or | la palette. (Mettez-le à 'no' si vous
|
||||
; if you edit huge pictures) | avez un PC lent ou bien si vous éditez
|
||||
; | d'énormes images).
|
||||
Auto_nb_colors_used = yes ; (default 'yes')
|
||||
|
||||
; Number of the default video mode ³ Numéro du mode vidéo par défaut au
|
||||
; at startup (see the list by typing³ démarrage (voir la liste en tapant
|
||||
; "gfx2 /?" at the DOS prompt). ³ "gfx2 /?" sur la ligne de commande).
|
||||
; Number of the default video mode | Numéro du mode vidéo par défaut au
|
||||
; at startup (see the list by typing| démarrage (voir la liste en tapant
|
||||
; "gfx2 /?" at the DOS prompt). | "gfx2 /?" sur la ligne de commande).
|
||||
Default_video_mode = 58 ; (default 0)
|
||||
|
||||
3
init.c
3
init.c
@ -1,4 +1,3 @@
|
||||
#define TAILLE_FICHIER_DATA 78544 // Taille du fichier GFX2.DAT
|
||||
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
@ -223,7 +222,7 @@ void Charger_DAT(void)
|
||||
}
|
||||
|
||||
Taille_fichier=Informations_Fichier.st_size;
|
||||
if (Taille_fichier!=TAILLE_FICHIER_DATA)
|
||||
if (Taille_fichier<DAT_DEBUT_INI_PAR_DEFAUT)
|
||||
{
|
||||
DEBUG("Taille",0);
|
||||
Erreur(ERREUR_DAT_CORROMPU);
|
||||
|
||||
3
main.c
3
main.c
@ -170,10 +170,9 @@ void Erreur(int Code)
|
||||
break;
|
||||
case ERREUR_REPERTOIRE_DISPARU : printf("Error: Directory you ran the program from not found!\n");
|
||||
break;
|
||||
case ERREUR_INI_ABSENT : printf("Error: File GFX2.INI is missing!\n");
|
||||
break;
|
||||
case ERREUR_INI_CORROMPU : printf("Error: File GFX2.INI is corrupt!\n");
|
||||
printf("It contains bad values at line %d.\n",Ligne_INI);
|
||||
printf("You can re-generate it by deleting the file and running grafX2 again.\n");
|
||||
break;
|
||||
case ERREUR_SAUVEGARDE_INI : printf("Error: Cannot rewrite file GFX2.INI!\n");
|
||||
break;
|
||||
|
||||
578
readini.c
578
readini.c
@ -1,31 +1,10 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <ctype.h>
|
||||
#include "const.h"
|
||||
#include "global.h"
|
||||
|
||||
char lowercase_to_uppercase[256];
|
||||
|
||||
|
||||
|
||||
void Calculer_la_table_lowercase_to_uppercase(void)
|
||||
{
|
||||
int Indice;
|
||||
int Resultat;
|
||||
|
||||
for (Indice=0;Indice<256;Indice++)
|
||||
{
|
||||
Resultat=Indice;
|
||||
|
||||
if ((Indice>='a') && (Indice<='z'))
|
||||
Resultat+='A'-'a';
|
||||
|
||||
lowercase_to_uppercase[Indice]=Resultat;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Charger_INI_Clear_string(char * String)
|
||||
{
|
||||
int Indice;
|
||||
@ -42,6 +21,7 @@ void Charger_INI_Clear_string(char * String)
|
||||
else
|
||||
if ((String[Indice]==';') ||
|
||||
(String[Indice]=='#') ||
|
||||
(String[Indice]=='\r') ||
|
||||
(String[Indice]=='\n'))
|
||||
{
|
||||
// Rencontre d'un commentaire ou d'un saut de ligne:
|
||||
@ -52,7 +32,7 @@ void Charger_INI_Clear_string(char * String)
|
||||
{
|
||||
// Passage en majuscule d'un caractère:
|
||||
|
||||
String[Indice]=lowercase_to_uppercase[(int)String[Indice]];
|
||||
String[Indice]=toupper((int)String[Indice]);
|
||||
Indice++;
|
||||
}
|
||||
}
|
||||
@ -338,8 +318,6 @@ int Charger_INI(struct S_Config * Conf)
|
||||
char * Nom_du_fichier;
|
||||
int Retour;
|
||||
|
||||
Calculer_la_table_lowercase_to_uppercase();
|
||||
|
||||
Ligne_INI=0;
|
||||
|
||||
// On alloue les zones de mémoire:
|
||||
@ -350,277 +328,289 @@ int Charger_INI(struct S_Config * Conf)
|
||||
strcpy(Nom_du_fichier,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier,"gfx2.ini");
|
||||
|
||||
Fichier=fopen(Nom_du_fichier,"r");
|
||||
if (Fichier!=0)
|
||||
Fichier=fopen(Nom_du_fichier,"rb");
|
||||
if (Fichier==0)
|
||||
{
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MOUSE]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"X_sensitivity",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Indice_Sensibilite_souris_X=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Y_sensitivity",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Indice_Sensibilite_souris_Y=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"X_correction_factor",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>4))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Mouse_Facteur_de_correction_X=Mouse_Facteur_de_correction_X=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Y_correction_factor",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>4))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Mouse_Facteur_de_correction_Y=Mouse_Facteur_de_correction_Y=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Cursor_aspect",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>3))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Curseur=Valeurs[0]-1;
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MENU]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Conf->Coul_menu_pref[0].R=0;
|
||||
Conf->Coul_menu_pref[0].V=0;
|
||||
Conf->Coul_menu_pref[0].B=0;
|
||||
Conf->Coul_menu_pref[3].R=63;
|
||||
Conf->Coul_menu_pref[3].V=63;
|
||||
Conf->Coul_menu_pref[3].B=63;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Light_color",3,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[1]<0) || (Valeurs[1]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[2]<0) || (Valeurs[2]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coul_menu_pref[2].R=Valeurs[0];
|
||||
Conf->Coul_menu_pref[2].V=Valeurs[1];
|
||||
Conf->Coul_menu_pref[2].B=Valeurs[2];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Dark_color",3,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[1]<0) || (Valeurs[1]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[2]<0) || (Valeurs[2]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coul_menu_pref[1].R=Valeurs[0];
|
||||
Conf->Coul_menu_pref[1].V=Valeurs[1];
|
||||
Conf->Coul_menu_pref[1].B=Valeurs[2];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Menu_ratio",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Ratio=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Font",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Fonte=Valeurs[0]-1;
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[FILE_SELECTOR]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_hidden_files",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_fichiers_caches=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_hidden_directories",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_repertoires_caches=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_system_directories",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_repertoires_systemes=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Preview_delay",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>256))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Chrono_delay=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Maximize_preview",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Maximize_preview=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Find_file_fast",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Find_file_fast=Valeurs[0];
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[LOADING]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_set_resolution",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_set_res=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Set_resolution_according_to",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Set_resolution_according_to=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Clear_palette",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Clear_palette=Valeurs[0];
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MISCELLANEOUS]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Draw_limits",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Afficher_limites_image=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Adjust_brush_pick",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Adjust_brush_pick=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Coordinates",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coords_rel=2-Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Backup",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Backup=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Undo_pages",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>99))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Nb_pages_Undo=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Gauges_scrolling_speed_Left",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Valeur_tempo_jauge_gauche=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Gauges_scrolling_speed_Right",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Valeur_tempo_jauge_droite=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_save",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_save=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Vertices_per_polygon",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<2) || (Valeurs[0]>16384))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Nb_max_de_vertex_par_polygon=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Fast_zoom",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Fast_zoom=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Separate_colors",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Couleurs_separees=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"FX_feedback",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->FX_Feedback=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Safety_colors",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Safety_colors=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Opening_message",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Opening_message=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Clear_with_stencil",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Clear_with_stencil=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_discontinuous",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_discontinuous=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Save_screen_size_in_GIF",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Taille_ecran_dans_GIF=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_nb_colors_used",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_nb_used=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Default_video_mode",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<MODE_320_200) || (Valeurs[0]>MODE_1024_768))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Resolution_par_defaut=Valeurs[0];
|
||||
|
||||
fclose(Fichier);
|
||||
}
|
||||
else
|
||||
{
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return ERREUR_INI_ABSENT;
|
||||
// Si le fichier ini est absent on le relit depuis gfx2.dat
|
||||
strcpy(Nom_du_fichier,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier,"gfx2.dat");
|
||||
Fichier=fopen(Nom_du_fichier,"rb");
|
||||
if (Fichier == 0)
|
||||
{
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return ERREUR_DAT_ABSENT;
|
||||
}
|
||||
if (fseek(Fichier, DAT_DEBUT_INI_PAR_DEFAUT ,SEEK_SET))
|
||||
{
|
||||
fclose(Fichier);
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return ERREUR_DAT_CORROMPU;
|
||||
}
|
||||
}
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MOUSE]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"X_sensitivity",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Indice_Sensibilite_souris_X=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Y_sensitivity",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Indice_Sensibilite_souris_Y=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"X_correction_factor",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>4))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Mouse_Facteur_de_correction_X=Mouse_Facteur_de_correction_X=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Y_correction_factor",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>4))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Mouse_Facteur_de_correction_Y=Mouse_Facteur_de_correction_Y=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Cursor_aspect",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>3))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Curseur=Valeurs[0]-1;
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MENU]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Conf->Coul_menu_pref[0].R=0;
|
||||
Conf->Coul_menu_pref[0].V=0;
|
||||
Conf->Coul_menu_pref[0].B=0;
|
||||
Conf->Coul_menu_pref[3].R=63;
|
||||
Conf->Coul_menu_pref[3].V=63;
|
||||
Conf->Coul_menu_pref[3].B=63;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Light_color",3,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[1]<0) || (Valeurs[1]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[2]<0) || (Valeurs[2]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coul_menu_pref[2].R=Valeurs[0];
|
||||
Conf->Coul_menu_pref[2].V=Valeurs[1];
|
||||
Conf->Coul_menu_pref[2].B=Valeurs[2];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Dark_color",3,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[1]<0) || (Valeurs[1]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
if ((Valeurs[2]<0) || (Valeurs[2]>63))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coul_menu_pref[1].R=Valeurs[0];
|
||||
Conf->Coul_menu_pref[1].V=Valeurs[1];
|
||||
Conf->Coul_menu_pref[1].B=Valeurs[2];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Menu_ratio",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Ratio=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Font",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Fonte=Valeurs[0]-1;
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[FILE_SELECTOR]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_hidden_files",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_fichiers_caches=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_hidden_directories",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_repertoires_caches=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Show_system_directories",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Lire_les_repertoires_systemes=Valeurs[0]?-1:0;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Preview_delay",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>256))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Chrono_delay=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Maximize_preview",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Maximize_preview=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Find_file_fast",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Find_file_fast=Valeurs[0];
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[LOADING]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_set_resolution",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_set_res=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Set_resolution_according_to",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Set_resolution_according_to=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Clear_palette",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Clear_palette=Valeurs[0];
|
||||
|
||||
|
||||
if ((Retour=Charger_INI_Reach_group(Fichier,Buffer,"[MISCELLANEOUS]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Draw_limits",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Afficher_limites_image=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Adjust_brush_pick",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Adjust_brush_pick=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Coordinates",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>2))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Coords_rel=2-Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Backup",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Backup=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Undo_pages",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>99))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Nb_pages_Undo=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Gauges_scrolling_speed_Left",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Valeur_tempo_jauge_gauche=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Gauges_scrolling_speed_Right",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<1) || (Valeurs[0]>255))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Valeur_tempo_jauge_droite=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_save",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_save=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Vertices_per_polygon",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<2) || (Valeurs[0]>16384))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Nb_max_de_vertex_par_polygon=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Fast_zoom",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Fast_zoom=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Separate_colors",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Couleurs_separees=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"FX_feedback",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->FX_Feedback=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Safety_colors",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Safety_colors=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Opening_message",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Opening_message=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Clear_with_stencil",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Clear_with_stencil=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_discontinuous",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_discontinuous=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Save_screen_size_in_GIF",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Taille_ecran_dans_GIF=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Auto_nb_colors_used",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<0) || (Valeurs[0]>1))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Auto_nb_used=Valeurs[0];
|
||||
|
||||
if ((Retour=Charger_INI_Get_values (Fichier,Buffer,"Default_video_mode",1,Valeurs)))
|
||||
goto Erreur_Retour;
|
||||
if ((Valeurs[0]<MODE_320_200) || (Valeurs[0]>MODE_1024_768))
|
||||
goto Erreur_ERREUR_INI_CORROMPU;
|
||||
Conf->Resolution_par_defaut=Valeurs[0];
|
||||
|
||||
fclose(Fichier);
|
||||
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
|
||||
460
saveini.c
460
saveini.c
@ -4,6 +4,8 @@
|
||||
#include "const.h"
|
||||
#include "global.h"
|
||||
#include "readini.h"
|
||||
#include "files.h"
|
||||
#include "erreurs.h"
|
||||
|
||||
int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char * Group)
|
||||
{
|
||||
@ -11,11 +13,11 @@ int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char *
|
||||
char * Group_upper;
|
||||
char * Buffer_upper;
|
||||
|
||||
// On alloue les zones de m‚moire:
|
||||
// On alloue les zones de mémoire:
|
||||
Group_upper =(char *)malloc(1024);
|
||||
Buffer_upper=(char *)malloc(1024);
|
||||
|
||||
// On commence par se faire une version majuscule du groupe … rechercher:
|
||||
// On commence par se faire une version majuscule du groupe à rechercher:
|
||||
strcpy(Group_upper,Group);
|
||||
Charger_INI_Clear_string(Group_upper);
|
||||
|
||||
@ -34,7 +36,7 @@ int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char *
|
||||
strcpy(Buffer_upper,Buffer);
|
||||
Charger_INI_Clear_string(Buffer_upper);
|
||||
|
||||
// On compare la chaŒne avec le groupe recherch‚:
|
||||
// On compare la chaîne avec le groupe recherché:
|
||||
Arret=Charger_INI_Seek_pattern(Buffer_upper,Group_upper);
|
||||
if (fprintf(New_file,"%s",Buffer)<0)
|
||||
{
|
||||
@ -68,7 +70,7 @@ int Sauver_INI_char_in_value_alphabet(char Char)
|
||||
(Char>='a') &&
|
||||
(Char<='z')
|
||||
) ||
|
||||
(Char == '$') // Symbole d'hexad‚cimal
|
||||
(Char == '$') // Symbole d'hexadécimal
|
||||
)
|
||||
return 1;
|
||||
else
|
||||
@ -95,20 +97,20 @@ void Sauver_INI_Set_value(char * Destination,char * Source,int Nb_values_to_set,
|
||||
for (;Source[Indice_source]==' ';Indice_source++)
|
||||
Destination[Indice_source]=Source[Indice_source];
|
||||
|
||||
// Pour l'instant, la source et la destination en sont au mˆme point:
|
||||
// Pour l'instant, la source et la destination en sont au même point:
|
||||
Indice_destination=Indice_source;
|
||||
|
||||
// Puis pour chaque valeur … recopier:
|
||||
// Puis pour chaque valeur à recopier:
|
||||
for (Indice_valeur=0;Indice_valeur<Nb_values_to_set;Indice_valeur++)
|
||||
{
|
||||
// Dans la destination, on ‚crit la valeur:
|
||||
// Dans la destination, on écrit la valeur:
|
||||
if (Litteral)
|
||||
{
|
||||
// La valeur doit ˆtre ‚crite sous la forme Yes/No
|
||||
// La valeur doit être écrite sous la forme Yes/No
|
||||
|
||||
if (Values[Indice_valeur])
|
||||
{
|
||||
// La valeur <=> Yes
|
||||
// La valeur <=> Yes
|
||||
|
||||
memcpy(Destination+Indice_destination,"yes",3);
|
||||
Indice_destination+=3;
|
||||
@ -123,11 +125,11 @@ void Sauver_INI_Set_value(char * Destination,char * Source,int Nb_values_to_set,
|
||||
}
|
||||
else
|
||||
{
|
||||
// La valeur doit ˆtre ‚crite sous forme num‚rique
|
||||
// La valeur doit être écrite sous forme numérique
|
||||
|
||||
if (Source[Indice_source]=='$')
|
||||
{
|
||||
// On va ‚crire la valeur sous forme hexad‚cimale:
|
||||
// On va écrire la valeur sous forme hexadécimale:
|
||||
|
||||
// On commence par inscrire le symbole '$':
|
||||
Destination[Indice_destination]='$';
|
||||
@ -138,7 +140,7 @@ void Sauver_INI_Set_value(char * Destination,char * Source,int Nb_values_to_set,
|
||||
}
|
||||
else
|
||||
{
|
||||
// On va ‚crire la valeur sous forme d‚cimale:
|
||||
// On va écrire la valeur sous forme décimale:
|
||||
|
||||
sprintf(Destination+Indice_destination,"%d",Values[Indice_valeur]);
|
||||
Indice_destination+=strlen(Destination+Indice_destination);
|
||||
@ -150,16 +152,16 @@ void Sauver_INI_Set_value(char * Destination,char * Source,int Nb_values_to_set,
|
||||
|
||||
if (Indice_valeur!=(Nb_values_to_set-1))
|
||||
{
|
||||
// Il reste d'autres valeurs … ‚crire
|
||||
// Il reste d'autres valeurs à écrire
|
||||
|
||||
// On recopie tous les caractŠres de la source jusqu'au suivant qui
|
||||
// d‚signe une valeur:
|
||||
// désigne une valeur:
|
||||
for (;(!Sauver_INI_char_in_value_alphabet(Source[Indice_source])) && (Source[Indice_source]!='\0');Indice_source++,Indice_destination++)
|
||||
Destination[Indice_destination]=Source[Indice_source];
|
||||
}
|
||||
else
|
||||
{
|
||||
// C'est la derniŠre valeur … initialiser
|
||||
// C'est la derniŠre valeur à initialiser
|
||||
|
||||
// On recopie toute la fin de la ligne:
|
||||
for (;Source[Indice_source]!='\0';Indice_source++,Indice_destination++)
|
||||
@ -181,12 +183,12 @@ int Sauver_INI_Set_values(FILE * Old_file,FILE * New_file,char * Buffer,char * O
|
||||
char * Buffer_resultat;
|
||||
//int Indice_buffer;
|
||||
|
||||
// On alloue les zones de m‚moire:
|
||||
// On alloue les zones de mémoire:
|
||||
Option_upper=(char *)malloc(1024);
|
||||
Buffer_upper=(char *)malloc(1024);
|
||||
Buffer_resultat=(char *)malloc(1024);
|
||||
|
||||
// On commence par se faire une version majuscule de l'option … rechercher:
|
||||
// On commence par se faire une version majuscule de l'option à rechercher:
|
||||
strcpy(Option_upper,Option);
|
||||
Charger_INI_Clear_string(Option_upper);
|
||||
|
||||
@ -206,12 +208,12 @@ int Sauver_INI_Set_values(FILE * Old_file,FILE * New_file,char * Buffer,char * O
|
||||
strcpy(Buffer_upper,Buffer);
|
||||
Charger_INI_Clear_string(Buffer_upper);
|
||||
|
||||
// On compare la chaŒne avec l'option recherch‚e:
|
||||
// On compare la chaîne avec l'option recherchée:
|
||||
Arret=Charger_INI_Seek_pattern(Buffer_upper,Option_upper);
|
||||
|
||||
if (Arret)
|
||||
{
|
||||
// On l'a trouv‚e:
|
||||
// On l'a trouvée:
|
||||
|
||||
Sauver_INI_Set_value(Buffer_resultat,Buffer,Nb_values_to_set,Values,Litteral);
|
||||
if (fprintf(New_file,"%s",Buffer_resultat)<0)
|
||||
@ -224,7 +226,7 @@ int Sauver_INI_Set_values(FILE * Old_file,FILE * New_file,char * Buffer,char * O
|
||||
}
|
||||
else
|
||||
{
|
||||
// On l'a pas trouv‚e:
|
||||
// On l'a pas trouvée:
|
||||
|
||||
if (fprintf(New_file,"%s",Buffer)<0)
|
||||
{
|
||||
@ -260,228 +262,230 @@ int Sauver_INI(struct S_Config * Conf)
|
||||
FILE * Nouveau_fichier;
|
||||
char * Buffer;
|
||||
int Valeurs[3];
|
||||
char * Nom_du_fichier;
|
||||
char * Nom_du_fichier_temporaire;
|
||||
char Nom_du_fichier[256];
|
||||
char Nom_du_fichier_temporaire[256];
|
||||
int Retour;
|
||||
char Nom_du_fichier_DAT[256];
|
||||
int Ini_existe;
|
||||
|
||||
// On alloue les zones de m‚moire:
|
||||
// On alloue les zones de mémoire:
|
||||
Buffer=(char *)malloc(1024);
|
||||
Nom_du_fichier=(char *)malloc(256);
|
||||
Nom_du_fichier_temporaire=(char *)malloc(256);
|
||||
|
||||
|
||||
// On calcule les noms des fichiers qu'on manipule:
|
||||
strcpy(Nom_du_fichier,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier,"gfx2.ini");
|
||||
|
||||
strcpy(Nom_du_fichier_temporaire,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier_temporaire,"gfx2.$$$");
|
||||
|
||||
// On renome l'ancienne version du fichier INI vers un fichier temporaire:
|
||||
if (rename(Nom_du_fichier,Nom_du_fichier_temporaire)!=0)
|
||||
goto Erreur_ERREUR_SAUVEGARDE_INI;
|
||||
|
||||
Ancien_fichier=fopen(Nom_du_fichier_temporaire,"r");
|
||||
if (Ancien_fichier!=0)
|
||||
// On vérifie si le fichier INI existe
|
||||
if ((Ini_existe = Fichier_existe(Nom_du_fichier)))
|
||||
{
|
||||
Nouveau_fichier=fopen(Nom_du_fichier,"w");
|
||||
if (Nouveau_fichier!=0)
|
||||
strcpy(Nom_du_fichier_temporaire,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier_temporaire,"gfx2.$$$");
|
||||
|
||||
// On renome l'ancienne version du fichier INI vers un fichier temporaire:
|
||||
if (rename(Nom_du_fichier,Nom_du_fichier_temporaire)!=0)
|
||||
{
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MOUSE]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Indice_Sensibilite_souris_X;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_sensitivity",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Indice_Sensibilite_souris_Y;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_sensitivity",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Mouse_Facteur_de_correction_X;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_correction_factor",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Mouse_Facteur_de_correction_Y;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_correction_factor",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=(Conf->Curseur)+1;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Cursor_aspect",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MENU]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Coul_menu_pref[2].R;
|
||||
Valeurs[1]=Conf->Coul_menu_pref[2].V;
|
||||
Valeurs[2]=Conf->Coul_menu_pref[2].B;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Light_color",3,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Coul_menu_pref[1].R;
|
||||
Valeurs[1]=Conf->Coul_menu_pref[1].V;
|
||||
Valeurs[2]=Conf->Coul_menu_pref[1].B;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Dark_color",3,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Ratio;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Menu_ratio",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=(Conf->Fonte)+1;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Font",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[FILE_SELECTOR]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_fichiers_caches?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_files",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_repertoires_caches?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_directories",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_repertoires_systemes?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_system_directories",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Chrono_delay;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Preview_delay",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Maximize_preview;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Maximize_preview",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Find_file_fast;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Find_file_fast",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[LOADING]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_set_res;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_set_resolution",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Set_resolution_according_to;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Set_resolution_according_to",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Clear_palette;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_palette",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MISCELLANEOUS]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Afficher_limites_image;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Draw_limits",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Adjust_brush_pick;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Adjust_brush_pick",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=2-Conf->Coords_rel;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Coordinates",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Backup;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Backup",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Nb_pages_Undo;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Undo_pages",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Valeur_tempo_jauge_gauche;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Left",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Valeur_tempo_jauge_droite;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Right",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_save;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_save",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Nb_max_de_vertex_par_polygon;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Vertices_per_polygon",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Fast_zoom;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Fast_zoom",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Couleurs_separees;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Separate_colors",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->FX_Feedback;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"FX_feedback",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Safety_colors;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Safety_colors",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Opening_message;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Opening_message",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Clear_with_stencil;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_with_stencil",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_discontinuous;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_discontinuous",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Taille_ecran_dans_GIF;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Save_screen_size_in_GIF",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_nb_used;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_nb_colors_used",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Resolution_par_defaut;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Default_video_mode",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Sauver_INI_Flush(Ancien_fichier,Nouveau_fichier,Buffer);
|
||||
|
||||
fclose(Nouveau_fichier);
|
||||
}
|
||||
else
|
||||
{
|
||||
fclose(Ancien_fichier);
|
||||
goto Erreur_ERREUR_SAUVEGARDE_INI;
|
||||
}
|
||||
|
||||
fclose(Ancien_fichier);
|
||||
}
|
||||
else
|
||||
// On récupère un fichier INI "propre" dans GFX2.DAT
|
||||
strcpy(Nom_du_fichier_DAT,Repertoire_du_programme);
|
||||
strcat(Nom_du_fichier_DAT,"gfx2.dat");
|
||||
Ancien_fichier=fopen(Nom_du_fichier_DAT,"rb");
|
||||
if (Ancien_fichier==0)
|
||||
{
|
||||
free(Nom_du_fichier_temporaire);
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return ERREUR_INI_ABSENT;
|
||||
fclose(Ancien_fichier);
|
||||
return ERREUR_DAT_ABSENT;
|
||||
}
|
||||
if (fseek(Ancien_fichier, DAT_DEBUT_INI_PAR_DEFAUT, SEEK_SET))
|
||||
{
|
||||
fclose(Ancien_fichier);
|
||||
return ERREUR_DAT_CORROMPU;
|
||||
}
|
||||
Nouveau_fichier=fopen(Nom_du_fichier,"wb");
|
||||
if (Nouveau_fichier==0)
|
||||
{
|
||||
free(Buffer);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
}
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MOUSE]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Indice_Sensibilite_souris_X;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_sensitivity",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Indice_Sensibilite_souris_Y;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_sensitivity",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Mouse_Facteur_de_correction_X;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_correction_factor",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Mouse_Facteur_de_correction_Y;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_correction_factor",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=(Conf->Curseur)+1;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Cursor_aspect",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MENU]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Coul_menu_pref[2].R;
|
||||
Valeurs[1]=Conf->Coul_menu_pref[2].V;
|
||||
Valeurs[2]=Conf->Coul_menu_pref[2].B;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Light_color",3,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Coul_menu_pref[1].R;
|
||||
Valeurs[1]=Conf->Coul_menu_pref[1].V;
|
||||
Valeurs[2]=Conf->Coul_menu_pref[1].B;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Dark_color",3,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Ratio;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Menu_ratio",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=(Conf->Fonte)+1;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Font",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[FILE_SELECTOR]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_fichiers_caches?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_files",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_repertoires_caches?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_directories",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Lire_les_repertoires_systemes?1:0;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_system_directories",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Chrono_delay;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Preview_delay",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Maximize_preview;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Maximize_preview",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Find_file_fast;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Find_file_fast",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[LOADING]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_set_res;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_set_resolution",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Set_resolution_according_to;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Set_resolution_according_to",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Clear_palette;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_palette",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((Retour=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MISCELLANEOUS]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Afficher_limites_image;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Draw_limits",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Adjust_brush_pick;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Adjust_brush_pick",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=2-Conf->Coords_rel;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Coordinates",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Backup;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Backup",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Nb_pages_Undo;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Undo_pages",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Valeur_tempo_jauge_gauche;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Left",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Valeur_tempo_jauge_droite;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Right",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_save;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_save",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Nb_max_de_vertex_par_polygon;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Vertices_per_polygon",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Fast_zoom;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Fast_zoom",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Couleurs_separees;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Separate_colors",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->FX_Feedback;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"FX_feedback",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Safety_colors;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Safety_colors",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Opening_message;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Opening_message",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Clear_with_stencil;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_with_stencil",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_discontinuous;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_discontinuous",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Taille_ecran_dans_GIF;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Save_screen_size_in_GIF",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Auto_nb_used;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_nb_colors_used",1,Valeurs,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Valeurs[0]=Conf->Resolution_par_defaut;
|
||||
if ((Retour=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Default_video_mode",1,Valeurs,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
Sauver_INI_Flush(Ancien_fichier,Nouveau_fichier,Buffer);
|
||||
|
||||
fclose(Nouveau_fichier);
|
||||
fclose(Ancien_fichier);
|
||||
|
||||
// On efface le fichier temporaire <=> Ancienne version du .INI
|
||||
remove(Nom_du_fichier_temporaire);
|
||||
|
||||
free(Nom_du_fichier_temporaire);
|
||||
free(Nom_du_fichier);
|
||||
if (Ini_existe)
|
||||
remove(Nom_du_fichier_temporaire);
|
||||
free(Buffer);
|
||||
return 0;
|
||||
|
||||
@ -491,15 +495,11 @@ int Sauver_INI(struct S_Config * Conf)
|
||||
|
||||
fclose(Nouveau_fichier);
|
||||
fclose(Ancien_fichier);
|
||||
free(Nom_du_fichier_temporaire);
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return Retour;
|
||||
|
||||
Erreur_ERREUR_SAUVEGARDE_INI:
|
||||
|
||||
free(Nom_du_fichier_temporaire);
|
||||
free(Nom_du_fichier);
|
||||
free(Buffer);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user