Refactored the "#ifndef __macosx__" that were around every SDL_UpdateRect().
Redraw method is now defined once, in sdlscreen.c git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@266 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
		
							parent
							
								
									a11b928e3d
								
							
						
					
					
						commit
						9770d70f2a
					
				
							
								
								
									
										12
									
								
								Makefile.dep
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								Makefile.dep
									
									
									
									
									
								
							@ -13,9 +13,9 @@ 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 \
 | 
			
		||||
  graph.h moteur.h readline.h files.h init.h boutons.h operatio.h pages.h \
 | 
			
		||||
  erreurs.h readini.h saveini.h shade.h io.h aide.h
 | 
			
		||||
  erreurs.h readini.h saveini.h shade.h io.h aide.h sdlscreen.h
 | 
			
		||||
palette.o: palette.c const.h struct.h global.h loadsave.h divers.h \
 | 
			
		||||
  graph.h moteur.h readline.h boutons.h pages.h
 | 
			
		||||
  graph.h moteur.h readline.h boutons.h pages.h aide.h sdlscreen.h
 | 
			
		||||
aide.o: aide.c const.h struct.h global.h loadsave.h divers.h graph.h \
 | 
			
		||||
  moteur.h tables_aide.h aide.h
 | 
			
		||||
operatio.o: operatio.c const.h struct.h global.h loadsave.h divers.h \
 | 
			
		||||
@ -23,11 +23,11 @@ operatio.o: operatio.c const.h struct.h global.h loadsave.h divers.h \
 | 
			
		||||
pages.o: pages.c global.h struct.h const.h loadsave.h pages.h graph.h \
 | 
			
		||||
  erreurs.h linux.h
 | 
			
		||||
loadsave.o: loadsave.c const.h struct.h global.h loadsave.h graph.h \
 | 
			
		||||
  divers.h pages.h op_c.h boutons.h erreurs.h linux.h io.h
 | 
			
		||||
  divers.h pages.h op_c.h boutons.h erreurs.h linux.h io.h sdlscreen.h
 | 
			
		||||
readline.o: readline.c const.h struct.h global.h loadsave.h graph.h \
 | 
			
		||||
  divers.h erreurs.h linux.h
 | 
			
		||||
  divers.h erreurs.h linux.h sdlscreen.h
 | 
			
		||||
moteur.o: moteur.c const.h struct.h global.h loadsave.h graph.h divers.h \
 | 
			
		||||
  special.h boutons.h operatio.h shade.h erreurs.h linux.h
 | 
			
		||||
  special.h boutons.h operatio.h shade.h erreurs.h linux.h sdlscreen.h
 | 
			
		||||
files.o: files.c const.h struct.h global.h loadsave.h graph.h divers.h \
 | 
			
		||||
  erreurs.h linux.h
 | 
			
		||||
op_c.o: op_c.c op_c.h struct.h const.h op_asm.h erreurs.h
 | 
			
		||||
@ -37,7 +37,7 @@ readini.o: readini.c const.h global.h struct.h loadsave.h graph.h
 | 
			
		||||
saveini.o: saveini.c const.h global.h struct.h loadsave.h readini.h \
 | 
			
		||||
  files.h erreurs.h graph.h
 | 
			
		||||
shade.o: shade.c global.h struct.h const.h loadsave.h graph.h moteur.h \
 | 
			
		||||
  divers.h readline.h
 | 
			
		||||
  divers.h readline.h aide.h sdlscreen.h
 | 
			
		||||
clavier.o: clavier.c global.h struct.h const.h loadsave.h
 | 
			
		||||
io.o: io.c struct.h const.h io.h
 | 
			
		||||
gfxcfg.o: gfxcfg.c SFont.h struct.h const.h clavier.h io.h hotkeys.h
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										12
									
								
								aide.c
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								aide.c
									
									
									
									
									
								
							@ -141,9 +141,7 @@ void Afficher_aide(void)
 | 
			
		||||
           Menu_Facteur_Y<<3,
 | 
			
		||||
           CM_Noir);
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+13*Menu_Facteur_X,Fenetre_Pos_Y+19*Menu_Facteur_Y,44*6*Menu_Facteur_X,16*8*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+13*Menu_Facteur_X,Fenetre_Pos_Y+19*Menu_Facteur_Y,44*6*Menu_Facteur_X,16*8*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -220,9 +218,7 @@ void Fenetre_aide(int Section, const char *Sous_section)
 | 
			
		||||
 | 
			
		||||
  Afficher_aide();
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,310*Menu_Facteur_X,175*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,310*Menu_Facteur_X,175*Menu_Facteur_Y);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
@ -398,9 +394,7 @@ void Bouton_Stats(void)
 | 
			
		||||
  sprintf(Buffer,"%dx%d",Largeur_ecran,Hauteur_ecran);
 | 
			
		||||
  Print_dans_fenetre(106,99,Buffer,STATS_COULEUR_DONNEES,CM_Noir);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*174);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*174);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										66
									
								
								boutons.c
									
									
									
									
									
								
							
							
						
						
									
										66
									
								
								boutons.c
									
									
									
									
									
								
							@ -46,6 +46,7 @@
 | 
			
		||||
#include "shade.h"
 | 
			
		||||
#include "io.h"
 | 
			
		||||
#include "aide.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
#ifdef __WATCOMC__
 | 
			
		||||
    #include <windows.h>
 | 
			
		||||
@ -55,11 +56,8 @@
 | 
			
		||||
 | 
			
		||||
#define FILENAMESPACE 13
 | 
			
		||||
 | 
			
		||||
#ifdef __macosx__
 | 
			
		||||
#define Display_Window(X,Y)
 | 
			
		||||
#else
 | 
			
		||||
#define Display_Window(X,Y) SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,X*Menu_Facteur_X,Y*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
#define Display_Window(X,Y) UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,X*Menu_Facteur_X,Y*Menu_Facteur_Y);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
//-- MODELE DE BOUTON DE MENU ------------------------------------------------
 | 
			
		||||
