From 393ced7451b435ade31ab9b8cb9149daa7492b4c Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Thu, 9 Oct 2008 19:05:21 +0000 Subject: [PATCH] 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 --- gfx2.cfg | Bin 10062 -> 10062 bytes graph.c | 13 ++++--------- main.c | 25 ------------------------- 3 files changed, 4 insertions(+), 34 deletions(-) diff --git a/gfx2.cfg b/gfx2.cfg index 9f1f1c6c233d9c15b403713f6056a1c40942a7dc..4f686a5825b03871a3c2bb04dc6163e1b4a1a4e0 100644 GIT binary patch delta 379 zcmWN~SyK*R00rRZTcq6*qM{4Gp=)D?+x}8^kw~Gk@0Bd^Av?*E)R!e?&r(7}St6qM z=FFKn&&){{CySekVoQjKiiw*d#Z;-%q|1;gOSWlYo^FPja?CQ@9J%J2Cr`ct^DR&q zL{(9&qhy)oR#<73)z(<6)H>^x*`VA;n*yt_S*0plY_(0b8nw3DVW(Yo+Y`iI`|NkX zL5Cbxr(T028Xa}aaVLUka?&XYr=4+Dvvbb7;G#<V}(cxvk9|?e6N( zDXGgn_dW1Xw?}&PdhCg(o_X$tm-@oRE3durR=)x740`W_kA{5m*|0A`d^KX!H{bp6 q)0kg=%O3Y9On*)I=f6ZG-XDoZqKU=%@zlhk+?31^p)FmQ7M}#z;BD0a delta 36 qcmX@-cg}BvDf8q?<};g}*-e-?+e@=?Y_=C?;{g&Z9GhL0IavViq6(t` diff --git a/graph.c b/graph.c index d8f65bd6..8406fdc3 100644 --- a/graph.c +++ b/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 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); - Largeur *= Loupe_Facteur; + Largeur *= Loupe_Facteur / 2; // ???! Hauteur *= Loupe_Facteur; // 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 // 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; if(Y_effectif + Hauteur <= Menu_Ordonnee) H_effectif = Hauteur; 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); } } diff --git a/main.c b/main.c index 918c1678..dc6514fa 100644 --- a/main.c +++ b/main.c @@ -470,31 +470,6 @@ void Initialisation_du_programme(int argc,char * argv[]) Pinceau_Largeur=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=MODE_VESA) - Mode_video[Temp].Etat+=128; - } - }*/ - Analyse_de_la_ligne_de_commande(argc,argv); Mode_dans_lequel_on_demarre=Resolution_actuelle;