Hopefully correct Mettre_Ecran_A_Jour for zoom. Still buggy in the colour brush, going on to check that
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@220 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
fe249a3c7d
commit
393ced7451
13
graph.c
13
graph.c
@ -79,26 +79,21 @@ void Mettre_Ecran_A_Jour(short X, short Y, short Largeur, short Hauteur)
|
|||||||
// Et ensuite dans la partie zoomée
|
// Et ensuite dans la partie zoomée
|
||||||
if(Loupe_Mode)
|
if(Loupe_Mode)
|
||||||
{
|
{
|
||||||
X_effectif = Min(Max((X-Loupe_Decalage_X+2)*Loupe_Facteur,0) + Principal_Split, Largeur_ecran);
|
X_effectif = Min(Max((X-Loupe_Decalage_X + 1)*Loupe_Facteur + 2 + Principal_Split + LARGEUR_BARRE_SPLIT,0), Largeur_ecran);
|
||||||
Y_effectif = Min(Max(Y-Loupe_Decalage_Y,0) * Loupe_Facteur, Menu_Ordonnee);
|
Y_effectif = Min(Max(Y-Loupe_Decalage_Y,0) * Loupe_Facteur, Menu_Ordonnee);
|
||||||
|
|
||||||
Largeur *= Loupe_Facteur;
|
Largeur *= Loupe_Facteur / 2; // ???!
|
||||||
Hauteur *= Loupe_Facteur;
|
Hauteur *= Loupe_Facteur;
|
||||||
|
|
||||||
// Normalement il ne faudrait pas updater au delà du split quand on est en mode loupe,
|
// Normalement il ne faudrait pas updater au delà du split quand on est en mode loupe,
|
||||||
// mais personne ne devrait demander d'update en dehors de cette limite, même le fill est contraint
|
// mais personne ne devrait demander d'update en dehors de cette limite, même le fill est contraint
|
||||||
// a rester dans la zone visible de l'image
|
// a rester dans la zone visible de l'image
|
||||||
if(X_effectif + Largeur < Largeur_ecran) L_effectif = Largeur + 2 * Menu_Facteur_X;
|
if(X_effectif + Largeur < Largeur_ecran) L_effectif = (Largeur+2) * Menu_Facteur_X;
|
||||||
else L_effectif = Largeur_ecran - X_effectif;
|
else L_effectif = Largeur_ecran - X_effectif;
|
||||||
|
|
||||||
if(Y_effectif + Hauteur <= Menu_Ordonnee) H_effectif = Hauteur;
|
if(Y_effectif + Hauteur <= Menu_Ordonnee) H_effectif = Hauteur;
|
||||||
else H_effectif = Menu_Ordonnee - Y_effectif;
|
else H_effectif = Menu_Ordonnee - Y_effectif;
|
||||||
/*
|
|
||||||
DEBUG("X ",X_effectif);
|
|
||||||
DEBUG("Y ",Y_effectif);
|
|
||||||
DEBUG("L ",L_effectif);
|
|
||||||
DEBUG("H ",H_effectif);
|
|
||||||
*/
|
|
||||||
SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
|
SDL_UpdateRect(Ecran_SDL,X_effectif,Y_effectif,L_effectif,H_effectif);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
25
main.c
25
main.c
@ -470,31 +470,6 @@ void Initialisation_du_programme(int argc,char * argv[])
|
|||||||
Pinceau_Largeur=1;
|
Pinceau_Largeur=1;
|
||||||
Pinceau_Hauteur=1;
|
Pinceau_Hauteur=1;
|
||||||
|
|
||||||
puts("main.c init lister les modes SDL proprement!");
|
|
||||||
// Détection des modes SDL en état de fonctionner:
|
|
||||||
// Liste_Modes_Videos_SDL= SDL_ListModes(NULL, 0);
|
|
||||||
|
|
||||||
//Ici, trier les modes dispos ou pas dans le tableau global ...
|
|
||||||
|
|
||||||
/*
|
|
||||||
Support_VESA();
|
|
||||||
if (!VESA_Erreur)
|
|
||||||
{
|
|
||||||
Mode_VESA_supporte(0x100,0);
|
|
||||||
Mode_VESA_supporte(0x101,1);
|
|
||||||
Mode_VESA_supporte(0x103,2);
|
|
||||||
Mode_VESA_supporte(0x105,3);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
//Pas de VESA...
|
|
||||||
{
|
|
||||||
for (Temp=0; Temp<NB_MODES_VIDEO; Temp++)
|
|
||||||
{
|
|
||||||
if (Mode_video[Temp].Mode>=MODE_VESA)
|
|
||||||
Mode_video[Temp].Etat+=128;
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
Analyse_de_la_ligne_de_commande(argc,argv);
|
Analyse_de_la_ligne_de_commande(argc,argv);
|
||||||
|
|
||||||
Mode_dans_lequel_on_demarre=Resolution_actuelle;
|
Mode_dans_lequel_on_demarre=Resolution_actuelle;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user