/*
 | 
			
		||||
@ -1243,10 +1241,8 @@ void Cocher_bouton_mode(short Pos_X, short Pos_Y, byte Etat)
 | 
			
		||||
  Block(Fenetre_Pos_X+Menu_Facteur_X*Pos_X,Fenetre_Pos_Y+Menu_Facteur_Y*Pos_Y,
 | 
			
		||||
        Menu_Facteur_X*9,Menu_Facteur_Y*3,Couleur);
 | 
			
		||||
        
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+Menu_Facteur_X*Pos_X,Fenetre_Pos_Y+Menu_Facteur_Y*Pos_Y,
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+Menu_Facteur_X*Pos_X,Fenetre_Pos_Y+Menu_Facteur_Y*Pos_Y,
 | 
			
		||||
        Menu_Facteur_X*9,Menu_Facteur_Y*3);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1754,10 +1750,8 @@ void Degrade_Dessiner_bouton_de_technique(short Pos_X,short Pos_Y,int Technique)
 | 
			
		||||
        }
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+((Pos_X+2)*Menu_Facteur_X),Fenetre_Pos_Y+((Pos_Y+2)*Menu_Facteur_Y),
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+((Pos_X+2)*Menu_Facteur_X),Fenetre_Pos_Y+((Pos_Y+2)*Menu_Facteur_Y),
 | 
			
		||||
                    Menu_Facteur_X*10,Menu_Facteur_Y*10);  
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Degrade_Charger_infos_du_tableau(int Indice)
 | 
			
		||||
@ -1805,9 +1799,7 @@ void Degrade_Dessiner_preview(short Debut_X,short Debut_Y,short Largeur,short Ha
 | 
			
		||||
  for (Pos_Y=Debut_Y;Pos_Y<Fin_Y;Pos_Y++)
 | 
			
		||||
    for (Pos_X=Debut_X;Pos_X<Fin_X;Pos_X++)
 | 
			
		||||
      Traiter_degrade(Pos_X-Debut_X,Pos_X,Pos_Y);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Largeur*Menu_Facteur_X,Hauteur*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Debut_X,Debut_Y,Largeur*Menu_Facteur_X,Hauteur*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Bouton_Degrades(void)
 | 
			
		||||
@ -2236,9 +2228,7 @@ void Preparer_et_afficher_liste_fichiers(short Position, short Decalage,
 | 
			
		||||
  // On affiche les nouveaux:
 | 
			
		||||
  Afficher_la_liste_des_fichiers(Position,Decalage);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X<<3),Fenetre_Pos_Y+(Menu_Facteur_Y*(89+FILENAMESPACE)),Menu_Facteur_X*98,Menu_Facteur_Y*82);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Menu_Facteur_X<<3),Fenetre_Pos_Y+(Menu_Facteur_Y*(89+FILENAMESPACE)),Menu_Facteur_X*98,Menu_Facteur_Y*82);
 | 
			
		||||
 | 
			
		||||
  // On récupère le nom du schmilblick à "accéder"
 | 
			
		||||
  Determiner_element_de_la_liste(Position,Decalage,Principal_Nom_fichier);
 | 
			
		||||
@ -2855,9 +2845,7 @@ byte Bouton_Load_ou_Save(byte Load, byte Image)
 | 
			
		||||
          Print_dans_fenetre(46,175+FILENAMESPACE,Principal_Commentaire,CM_Noir,CM_Clair);
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+27*Menu_Facteur_X,Fenetre_Pos_Y+(55+FILENAMESPACE)*Menu_Facteur_Y,Menu_Facteur_X<<9,Menu_Facteur_Y<<4);
 | 
			
		||||
#endif
 | 
			
		||||
      	UpdateRect(Fenetre_Pos_X+27*Menu_Facteur_X,Fenetre_Pos_Y+(55+FILENAMESPACE)*Menu_Facteur_Y,Menu_Facteur_X<<9,Menu_Facteur_Y<<4);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      Nouvelle_preview=0;
 | 
			
		||||
@ -2877,9 +2865,7 @@ byte Bouton_Load_ou_Save(byte Load, byte Image)
 | 
			
		||||
 | 
			
		||||
        Effacer_curseur();
 | 
			
		||||
        Charger_image(Image);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,ToWinX(179),ToWinY(88+FILENAMESPACE),ToWinL(124),ToWinH(84));
 | 
			
		||||
#endif
 | 
			
		||||
      	UpdateRect(ToWinX(179),ToWinY(88+FILENAMESPACE),ToWinL(124),ToWinH(84));
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
        // Après le chargement de la preview, on restaure tout ce qui aurait
 | 
			
		||||
@ -3680,9 +3666,7 @@ void Bouton_Loupe(void)
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,0,0,0,0);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(0,0,0,0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3730,10 +3714,8 @@ void Bouton_Menu_Loupe(void)
 | 
			
		||||
    Desenclencher_bouton(BOUTON_LOUPE);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
    Afficher_ecran();
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Principal_Split,0,Largeur_ecran-Principal_Split,Menu_Ordonnee);
 | 
			
		||||
#endif
 | 
			
		||||
  Afficher_ecran();
 | 
			
		||||
  UpdateRect(Principal_Split,0,Largeur_ecran-Principal_Split,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
  if ( (Bouton_clicke>1) && (!Loupe_Mode) && (Operation_en_cours!=OPERATION_LOUPE) ) // Passage en mode zoom
 | 
			
		||||
  {
 | 
			
		||||
@ -4928,9 +4910,7 @@ void Dessiner_trame_zoomee(short Orig_X, short Orig_Y)
 | 
			
		||||
  for (Pos_Y=0; Pos_Y<Taille_Y; Pos_Y++)
 | 
			
		||||
    for (Pos_X=0; Pos_X<Taille_X; Pos_X++)
 | 
			
		||||
      Pixel(Debut_X+Pos_X,Debut_Y+Pos_Y,(Trame[Pos_X%Trame_Largeur][Pos_Y%Trame_Hauteur])?CM_Blanc:CM_Noir);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Taille_X,Taille_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Debut_X,Debut_Y,Taille_X,Taille_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4944,9 +4924,7 @@ void Dessiner_trames_predefinies(void)
 | 
			
		||||
      for (i=0; i<16; i++)
 | 
			
		||||
        Pixel_dans_fenetre((Indice*23)+10+i,22+j,
 | 
			
		||||
                           ((TRAME_PREDEFINIE[Indice][j]>>(15-i))&1)?CM_Blanc:CM_Noir);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,ToWinX(10),ToWinY(22),ToWinL(12*23+16),ToWinH(16));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(ToWinX(10),ToWinY(22),ToWinL(12*23+16),ToWinH(16));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4974,9 +4952,7 @@ void Inverser_trame(void)
 | 
			
		||||
// Rafraichit toute la zone correspondant à la trame zoomee.
 | 
			
		||||
void Mettre_a_jour_trame(short X, short Y)
 | 
			
		||||
{
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,X,Y,80*Menu_Facteur_X,80*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(X,Y,80*Menu_Facteur_X,80*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -5115,9 +5091,7 @@ void Bouton_Trame_Menu(void)
 | 
			
		||||
            Dessiner_trame_zoomee(Orig_X,Orig_Y);
 | 
			
		||||
            Afficher_curseur();
 | 
			
		||||
            // Maj de la case seule
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
            SDL_UpdateRect(Ecran_SDL,Orig_X+(Old_Pos_X*Pos_X), Orig_Y+(Old_Pos_Y*Pos_Y),Menu_Facteur_X*5,Menu_Facteur_Y*5);
 | 
			
		||||
#endif
 | 
			
		||||
            UpdateRect(Orig_X+(Old_Pos_X*Pos_X), Orig_Y+(Old_Pos_Y*Pos_Y),Menu_Facteur_X*5,Menu_Facteur_Y*5);
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
@ -5235,13 +5209,11 @@ void Bouton_Trame_Menu(void)
 | 
			
		||||
              Fenetre_Pos_Y+(Menu_Facteur_Y*(Bouton_Octet_insere->Pos_Y+2)),
 | 
			
		||||
              Menu_Facteur_X*7, Menu_Facteur_Y*7, (Octet_insere)?CM_Blanc:CM_Noir);
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,
 | 
			
		||||
        UpdateRect(
 | 
			
		||||
          Fenetre_Pos_X+(Menu_Facteur_X*(Bouton_Octet_insere->Pos_X+2)),
 | 
			
		||||
          Fenetre_Pos_Y+(Menu_Facteur_Y*(Bouton_Octet_insere->Pos_Y+2)),
 | 
			
		||||
          Menu_Facteur_X*7,
 | 
			
		||||
          Menu_Facteur_Y*7);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
@ -5390,9 +5362,7 @@ void Afficher_sprite_effet(short Numero_sprite, short Debut_X, short Debut_Y)
 | 
			
		||||
    for (X=0,Pos_X=Debut_X;X<LARGEUR_SPRITE_MENU;X++,Pos_X++)
 | 
			
		||||
      Pixel_dans_fenetre(Pos_X,Pos_Y,SPRITE_EFFET[Numero_sprite][Y][X]);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,ToWinX(Debut_X),ToWinY(Debut_Y),LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(ToWinX(Debut_X),ToWinY(Debut_Y),LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										15
									
								
								divers.c
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								divers.c
									
									
									
									
									
								
							@ -345,12 +345,9 @@ void Get_input(void)
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#ifdef __macosx__
 | 
			
		||||
    // Flush
 | 
			
		||||
  	SDL_UpdateRect(Ecran_SDL,0,0,0,0);
 | 
			
		||||
	//updaterect() waits for vblank on macosx
 | 
			
		||||
  // Vidage de toute mise à jour qui serait encore en attente.
 | 
			
		||||
  Flush_update();
 | 
			
		||||
	//SDL_Flip(Ecran_SDL); 
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -433,9 +430,7 @@ void Remplacer_une_couleur(byte Ancienne_couleur, byte Nouvelle_couleur)
 | 
			
		||||
	for(edi = Principal_Ecran;edi < Principal_Ecran + Principal_Hauteur_image * Principal_Largeur_image;edi++)
 | 
			
		||||
		if (*edi == Ancienne_couleur)
 | 
			
		||||
			*edi = Nouvelle_couleur;
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,0,0,0,0); // On pet TOUT a jour
 | 
			
		||||
#endif
 | 
			
		||||
	UpdateRect(0,0,0,0); // On peut TOUT a jour
 | 
			
		||||
	// C'est pas un problème car il n'y a pas de preview
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -860,9 +855,7 @@ void Scroll_picture(short Decalage_X,short Decalage_Y)
 | 
			
		||||
		esi += Principal_Largeur_image;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,0,0,0,0);
 | 
			
		||||
#endif
 | 
			
		||||
	UpdateRect(0,0,0,0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
word Get_key(void)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								gfx2.ini
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gfx2.ini
									
									
									
									
									
								
							@ -290,4 +290,4 @@
 | 
			
		||||
 | 
			
		||||
  ; Window dimensions. The program    | Dimensions de la fenêtre en mode 
 | 
			
		||||
  ; remembers the last window size.   | fenêtré.
 | 
			
		||||
  Default_window_size = 640,480	; (default '640,480')
 | 
			
		||||
  Default_window_size = 848,629	; (default '640,480')
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										205
									
								
								graph.c
									
									
									
									
									
								
							
							
						
						
									
										205
									
								
								graph.c
									
									
									
									
									
								
							@ -82,9 +82,7 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
 | 
			
		||||
	if(Y_effectif + Hauteur <= Menu_Ordonnee) H_effectif = Hauteur;
 | 
			
		||||
	else H_effectif = Menu_Ordonnee - Y_effectif;
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
 | 
			
		||||
#endif
 | 
			
		||||
	UpdateRect(X_effectif,Y_effectif,L_effectif,H_effectif);
 | 
			
		||||
 | 
			
		||||
	// Et ensuite dans la partie zoomée
 | 
			
		||||
	if(Loupe_Mode)
 | 
			
		||||
@ -110,9 +108,7 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
 | 
			
		||||
		r.h=r.w=3;
 | 
			
		||||
		SDL_FillRect(Ecran_SDL,&r,3);
 | 
			
		||||
*/
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
		SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
 | 
			
		||||
