(Linux and Windows) Fix missing refresh that happened when zoom was on and you were drawing in the left part of screen.

git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@411 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
Yves Rizoud 2008-12-22 18:44:02 +00:00
parent c1af3faac2
commit 7247b83007

16
graph.c
View File

@ -122,23 +122,37 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
if (X_effectif < 0)
{
L_effectif+=X_effectif;
if (L_effectif<0)
return;
X_effectif = Principal_Split + LARGEUR_BARRE_SPLIT*Menu_Facteur_X;
}
else
X_effectif += Principal_Split + LARGEUR_BARRE_SPLIT*Menu_Facteur_X;
Diff = X_effectif+L_effectif-Largeur_ecran;
if (Diff>0)
{
L_effectif -=Diff;
if (L_effectif<0)
return;
}
// Clipping en Y
if (Y_effectif < 0)
{
H_effectif+=Y_effectif;
if (H_effectif<0)
return;
Y_effectif = 0;
}
Diff = Y_effectif+H_effectif-Menu_Ordonnee;
if (Diff>0)
{
H_effectif -=Diff;
if (H_effectif<0)
return;
}
// Très utile pour le debug :)
/*SDL_Rect r;
@ -734,7 +748,7 @@ void Remplir(byte Couleur_de_remplissage)
Copier_une_partie_d_image_dans_une_autre(Ecran_backup, // Source
Limite_Gauche,Limite_Haut, // Pos X et Y dans source
(Limite_Droite-Limite_Gauche)+1, // Largeur copie
Limite_atteinte_Haut-Limite_Haut, // Hauteur copie
Limite_atteinte_Haut-Limite_Haut,// Hauteur copie
Principal_Largeur_image, // Largeur de la source
Principal_Ecran, // Destination
Limite_Gauche,Limite_Haut, // Pos X et Y destination