#endif
 | 
			
		||||
		UpdateRect(X_effectif,Y_effectif,L_effectif,H_effectif);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -329,10 +325,8 @@ void Afficher_palette_du_menu_en_evitant_la_fenetre(byte * Table)
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,(LARGEUR_MENU+1)*Menu_Facteur_X,Menu_Ordonnee*Menu_Facteur_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
//    SDL_UpdateRect(Ecran_SDL,LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
 | 
			
		||||
  UpdateRect((LARGEUR_MENU+1)*Menu_Facteur_X,Menu_Ordonnee*Menu_Facteur_Y,Largeur,Hauteur);
 | 
			
		||||
//    UpdateRect(LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -913,9 +907,7 @@ void Afficher_limites_de_l_image(void)
 | 
			
		||||
    for (Pos=Debut;Pos<=Fin;Pos++)
 | 
			
		||||
      Pixel_Preview(Principal_Largeur_image,Pos,((Pos+Principal_Hauteur_image)&1)?CM_Blanc:CM_Noir);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Principal_Largeur_image,Debut,1,Fin-Debut + 1);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(Principal_Largeur_image,Debut,1,Fin-Debut + 1);
 | 
			
		||||
    // On restaure la bonne valeur des limites
 | 
			
		||||
    Limite_Droite_Zoom=Ancienne_Limite_Zoom;
 | 
			
		||||
  }
 | 
			
		||||
@ -934,9 +926,7 @@ void Afficher_limites_de_l_image(void)
 | 
			
		||||
    for (Pos=Debut;Pos<=Fin;Pos++)
 | 
			
		||||
      Pixel_Preview(Pos,Principal_Hauteur_image,((Pos+Principal_Hauteur_image)&1)?CM_Blanc:CM_Noir);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Debut,Principal_Hauteur_image,Fin-Debut + 1,1);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(Debut,Principal_Hauteur_image,Fin-Debut + 1,1);
 | 
			
		||||
 | 
			
		||||
    // On restaure la bonne valeur des limites
 | 
			
		||||
    Limite_Bas_Zoom=Ancienne_Limite_Zoom;
 | 
			
		||||
@ -1225,9 +1215,7 @@ void Afficher_foreback(void)
 | 
			
		||||
    Block((LARGEUR_MENU-17)*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y,Menu_Facteur_X<<4,Menu_Facteur_Y*7,Back_color);
 | 
			
		||||
    Block((LARGEUR_MENU-13)*Menu_Facteur_X,Menu_Ordonnee+(Menu_Facteur_Y<<1),Menu_Facteur_X<<3,Menu_Facteur_Y*5,Fore_color);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,(LARGEUR_MENU-17)*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y,Menu_Facteur_X<<4,Menu_Facteur_Y*7);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect((LARGEUR_MENU-17)*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y,Menu_Facteur_X<<4,Menu_Facteur_Y*7);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1261,9 +1249,7 @@ void Encadrer_couleur_menu(byte Couleur)
 | 
			
		||||
        Block(Debut_X,Debut_Y,Menu_Taille_couleur*Menu_Facteur_X,
 | 
			
		||||
              Menu_Facteur_Y<<2,Fore_color);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Menu_Taille_couleur*Menu_Facteur_X,Menu_Facteur_Y*4); // TODO On met à jour toute la palette... peut mieux faire
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(Debut_X,Debut_Y,Menu_Taille_couleur*Menu_Facteur_X,Menu_Facteur_Y*4); // TODO On met à jour toute la palette... peut mieux faire
 | 
			
		||||
      }
 | 
			
		||||
      else
 | 
			
		||||
      {
 | 
			
		||||
@ -1293,9 +1279,7 @@ void Encadrer_couleur_menu(byte Couleur)
 | 
			
		||||
                Menu_Facteur_X,Menu_Facteur_Y,
 | 
			
		||||
                ((Indice+Fin_Y)&1)?CM_Blanc:CM_Noir);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,Debut_X*Menu_Facteur_X,Debut_Y*Menu_Facteur_X,Menu_Taille_couleur*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y*4);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(Debut_X*Menu_Facteur_X,Debut_Y*Menu_Facteur_X,Menu_Taille_couleur*Menu_Facteur_X,Menu_Ordonnee+Menu_Facteur_Y*4);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@ -1327,9 +1311,7 @@ void Afficher_palette_du_menu(void)
 | 
			
		||||
              Couleur_debut_palette+Couleur);
 | 
			
		||||
 | 
			
		||||
    Encadrer_couleur_menu(CM_Blanc);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(LARGEUR_MENU*Menu_Facteur_X,Menu_Ordonnee,Largeur_ecran-(LARGEUR_MENU*Menu_Facteur_X),(HAUTEUR_MENU-9)*Menu_Facteur_Y);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1394,9 +1376,7 @@ void Afficher_barre_de_split(void)
 | 
			
		||||
  Block(Principal_X_Zoom-(Menu_Facteur_X<<1),0,
 | 
			
		||||
        Menu_Facteur_X,Menu_Facteur_Y,CM_Clair);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Principal_Split,0,LARGEUR_BARRE_SPLIT*Menu_Facteur_X,Menu_Ordonnee); // On réaffiche toute la partie à gauche du split, ce qui permet d'effacer son ancienne position
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Principal_Split,0,LARGEUR_BARRE_SPLIT*Menu_Facteur_X,Menu_Ordonnee); // On réaffiche toute la partie à gauche du split, ce qui permet d'effacer son ancienne position
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Afficher tout le menu --
 | 
			
		||||
@ -1442,9 +1422,7 @@ void Afficher_menu(void)
 | 
			
		||||
      }
 | 
			
		||||
      Print_nom_fichier();
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,0,Menu_Ordonnee,Largeur_ecran,HAUTEUR_MENU*Menu_Facteur_Y); // on met toute la largur à jour, ça inclut la palette et la zone d'étant avec le nom du fichier
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(0,Menu_Ordonnee,Largeur_ecran,HAUTEUR_MENU*Menu_Facteur_Y); // on met toute la largur à jour, ça inclut la palette et la zone d'étant avec le nom du fichier
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1498,9 +1476,7 @@ void Print_general(short X,short Y,char * Chaine,byte Couleur_texte,byte Couleur
 | 
			
		||||
    for (Repeat_Menu_Facteur_Y=0;Repeat_Menu_Facteur_Y<Menu_Facteur_Y;Repeat_Menu_Facteur_Y++)
 | 
			
		||||
      Afficher_ligne(X,Reel_Y++,Largeur,Buffer_de_ligne_horizontale);
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,X,Y,Largeur,8*Menu_Facteur_Y); // TODO: pas utile dans Print_Dans_Fenetre, donc voir ou on en a vraiment besoin...
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(X,Y,Largeur,8*Menu_Facteur_Y); // TODO: pas utile dans Print_Dans_Fenetre, donc voir ou on en a vraiment besoin...
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Afficher un caractère dans une fenêtre --
 | 
			
		||||
@ -2107,11 +2083,9 @@ void Afficher_pinceau(short X,short Y,byte Couleur,byte Preview)
 | 
			
		||||
                Smear_Brosse[Position]=Couleur_temporaire;
 | 
			
		||||
              }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
              SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),
 | 
			
		||||
                Fin_Compteur_X,Fin_Compteur_Y
 | 
			
		||||
              );
 | 
			
		||||
#endif
 | 
			
		||||
            UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),
 | 
			
		||||
              Fin_Compteur_X,Fin_Compteur_Y
 | 
			
		||||
            );
 | 
			
		||||
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
@ -2216,11 +2190,9 @@ void Afficher_pinceau(short X,short Y,byte Couleur,byte Preview)
 | 
			
		||||
              }
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,
 | 
			
		||||
          UpdateRect(Debut_X,Debut_Y,
 | 
			
		||||
                Fin_Compteur_X,Fin_Compteur_Y
 | 
			
		||||
          );
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
          Smear_Min_X=Debut_Compteur_X;
 | 
			
		||||
          Smear_Min_Y=Debut_Compteur_Y;
 | 
			
		||||
@ -2235,9 +2207,7 @@ void Afficher_pinceau(short X,short Y,byte Couleur,byte Preview)
 | 
			
		||||
              if (Pinceau_Sprite[(TAILLE_MAXI_PINCEAU*Compteur_Y)+Compteur_X])
 | 
			
		||||
                Afficher_pixel(Pos_X,Pos_Y,Couleur);
 | 
			
		||||
            }
 | 
			
		||||
	  #ifndef __macosx__
 | 
			
		||||
	    Mettre_Ecran_A_Jour(X,Y,Largeur,Hauteur);
 | 
			
		||||
	  #endif
 | 
			
		||||
	        Mettre_Ecran_A_Jour(X,Y,Largeur,Hauteur);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
  }
 | 
			
		||||
@ -2392,9 +2362,7 @@ void Ligne_horizontale_XOR_Zoom(short Pos_X, short Pos_Y, short Largeur)
 | 
			
		||||
  for (Indice=Pos_Y_reelle; Indice<Pos_Y_Fin; Indice++)
 | 
			
		||||
    Ligne_horizontale_XOR(Pos_X_reelle,Indice,Largeur_reelle);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Pos_X_reelle,Pos_Y_reelle,Largeur_reelle,Pos_Y_Fin-Pos_Y_reelle);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Pos_X_reelle,Pos_Y_reelle,Largeur_reelle,Pos_Y_Fin-Pos_Y_reelle);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -2410,9 +2378,7 @@ void Ligne_verticale_XOR_Zoom(short Pos_X, short Pos_Y, short Hauteur)
 | 
			
		||||
  for (Indice=Pos_Y_reelle; Indice<Pos_Y_Fin; Indice++)
 | 
			
		||||
    Ligne_horizontale_XOR(Pos_X_reelle,Indice,Loupe_Facteur);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Pos_X_reelle,Pos_Y_reelle,Loupe_Facteur,Pos_Y_Fin-Pos_Y_reelle);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Pos_X_reelle,Pos_Y_reelle,Loupe_Facteur,Pos_Y_Fin-Pos_Y_reelle);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -2468,9 +2434,7 @@ void Afficher_curseur(void)
 | 
			
		||||
          if (Fin_Y<4)
 | 
			
		||||
            Ligne_verticale_XOR  (Mouse_X,Mouse_Y+3,4-Fin_Y);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
@ -2479,23 +2443,21 @@ void Afficher_curseur(void)
 | 
			
		||||
          Debut_Y=Mouse_Y-Curseur_Decalage_Y[Temp];
 | 
			
		||||
 | 
			
		||||
          for (Pos_X=Debut_X,Compteur_X=0;Compteur_X<15;Pos_X++,Compteur_X++)
 | 
			
		||||
	  {
 | 
			
		||||
	    if( Pos_X < 0 ) continue;
 | 
			
		||||
	        {
 | 
			
		||||
	          if( Pos_X < 0 ) continue;
 | 
			
		||||
            for (Pos_Y=Debut_Y,Compteur_Y=0;Compteur_Y<15;Pos_Y++,Compteur_Y++)
 | 
			
		||||
            {
 | 
			
		||||
	      if( Pos_Y < 0 ) continue;
 | 
			
		||||
	            if( Pos_Y < 0 ) continue;
 | 
			
		||||
              Couleur=SPRITE_CURSEUR[Temp][Compteur_Y][Compteur_X];
 | 
			
		||||
              FOND_CURSEUR[Compteur_Y][Compteur_X]=Lit_pixel(Pos_X,Pos_Y);
 | 
			
		||||
              if (Couleur!=CM_Trans)
 | 
			
		||||
                  Pixel(Pos_X,Pos_Y,Couleur);
 | 
			
		||||
	      if (Pos_Y > Hauteur_ecran) break;
 | 
			
		||||
                Pixel(Pos_X,Pos_Y,Couleur);
 | 
			
		||||
	            if (Pos_Y > Hauteur_ecran) break;
 | 
			
		||||
            }
 | 
			
		||||
	    if (Pos_X >= Largeur_ecran) break;
 | 
			
		||||
	  }
 | 
			
		||||
	          if (Pos_X >= Largeur_ecran) break;
 | 
			
		||||
	        }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),Compteur_X,Compteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),Compteur_X,Compteur_Y);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      break;
 | 
			
		||||
@ -2561,9 +2523,7 @@ void Afficher_curseur(void)
 | 
			
		||||
                  Pixel(Pos_X,Pos_Y,Couleur);
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,16,16);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Debut_X,Debut_Y,16,16);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      break;
 | 
			
		||||
@ -2588,9 +2548,7 @@ void Afficher_curseur(void)
 | 
			
		||||
              Pixel(Pos_X,Pos_Y,Couleur);
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
      break;
 | 
			
		||||
    case FORME_CURSEUR_CIBLE_XOR :
 | 
			
		||||
      Pos_X=Pinceau_X-Principal_Decalage_X;
 | 
			
		||||
@ -2600,17 +2558,13 @@ void Afficher_curseur(void)
 | 
			
		||||
      if ((Pos_Y<Menu_Ordonnee) && (Pinceau_Y>=Limite_Haut))
 | 
			
		||||
      {
 | 
			
		||||
        Ligne_horizontale_XOR(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if ((Pos_X<Compteur_X) && (Pinceau_X>=Limite_Gauche))
 | 
			
		||||
      {
 | 
			
		||||
        Ligne_verticale_XOR(Pinceau_X-Principal_Decalage_X,0,Menu_Ordonnee);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (Loupe_Mode)
 | 
			
		||||
@ -2661,9 +2615,7 @@ void Afficher_curseur(void)
 | 
			
		||||
      Ligne_verticale_XOR(  Fin_X,Debut_Y+1,Loupe_Hauteur-2);
 | 
			
		||||
      Ligne_horizontale_XOR(Debut_X,  Fin_Y,Loupe_Largeur);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
 | 
			
		||||
 | 
			
		||||
      break;
 | 
			
		||||
    default: //case FORME_CURSEUR_ROTATE_XOR :
 | 
			
		||||
@ -2780,9 +2732,7 @@ void Effacer_curseur(void)
 | 
			
		||||
          if (Fin_Y<4)
 | 
			
		||||
            Ligne_verticale_XOR  (Mouse_X,Mouse_Y+3,4-Fin_Y);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Mouse_X+Debut_X-6,Mouse_Y+Debut_Y-6,12-Fin_X,12-Fin_Y);
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
@ -2791,19 +2741,17 @@ void Effacer_curseur(void)
 | 
			
		||||
          Debut_Y=Mouse_Y-Curseur_Decalage_Y[Temp];
 | 
			
		||||
 | 
			
		||||
          for (Pos_Y=Debut_Y,Compteur_Y=0;Compteur_Y<15;Pos_Y++,Compteur_Y++)
 | 
			
		||||
	  {
 | 
			
		||||
	    if(Pos_Y>=Hauteur_ecran) break;
 | 
			
		||||
          {
 | 
			
		||||
            if(Pos_Y>=Hauteur_ecran) break;
 | 
			
		||||
            for (Pos_X=Debut_X,Compteur_X=0;Compteur_X<15;Pos_X++,Compteur_X++)
 | 
			
		||||
	    {
 | 
			
		||||
            {
 | 
			
		||||
              if ( (Pos_X<0) || (Pos_Y < 0)) continue;
 | 
			
		||||
	      else if (Pos_X>=Largeur_ecran) break;
 | 
			
		||||
              else if (Pos_X>=Largeur_ecran) break;
 | 
			
		||||
              Pixel(Pos_X,Pos_Y,FOND_CURSEUR[Compteur_Y][Compteur_X]);
 | 
			
		||||
	    }
 | 
			
		||||
	  }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),Pos_X-Debut_X,Pos_Y-Debut_Y);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),Pos_X-Debut_X,Pos_Y-Debut_Y);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      if (!Cacher_pinceau)
 | 
			
		||||
@ -2851,9 +2799,7 @@ void Effacer_curseur(void)
 | 
			
		||||
          if (Mouse_Y<Menu_Ordonnee-6)
 | 
			
		||||
            Ligne_horizontale_XOR(Debut_X+Mouse_X-1,Mouse_Y+6,3-(Debut_X+Fin_X));
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X-Debut_X,Fin_Y-Debut_Y);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Debut_X,Debut_Y,Fin_X-Debut_X,Fin_Y-Debut_Y);
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
@ -2866,9 +2812,7 @@ void Effacer_curseur(void)
 | 
			
		||||
              if ( (Pos_X>=0) && (Pos_X<Largeur_ecran) && (Pos_Y>=0) && (Pos_Y<Hauteur_ecran) )
 | 
			
		||||
                Pixel(Pos_X,Pos_Y,FOND_CURSEUR[Compteur_Y][Compteur_X]);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
#endif
 | 
			
		||||
          UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      if (!Cacher_pinceau)
 | 
			
		||||
@ -2888,9 +2832,7 @@ void Effacer_curseur(void)
 | 
			
		||||
          if ( (Pos_X<Largeur_ecran) && (Pos_Y<Hauteur_ecran)
 | 
			
		||||
            && (Pos_X>=0)            && (Pos_Y>=0) )
 | 
			
		||||
            Pixel(Pos_X,Pos_Y,FOND_CURSEUR[Compteur_Y][Compteur_X]);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Max(Debut_X,0),Max(Debut_Y,0),16,16);
 | 
			
		||||
      break;
 | 
			
		||||
 | 
			
		||||
    case FORME_CURSEUR_CIBLE_XOR :
 | 
			
		||||
@ -2901,17 +2843,13 @@ void Effacer_curseur(void)
 | 
			
		||||
      if ((Pos_Y<Menu_Ordonnee) && (Pinceau_Y>=Limite_Haut))
 | 
			
		||||
      {
 | 
			
		||||
        Ligne_horizontale_XOR(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(0,Pinceau_Y-Principal_Decalage_Y,Compteur_X,1);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if ((Pos_X<Compteur_X) && (Pinceau_X>=Limite_Gauche))
 | 
			
		||||
      {
 | 
			
		||||
        Ligne_verticale_XOR(Pinceau_X-Principal_Decalage_X,0,Menu_Ordonnee);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(Pinceau_X-Principal_Decalage_X,0,1,Menu_Ordonnee);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (Loupe_Mode)
 | 
			
		||||
@ -2965,9 +2903,7 @@ void Effacer_curseur(void)
 | 
			
		||||
      Ligne_verticale_XOR(  Fin_X,Debut_Y+1,Loupe_Hauteur-2);
 | 
			
		||||
      Ligne_horizontale_XOR(Debut_X,  Fin_Y,Loupe_Largeur);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Debut_X,Debut_Y,Fin_X+1-Debut_X,Fin_Y+1-Debut_Y);
 | 
			
		||||
 | 
			
		||||
      break;
 | 
			
		||||
    default: //case FORME_CURSEUR_ROTATE_XOR :
 | 
			
		||||
@ -3053,9 +2989,7 @@ byte Demande_de_confirmation(char * Message)
 | 
			
		||||
  Fenetre_Definir_bouton_normal((Largeur_de_la_fenetre/3)-20     ,37,40,14,"Yes",1,1,SDLK_y); // 1
 | 
			
		||||
  Fenetre_Definir_bouton_normal(((Largeur_de_la_fenetre<<1)/3)-20,37,40,14,"No" ,1,1,SDLK_n); // 2
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
@ -3089,9 +3023,7 @@ void Warning_message(char * Message)
 | 
			
		||||
 | 
			
		||||
  Print_dans_fenetre((Largeur_de_la_fenetre>>1)-(strlen(Message)<<2),20,Message,CM_Noir,CM_Clair);
 | 
			
		||||
  Fenetre_Definir_bouton_normal((Largeur_de_la_fenetre>>1)-20     ,37,40,14,"OK",1,1,SDLK_RETURN); // 1
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*Largeur_de_la_fenetre,Menu_Facteur_Y*60);
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
  do
 | 
			
		||||
@ -3180,9 +3112,7 @@ void Afficher_ecran(void)
 | 
			
		||||
  // ---/\/\/\ Affichage des limites /\/\/\---
 | 
			
		||||
  if (Config.Afficher_limites_image)
 | 
			
		||||
    Afficher_limites_de_l_image();
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,0,0,Largeur_ecran,Menu_Ordonnee); // TODO On peut faire plus fin, en évitant de mettre à jour la partie à droite du split quand on est en mode loupe. Mais c'est pas vraiment intéressant ?
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(0,0,Largeur_ecran,Menu_Ordonnee); // TODO On peut faire plus fin, en évitant de mettre à jour la partie à droite du split quand on est en mode loupe. Mais c'est pas vraiment intéressant ?
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Redessiner le sprite d'un bouton dans le menu --
 | 
			
		||||
@ -3202,11 +3132,9 @@ void Afficher_sprite_dans_menu(int Numero_bouton,int Numero_sprite)
 | 
			
		||||
      Pixel_dans_menu(Pos_menu_X,Pos_menu_Y,Couleur);
 | 
			
		||||
      BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Menu_Facteur_X*(Bouton[Numero_bouton].Decalage_X+1),
 | 
			
		||||
  	(Bouton[Numero_bouton].Decalage_Y+1)*Menu_Facteur_Y+Menu_Ordonnee,
 | 
			
		||||
  	LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Menu_Facteur_X*(Bouton[Numero_bouton].Decalage_X+1),
 | 
			
		||||
    (Bouton[Numero_bouton].Decalage_Y+1)*Menu_Facteur_Y+Menu_Ordonnee,
 | 
			
		||||
    LARGEUR_SPRITE_MENU*Menu_Facteur_X,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Redessiner la forme du pinceau dans le menu --
 | 
			
		||||
@ -3266,9 +3194,7 @@ void Afficher_pinceau_dans_menu(void)
 | 
			
		||||
          BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
 | 
			
		||||
        }
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,0,Menu_Ordonnee,LARGEUR_SPRITE_MENU*Menu_Facteur_X+3,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y+3);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(0,Menu_Ordonnee,LARGEUR_SPRITE_MENU*Menu_Facteur_X+3,HAUTEUR_SPRITE_MENU*Menu_Facteur_Y+3);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Dessiner un pinceau prédéfini dans la fenêtre --
 | 
			
		||||
@ -3288,12 +3214,10 @@ void Afficher_pinceau_dans_fenetre(word X,word Y,int Numero)
 | 
			
		||||
    for (Pos_fenetre_X=Orig_X,Pos_X=0; Pos_X<Pinceau_predefini_Largeur[Numero]; Pos_fenetre_X++,Pos_X++)
 | 
			
		||||
      Pixel_dans_fenetre(Pos_fenetre_X,Pos_fenetre_Y,(SPRITE_PINCEAU[Numero][Pos_Y][Pos_X])?CM_Noir:CM_Clair);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL, ToWinX(Orig_X), ToWinY(Orig_Y),
 | 
			
		||||
  UpdateRect( ToWinX(Orig_X), ToWinY(Orig_Y),
 | 
			
		||||
        ToWinL(Pinceau_predefini_Largeur[Numero]), 
 | 
			
		||||
        ToWinH(Pinceau_predefini_Hauteur[Numero])
 | 
			
		||||
  );
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- Dessiner des zigouigouis --
 | 
			
		||||
@ -3336,9 +3260,7 @@ void Bloc_degrade_dans_fenetre(word Pos_X,word Pos_Y,word Debut_block,word Fin_b
 | 
			
		||||
  for (Indice=Debut_Y;Indice<Fin_Y;Indice++,Ligne_en_cours++)
 | 
			
		||||
    Block(Debut_X,Indice,Largeur_ligne,1,Debut_block+(Nb_couleurs*Ligne_en_cours)/Total_lignes);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(16),ToWinH(64));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(16),ToWinH(64));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3385,9 +3307,7 @@ void Fenetre_Afficher_sprite_drive(word Pos_X,word Pos_Y,byte Type)
 | 
			
		||||
  for (j=0; j<HAUTEUR_SPRITE_DRIVE; j++)
 | 
			
		||||
    for (i=0; i<LARGEUR_SPRITE_DRIVE; i++)
 | 
			
		||||
      Pixel_dans_fenetre(Pos_X+i,Pos_Y+j,SPRITE_DRIVE[Type][j][i]);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(LARGEUR_SPRITE_DRIVE),ToWinH(HAUTEUR_SPRITE_DRIVE));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(ToWinX(Pos_X),ToWinY(Pos_Y),ToWinL(LARGEUR_SPRITE_DRIVE),ToWinH(HAUTEUR_SPRITE_DRIVE));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4187,9 +4107,7 @@ void Remplir(byte Couleur_de_remplissage)
 | 
			
		||||
    // par l'utilisation de "Afficher_pixel()", et que les autres... eh bein
 | 
			
		||||
    // on n'y a jamais touché à l'écran les autres: ils sont donc corrects.
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,0,0,0,0);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(0,0,0,0);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -5759,10 +5677,7 @@ void Etirer_brosse_preview(short X1, short Y1, short X2, short Y2)
 | 
			
		||||
 | 
			
		||||
    Pos_Y_src+=Delta_Y;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Pos_X_dest_Initiale,Pos_Y_dest_Initiale,Largeur_dest,Hauteur_dest);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Pos_X_dest_Initiale,Pos_Y_dest_Initiale,Largeur_dest,Hauteur_dest);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -40,6 +40,7 @@
 | 
			
		||||
#include "erreurs.h"
 | 
			
		||||
#include "linux.h"
 | 
			
		||||
#include "io.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
#define FILENAMESPACE 13
 | 
			
		||||
 | 
			
		||||
@ -331,12 +332,10 @@ void Dessiner_preview_palette(void)
 | 
			
		||||
            Preview_Pos_Y+(((Indice&15)*5)*Menu_Facteur_Y),
 | 
			
		||||
            5*Menu_Facteur_X,5*Menu_Facteur_Y,Indice);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,
 | 
			
		||||
  UpdateRect(
 | 
			
		||||
    Preview_Pos_X*Menu_Facteur_X,
 | 
			
		||||
  Preview_Pos_Y*Menu_Facteur_Y,
 | 
			
		||||
  5*Menu_Facteur_X*256,5*Menu_Facteur_Y*256);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										47
									
								
								moteur.c
									
									
									
									
									
								
							
							
						
						
									
										47
									
								
								moteur.c
									
									
									
									
									
								
							@ -36,6 +36,7 @@
 | 
			
		||||
#include "shade.h"
 | 
			
		||||
#include "erreurs.h"
 | 
			
		||||
#include "linux.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
//---------- Annuler les effets des modes de dessin (sauf la grille) ---------
 | 
			
		||||
 | 
			
		||||
@ -303,13 +304,11 @@ void Tracer_cadre_de_bouton_du_menu(byte Numero,byte Enfonce)
 | 
			
		||||
        BLOCK_MENU[Fin_Y-Pos_X][Fin_X]=Couleur_Bas_droite;
 | 
			
		||||
      }
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,
 | 
			
		||||
  UpdateRect(
 | 
			
		||||
        Debut_X*Menu_Facteur_X,
 | 
			
		||||
        Debut_Y*Menu_Facteur_Y + Menu_Ordonnee,
 | 
			
		||||
        (Fin_X+1-Debut_X)*Menu_Facteur_X,
 | 
			
		||||
        (Fin_Y+1-Debut_Y)*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -429,9 +428,7 @@ void Deplacer_Split(void)
 | 
			
		||||
      Ligne_verticale_XOR(Ancien_Split,0,Menu_Ordonnee);
 | 
			
		||||
      Ligne_verticale_XOR(Ancien_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Ancien_Split,0,abs(Ancien_Split-Ancien_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Ancien_Split,0,abs(Ancien_Split-Ancien_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      Ancien_Split=Principal_Split;
 | 
			
		||||
      Ancien_X_Zoom=Principal_X_Zoom;
 | 
			
		||||
@ -440,9 +437,7 @@ void Deplacer_Split(void)
 | 
			
		||||
      Ligne_verticale_XOR(Principal_Split,0,Menu_Ordonnee);
 | 
			
		||||
      Ligne_verticale_XOR(Principal_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
      SDL_UpdateRect(Ecran_SDL,Principal_Split,0,abs(Principal_Split-Principal_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
#endif
 | 
			
		||||
      UpdateRect(Principal_Split,0,abs(Principal_Split-Principal_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      Afficher_curseur();
 | 
			
		||||
    }
 | 
			
		||||
@ -1110,9 +1105,7 @@ void Fermer_fenetre(void)
 | 
			
		||||
  
 | 
			
		||||
  // Restore de ce que la fenêtre cachait
 | 
			
		||||
  Restaure_fond(Fond_fenetre[Fenetre-1], Fenetre_Pos_X, Fenetre_Pos_Y, Fenetre_Largeur, Fenetre_Hauteur);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Fenetre_Largeur*Menu_Facteur_X,Fenetre_Hauteur*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Fenetre_Largeur*Menu_Facteur_X,Fenetre_Hauteur*Menu_Facteur_Y);
 | 
			
		||||
 | 
			
		||||
  //Afficher_ecran();
 | 
			
		||||
  //Afficher_menu();
 | 
			
		||||
@ -1161,18 +1154,14 @@ void Fenetre_Dessiner_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Haut
 | 
			
		||||
void Fenetre_Enfoncer_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Hauteur)
 | 
			
		||||
{
 | 
			
		||||
  Fenetre_Afficher_cadre_general(Pos_X,Pos_Y,Largeur,Hauteur,CM_Fonce,CM_Noir,CM_Fonce,CM_Fonce,CM_Noir);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Pos_X, Pos_Y, Largeur, Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Pos_X, Pos_Y, Largeur, Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// -- Bouton normal désenfoncé dans la fenêtre --
 | 
			
		||||
void Fenetre_Desenfoncer_bouton_normal(word Pos_X,word Pos_Y,word Largeur,word Hauteur)
 | 
			
		||||
{
 | 
			
		||||
  Fenetre_Afficher_cadre_bombe(Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+Pos_X*Menu_Facteur_X, Fenetre_Pos_Y+Pos_Y*Menu_Facteur_X, Largeur*Menu_Facteur_X, Hauteur*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+Pos_X*Menu_Facteur_X, Fenetre_Pos_Y+Pos_Y*Menu_Facteur_X, Largeur*Menu_Facteur_X, Hauteur*Menu_Facteur_Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1202,9 +1191,7 @@ void Fenetre_Effacer_tags(void)
 | 
			
		||||
  Origine_Y=Fenetre_Pos_Y+(Fenetre_Liste_boutons_palette->Pos_Y+3)*Menu_Facteur_Y;
 | 
			
		||||
  for (Pos_X=0,Pos_fenetre_X=Origine_X;Pos_X<16;Pos_X++,Pos_fenetre_X+=(Menu_Facteur_X*10))
 | 
			
		||||
    Block(Pos_fenetre_X,Origine_Y,Menu_Facteur_X*3,Menu_Facteur_Y*80,CM_Clair);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Origine_X,Origine_Y,ToWinL(160),ToWinH(80));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Origine_X,Origine_Y,ToWinL(160),ToWinH(80));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1268,9 +1255,7 @@ void Tagger_intervalle_palette(byte Debut,byte Fin)
 | 
			
		||||
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,ToWinX(Fenetre_Liste_boutons_palette->Pos_X+3),ToWinY(Fenetre_Liste_boutons_palette->Pos_Y+3),ToWinL(12*16),ToWinH(5*16));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(ToWinX(Fenetre_Liste_boutons_palette->Pos_X+3),ToWinY(Fenetre_Liste_boutons_palette->Pos_Y+3),ToWinL(12*16),ToWinH(5*16));
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1308,11 +1293,9 @@ void Fenetre_Dessiner_jauge(struct Fenetre_Bouton_scroller * Enreg)
 | 
			
		||||
        Fenetre_Pos_Y+(Position_curseur_jauge*Menu_Facteur_Y),
 | 
			
		||||
        11*Menu_Facteur_X,Enreg->Hauteur_curseur*Menu_Facteur_Y,CM_Clair/*CM_Blanc*/);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Enreg->Pos_X*Menu_Facteur_X),
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Enreg->Pos_X*Menu_Facteur_X),
 | 
			
		||||
        Fenetre_Pos_Y+Enreg->Pos_Y*Menu_Facteur_Y,
 | 
			
		||||
        11*Menu_Facteur_X,(Enreg->Hauteur)*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Fenetre_Dessiner_bouton_scroller(struct Fenetre_Bouton_scroller * Enreg)
 | 
			
		||||
@ -1691,10 +1674,8 @@ void Deplacer_fenetre(short Dx, short Dy)
 | 
			
		||||
      Ligne_horizontale_XOR(Nouveau_X,Nouveau_Y+Hauteur-1,Largeur);
 | 
			
		||||
      Afficher_curseur();
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Ancien_X,Ancien_Y,Largeur,Hauteur);
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Nouveau_X,Nouveau_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(Ancien_X,Ancien_Y,Largeur,Hauteur);
 | 
			
		||||
    UpdateRect(Nouveau_X,Nouveau_Y,Largeur,Hauteur);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Effacer_curseur();
 | 
			
		||||
@ -1728,13 +1709,11 @@ void Deplacer_fenetre(short Dx, short Dy)
 | 
			
		||||
    Restaure_fond(Buffer, Nouveau_X, Nouveau_Y, Fenetre_Largeur, Fenetre_Hauteur);
 | 
			
		||||
 | 
			
		||||
    // Mise à jour du rectangle englobant
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,
 | 
			
		||||
    UpdateRect(
 | 
			
		||||
      (Nouveau_X>Fenetre_Pos_X)?Fenetre_Pos_X:Nouveau_X,
 | 
			
		||||
      (Nouveau_Y>Fenetre_Pos_Y)?Fenetre_Pos_Y:Nouveau_Y,
 | 
			
		||||
      ((Nouveau_X>Fenetre_Pos_X)?(Nouveau_X-Fenetre_Pos_X):(Fenetre_Pos_X-Nouveau_X)) + Fenetre_Largeur*Menu_Facteur_X,
 | 
			
		||||
      ((Nouveau_Y>Fenetre_Pos_Y)?(Nouveau_Y-Fenetre_Pos_Y):(Fenetre_Pos_Y-Nouveau_Y)) + Fenetre_Hauteur*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
    Fenetre_Pos_X=Nouveau_X;
 | 
			
		||||
    Fenetre_Pos_Y=Nouveau_Y;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										21
									
								
								palette.c
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								palette.c
									
									
									
									
									
								
							@ -31,6 +31,7 @@
 | 
			
		||||
#include "boutons.h"
 | 
			
		||||
#include "pages.h"
 | 
			
		||||
#include "aide.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
// --------------------------- Menu des palettes -----------------------------
 | 
			
		||||
char * Libelle_reduction_palette[7]=
 | 
			
		||||
@ -800,9 +801,7 @@ void Bouton_Palette(void)
 | 
			
		||||
  Dessiner_zigouigoui(263,165,CM_Fonce,-1);
 | 
			
		||||
  Dessiner_zigouigoui(280,165,CM_Fonce,+1);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,299*Menu_Facteur_X,188*Menu_Facteur_Y);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,299*Menu_Facteur_X,188*Menu_Facteur_Y);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
@ -867,9 +866,7 @@ void Bouton_Palette(void)
 | 
			
		||||
 | 
			
		||||
                // Affichage dans le block de visu de la couleur en cours
 | 
			
		||||
                Block(Fenetre_Pos_X+(Menu_Facteur_X*264),Fenetre_Pos_Y+(Menu_Facteur_Y*93),Menu_Facteur_X<<4,Menu_Facteur_Y*64,Fore_color);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
                SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X*264),Fenetre_Pos_Y+(Menu_Facteur_Y*93),Menu_Facteur_X<<4,Menu_Facteur_Y*64);
 | 
			
		||||
#endif
 | 
			
		||||
                UpdateRect(Fenetre_Pos_X+(Menu_Facteur_X*264),Fenetre_Pos_Y+(Menu_Facteur_Y*93),Menu_Facteur_X<<4,Menu_Facteur_Y*64);
 | 
			
		||||
 | 
			
		||||
                memcpy(Palette_backup    ,Palette_de_travail,sizeof(T_Palette));
 | 
			
		||||
                memcpy(Palette_temporaire,Palette_de_travail,sizeof(T_Palette));
 | 
			
		||||
@ -1140,10 +1137,8 @@ void Bouton_Palette(void)
 | 
			
		||||
          Palette_Reafficher_jauges(Jauge_rouge,Jauge_verte,Jauge_bleue,Palette_de_travail,Debut_block,Fin_block);
 | 
			
		||||
          
 | 
			
		||||
          // En cas de X-Swap, tout l'ecran a pu changer de couleur.
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
          if (Bouton_clicke==8)
 | 
			
		||||
            SDL_UpdateRect(Ecran_SDL,0, 0, Largeur_ecran, Menu_Ordonnee_avant_fenetre);
 | 
			
		||||
#endif
 | 
			
		||||
            UpdateRect(0, 0, Largeur_ecran, Menu_Ordonnee_avant_fenetre);
 | 
			
		||||
          
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
@ -1790,9 +1785,7 @@ void Bouton_Palette(void)
 | 
			
		||||
        Block(Fenetre_Pos_X+(Menu_Facteur_X*260),Fenetre_Pos_Y+(Menu_Facteur_Y*89),Menu_Facteur_X*24,Menu_Facteur_Y*72,Back_color);
 | 
			
		||||
        Bloc_degrade_dans_fenetre(264,93,Debut_block,Fin_block);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+82*Menu_Facteur_Y,Menu_Facteur_X*16*10,Menu_Facteur_Y*5*16);
 | 
			
		||||
#endif
 | 
			
		||||
      	UpdateRect(Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+82*Menu_Facteur_Y,Menu_Facteur_X*16*10,Menu_Facteur_Y*5*16);
 | 
			
		||||
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
        Il_faut_remapper=0;
 | 
			
		||||
@ -1858,9 +1851,7 @@ void Bouton_Palette_secondaire(void)
 | 
			
		||||
  Fenetre_Definir_bouton_normal(10,37,180,14,"User's color series"  ,14,0,SDLK_s); // 2
 | 
			
		||||
  Fenetre_Definir_bouton_normal(60,60, 80,14,"Cancel"               , 0,1,SDLK_ESCAPE); // 3
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*200,Menu_Facteur_Y*80);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*200,Menu_Facteur_Y*80);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										17
									
								
								readline.c
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								readline.c
									
									
									
									
									
								
							@ -36,6 +36,7 @@
 | 
			
		||||
#include "erreurs.h"
 | 
			
		||||
#include "const.h"
 | 
			
		||||
#include "linux.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
#define COULEUR_TEXTE         CM_Noir
 | 
			
		||||
#define COULEUR_FOND          CM_Clair
 | 
			
		||||
@ -128,10 +129,8 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
 | 
			
		||||
  // Effacement de la chaîne
 | 
			
		||||
  Block(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3),COULEUR_FOND);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  // Mise à jour des variables se rapportant à la chaîne en fonction de la chaîne initiale
 | 
			
		||||
  strcpy(Chaine_initiale,Chaine);
 | 
			
		||||
@ -154,10 +153,8 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
 | 
			
		||||
    Chaine_affichee[Taille_affichee-1]=CARACTERE_TRIANGLE_DROIT;
 | 
			
		||||
  
 | 
			
		||||
  Rafficher_toute_la_chaine(Pos_X,Pos_Y,Chaine_affichee,Position - Offset);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  while ((Touche_lue!=SDLK_RETURN) && (Touche_lue!=SDLK_ESCAPE))
 | 
			
		||||
  {
 | 
			
		||||
@ -295,10 +292,8 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
 | 
			
		||||
          Chaine_affichee[Taille_affichee-1]=CARACTERE_TRIANGLE_DROIT;
 | 
			
		||||
        
 | 
			
		||||
        Rafficher_toute_la_chaine(Pos_X,Pos_Y,Chaine_affichee,Position - Offset);
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        UpdateRect(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
 | 
			
		||||
#endif      
 | 
			
		||||
    } // Fin du "switch(Touche_lue)"
 | 
			
		||||
  } // Fin du "while"
 | 
			
		||||
 | 
			
		||||
@ -319,10 +314,8 @@ byte Readline(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte Type
 | 
			
		||||
  {
 | 
			
		||||
    Print_dans_fenetre_limite(Pos_X,Pos_Y,Chaine,Taille_affichee,COULEUR_TEXTE,COULEUR_FOND);
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
 | 
			
		||||
        Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3));
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  return (Touche_lue==SDLK_RETURN);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										80
									
								
								sdlscreen.c
									
									
									
									
									
								
							
							
						
						
									
										80
									
								
								sdlscreen.c
									
									
									
									
									
								
							@ -26,6 +26,23 @@
 | 
			
		||||
#include "divers.h"
 | 
			
		||||
#include "erreurs.h"
 | 
			
		||||
 | 
			
		||||
// Mise à jour minimaliste en nombre de pixels
 | 
			
		||||
#define METHODE_UPDATE_MULTI_RECTANGLE 1
 | 
			
		||||
// Mise à jour intermédiaire, par rectangle inclusif.
 | 
			
		||||
#define METHODE_UPDATE_PAR_CUMUL       2
 | 
			
		||||
// Mise à jour totale, pour les plate-formes qui imposent un Vsync à chaque mise à jour écran.
 | 
			
		||||
#define METHODE_UPDATE_PLEINE_PAGE     3
 | 
			
		||||
 | 
			
		||||
// METHODE_UPDATE peut être fixé depuis le makefile, sinon c'est ici:
 | 
			
		||||
#ifndef METHODE_UPDATE
 | 
			
		||||
  #ifdef __macosx__
 | 
			
		||||
    #define METHODE_UPDATE     METHODE_UPDATE_PLEINE_PAGE
 | 
			
		||||
  #else
 | 
			
		||||
    #define METHODE_UPDATE     METHODE_UPDATE_MULTI_RECTANGLE
 | 
			
		||||
  #endif
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void Pixel_SDL (word X,word Y,byte Couleur)
 | 
			
		||||
/* Affiche un pixel de la Couleur aux coords X;Y à l'écran */
 | 
			
		||||
{
 | 
			
		||||
@ -60,9 +77,7 @@ void Afficher_partie_de_l_ecran_SDL       (word Largeur,word Hauteur,word Largeu
 | 
			
		||||
    Src+=Largeur_image;
 | 
			
		||||
    Dest+=Largeur_ecran;
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,0,0,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(0,0,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Block_SDL (word Debut_X,word Debut_Y,word Largeur,word Hauteur,byte Couleur)
 | 
			
		||||
@ -74,7 +89,7 @@ void Block_SDL (word Debut_X,word Debut_Y,word Largeur,word Hauteur,byte Couleur
 | 
			
		||||
        rectangle.w=Largeur;
 | 
			
		||||
        rectangle.h=Hauteur;
 | 
			
		||||
        SDL_FillRect(Ecran_SDL,&rectangle,Couleur);
 | 
			
		||||
//        SDL_UpdateRect(Ecran_SDL,Debut_X,Debut_Y,Largeur,Hauteur);
 | 
			
		||||
//        UpdateRect(Debut_X,Debut_Y,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Pixel_Preview_Normal_SDL (word X,word Y,byte Couleur)
 | 
			
		||||
@ -166,9 +181,7 @@ void Display_brush_Color_SDL  (word Pos_X,word Pos_Y,word Decalage_X,word Decala
 | 
			
		||||
                EDI = EDI + Largeur_ecran - Largeur;
 | 
			
		||||
                ESI = ESI + Largeur_brosse - Largeur;
 | 
			
		||||
        }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
        SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
        UpdateRect(Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Display_brush_Mono_SDL (word Pos_X, word Pos_Y,
 | 
			
		||||
@ -200,9 +213,7 @@ void Display_brush_Mono_SDL (word Pos_X, word Pos_Y,
 | 
			
		||||
        Src+=Largeur_brosse-Largeur;
 | 
			
		||||
        Dest+=Largeur_ecran-Largeur;
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Clear_brush_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Decalage_Y,word Largeur,word Hauteur,byte Couleur_de_transparence,word Largeur_image)
 | 
			
		||||
@ -221,9 +232,7 @@ void Clear_brush_SDL (word Pos_X,word Pos_Y,word Decalage_X,word Decalage_Y,word
 | 
			
		||||
    Src+=Largeur_image;
 | 
			
		||||
    Dest+=Largeur_ecran;
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Remap_screen_SDL (word Pos_X,word Pos_Y,word Largeur,word Hauteur,byte * Table_de_conversion)
 | 
			
		||||
@ -245,16 +254,14 @@ void Remap_screen_SDL (word Pos_X,word Pos_Y,word Largeur,word Hauteur,byte * Ta
 | 
			
		||||
		EDI = EDI + Largeur_ecran - Largeur;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
	SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
	UpdateRect(Pos_X,Pos_Y,Largeur,Hauteur);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Afficher_une_ligne_ecran_SDL (word Pos_X,word Pos_Y,word Largeur,byte * Ligne)
 | 
			
		||||
/* On affiche toute une ligne de pixels. Utilisé pour les textes. */
 | 
			
		||||
{
 | 
			
		||||
    memcpy(Ecran+Pos_X+Pos_Y*Largeur_ecran,Ligne,Largeur);
 | 
			
		||||
    //SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,Largeur,1);
 | 
			
		||||
    //UpdateRect(Pos_X,Pos_Y,Largeur,1);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Afficher_une_ligne_transparente_mono_a_l_ecran_SDL(
 | 
			
		||||
@ -309,10 +316,8 @@ void Afficher_partie_de_l_ecran_zoomee_SDL(
 | 
			
		||||
                EDX++;
 | 
			
		||||
                if(EDX==Hauteur)
 | 
			
		||||
                {
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
                        SDL_UpdateRect(Ecran_SDL,Principal_X_Zoom,0,
 | 
			
		||||
                        UpdateRect(Principal_X_Zoom,0,
 | 
			
		||||
                                Largeur*Loupe_Facteur,Hauteur);
 | 
			
		||||
#endif
 | 
			
		||||
                        return;
 | 
			
		||||
                }
 | 
			
		||||
                CX--;
 | 
			
		||||
@ -409,10 +414,8 @@ void Display_brush_Mono_zoom_SDL (word Pos_X, word Pos_Y,
 | 
			
		||||
                        // On vérifie qu'on est pas à la ligne finale
 | 
			
		||||
                        if(DX == Pos_Y_Fin)
 | 
			
		||||
                        {
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
                                SDL_UpdateRect(Ecran_SDL, Pos_X, Pos_Y,
 | 
			
		||||
                                UpdateRect( Pos_X, Pos_Y,
 | 
			
		||||
                                        Largeur * Loupe_Facteur, Pos_Y_Fin - Pos_Y );
 | 
			
		||||
#endif
 | 
			
		||||
                                return;
 | 
			
		||||
                        }
 | 
			
		||||
                        BX --;
 | 
			
		||||
@ -446,10 +449,8 @@ void Clear_brush_zoom_SDL        (word Pos_X,word Pos_Y,word Decalage_X,word Dec
 | 
			
		||||
                        DX++;
 | 
			
		||||
                        if(DX==Pos_Y_Fin)
 | 
			
		||||
                        {
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
                                SDL_UpdateRect(Ecran_SDL,Pos_X,Pos_Y,
 | 
			
		||||
                                UpdateRect(Pos_X,Pos_Y,
 | 
			
		||||
                                        Largeur*Loupe_Facteur,Pos_Y_Fin-Pos_Y);
 | 
			
		||||
#endif
 | 
			
		||||
                                return;
 | 
			
		||||
                        }
 | 
			
		||||
                        bx--;
 | 
			
		||||
@ -496,3 +497,30 @@ void Gere_Evenement_SDL(SDL_Event * event)
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Flush_update(void)
 | 
			
		||||
{
 | 
			
		||||
  #if (METHODE_UPDATE == METHODE_UPDATE_PLEINE_PAGE)
 | 
			
		||||
  // Mise à jour de la totalité de l'écran
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL, 0, 0, 0, 0);
 | 
			
		||||
  #endif
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void UpdateRect(short X, short Y, unsigned short Largeur, unsigned short Hauteur)
 | 
			
		||||
{
 | 
			
		||||
  #if (METHODE_UPDATE == METHODE_UPDATE_MULTI_RECTANGLE)
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL, (X), (Y), (Largeur), (Hauteur));
 | 
			
		||||
  #endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#if (METHODE_UPDATE == METHODE_UPDATE_MULTI_RECTANGLE)
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
#if (METHODE_UPDATE == METHODE_UPDATE_PAR_CUMUL)
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
#if (METHODE_UPDATE == METHODE_UPDATE_PLEINE_PAGE)
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -51,4 +51,8 @@
 | 
			
		||||
  SDL_Rect ** Liste_Modes_Videos_SDL;
 | 
			
		||||
  byte* Ecran;
 | 
			
		||||
 | 
			
		||||
  void UpdateRect(short X, short Y, unsigned short Largeur, unsigned short Hauteur);
 | 
			
		||||
  void Flush_update(void);
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
#endif // SDLSCREEN_H_INCLUDED
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										21
									
								
								shade.c
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								shade.c
									
									
									
									
									
								
							@ -26,6 +26,7 @@
 | 
			
		||||
#include "divers.h"
 | 
			
		||||
#include "readline.h"
 | 
			
		||||
#include "aide.h"
 | 
			
		||||
#include "sdlscreen.h"
 | 
			
		||||
 | 
			
		||||
void Bouton_Shade_Mode(void)
 | 
			
		||||
{
 | 
			
		||||
@ -131,9 +132,7 @@ void Shade_Blocs_degrades(void)
 | 
			
		||||
    Block(Fenetre_Pos_X+(Menu_Facteur_X*225),Fenetre_Pos_Y+(Menu_Facteur_Y*36),
 | 
			
		||||
          Menu_Facteur_X*62,Menu_Facteur_Y*46,CM_Clair);
 | 
			
		||||
  }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+(Menu_Facteur_X*224),Fenetre_Pos_Y+(Menu_Facteur_Y*35),Menu_Facteur_X*64,Menu_Facteur_Y*48);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+(Menu_Facteur_X*224),Fenetre_Pos_Y+(Menu_Facteur_Y*35),Menu_Facteur_X*64,Menu_Facteur_Y*48);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -177,9 +176,7 @@ void Tagger_shades(word Select_Debut,word Select_Fin)
 | 
			
		||||
          Block(Pos_X,Pos_Y,Menu_Facteur_X<<2,Menu_Facteur_Y<<1,CM_Clair);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
    SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+131*Menu_Facteur_Y,Menu_Facteur_X*64<<2,Menu_Facteur_Y*8<<3);
 | 
			
		||||
#endif
 | 
			
		||||
    UpdateRect(Fenetre_Pos_X+8*Menu_Facteur_X,Fenetre_Pos_Y+131*Menu_Facteur_Y,Menu_Facteur_X*64<<2,Menu_Facteur_Y*8<<3);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -253,9 +250,7 @@ void Afficher_tout_le_shade(word Select_Debut1,word Select_Fin1,
 | 
			
		||||
              Menu_Facteur_X<<2,Menu_Facteur_Y<<2,
 | 
			
		||||
              Shade_Liste[Shade_Actuel].Liste[Position]&0xFF);
 | 
			
		||||
    }
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X+7*Menu_Facteur_X,Fenetre_Pos_Y+126*Menu_Facteur_Y,Menu_Facteur_X*((64<<2)+2),Menu_Facteur_Y*((8<<2)+2));
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X+7*Menu_Facteur_X,Fenetre_Pos_Y+126*Menu_Facteur_Y,Menu_Facteur_X*((64<<2)+2),Menu_Facteur_Y*((8<<2)+2));
 | 
			
		||||
  Tagger_shades(Select_Debut2,Select_Fin2);
 | 
			
		||||
  Shade_Blocs_degrades();
 | 
			
		||||
  Afficher_couleur_case_selectionnee(Select_Debut2,Select_Fin2);
 | 
			
		||||
@ -528,9 +523,7 @@ int Menu_Shade(void)
 | 
			
		||||
  memcpy(Buffer     ,Shade_Liste[Shade_Actuel].Liste,512*sizeof(word));
 | 
			
		||||
  memcpy(Buffer_Undo,Shade_Liste[Shade_Actuel].Liste,512*sizeof(word));
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*190);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*310,Menu_Facteur_Y*190);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
@ -1059,9 +1052,7 @@ void Bouton_Quick_shade_Menu(void)
 | 
			
		||||
  Num2str(Quick_shade_Step,Chaine,3);
 | 
			
		||||
  Fenetre_Contenu_bouton_saisie(Fenetre_Liste_boutons_special,Chaine);
 | 
			
		||||
 | 
			
		||||
#ifndef __macosx__
 | 
			
		||||
  SDL_UpdateRect(Ecran_SDL,Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*142,Menu_Facteur_Y*56);
 | 
			
		||||
#endif
 | 
			
		||||
  UpdateRect(Fenetre_Pos_X,Fenetre_Pos_Y,Menu_Facteur_X*142,Menu_Facteur_Y*56);
 | 
			
		||||
 | 
			
		||||
  Afficher_curseur();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user