Fixed zoom window bar not draggable (issue 114)
Checked for all other uses of "while (!Get_input())", seems ok. Palette screen: Copy,Swap,X-Swap now take place when you click button, not release. In all screens where you could press ` and pick a color (palette, shade...): The action now takes place when you click, not release. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@626 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
		
							parent
							
								
									aaa393e12f
								
							
						
					
					
						commit
						a28deef902
					
				@ -638,6 +638,7 @@ void Menu_Tag_couleurs(char * En_tete, byte * Table, byte * Mode, byte Cancel, c
 | 
			
		||||
          Stencil_Tagger_couleur(Couleur_taggee,(Click==A_GAUCHE)?CM_Noir:CM_Clair);
 | 
			
		||||
          Stencil_Actualiser_couleur(Couleur_taggee);
 | 
			
		||||
          Afficher_curseur();
 | 
			
		||||
          Attendre_fin_de_click();
 | 
			
		||||
        }
 | 
			
		||||
        Touche=0;
 | 
			
		||||
        break;
 | 
			
		||||
@ -2078,8 +2079,8 @@ void Bouton_Degrades(void)
 | 
			
		||||
          Tagger_intervalle_palette(Degrade_Tableau[Degrade_Courant].Debut,Degrade_Tableau[Degrade_Courant].Fin);
 | 
			
		||||
          // Tracé de la preview:
 | 
			
		||||
          Degrade_Dessiner_preview(8,112,108,14,Degrade_Courant);
 | 
			
		||||
 | 
			
		||||
          Afficher_curseur();
 | 
			
		||||
          Attendre_fin_de_click();
 | 
			
		||||
        }
 | 
			
		||||
        Touche=0;
 | 
			
		||||
        break;
 | 
			
		||||
@ -5031,6 +5032,7 @@ void Bouton_Spray_Menu(void)
 | 
			
		||||
          Spray_Rafficher_infos(Couleur_selectionnee,1);
 | 
			
		||||
          Afficher_curseur();
 | 
			
		||||
          Stencil_Actualiser_couleur(Couleur_selectionnee);
 | 
			
		||||
          Attendre_fin_de_click();
 | 
			
		||||
        }
 | 
			
		||||
        Touche=0;
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										59
									
								
								moteur.c
									
									
									
									
									
								
							
							
						
						
									
										59
									
								
								moteur.c
									
									
									
									
									
								
							@ -440,6 +440,7 @@ void Deplacer_Split(void)
 | 
			
		||||
  short Ancien_X_Zoom=Principal_X_Zoom;
 | 
			
		||||
  short Decalage=Principal_X_Zoom-Mouse_X;
 | 
			
		||||
  byte  Ancienne_forme_curseur=Forme_curseur;
 | 
			
		||||
  short Ancien_Mouse_X=-1;
 | 
			
		||||
 | 
			
		||||
  // Afficher la barre en XOR
 | 
			
		||||
  Effacer_curseur();
 | 
			
		||||
@ -452,32 +453,35 @@ void Deplacer_Split(void)
 | 
			
		||||
 | 
			
		||||
  while (Mouse_K)
 | 
			
		||||
  {
 | 
			
		||||
    Principal_Proportion_split=(float)(Mouse_X+Decalage)/Largeur_ecran;
 | 
			
		||||
    Calculer_split();
 | 
			
		||||
 | 
			
		||||
    if (Principal_X_Zoom!=Ancien_X_Zoom)
 | 
			
		||||
    if (Mouse_X!=Ancien_Mouse_X)
 | 
			
		||||
    {
 | 
			
		||||
      Effacer_curseur();
 | 
			
		||||
 | 
			
		||||
      // Effacer la barre en XOR
 | 
			
		||||
      Ligne_verticale_XOR(Ancien_Split,0,Menu_Ordonnee);
 | 
			
		||||
      Ligne_verticale_XOR(Ancien_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      UpdateRect(Ancien_Split,0,abs(Ancien_Split-Ancien_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      Ancien_Split=Principal_Split;
 | 
			
		||||
      Ancien_X_Zoom=Principal_X_Zoom;
 | 
			
		||||
 | 
			
		||||
      // Rafficher la barre en XOR
 | 
			
		||||
      Ligne_verticale_XOR(Principal_Split,0,Menu_Ordonnee);
 | 
			
		||||
      Ligne_verticale_XOR(Principal_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      UpdateRect(Principal_Split,0,abs(Principal_Split-Principal_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
 | 
			
		||||
      Afficher_curseur();
 | 
			
		||||
      Ancien_Mouse_X=Mouse_X;
 | 
			
		||||
      Principal_Proportion_split=(float)(Mouse_X+Decalage)/Largeur_ecran;
 | 
			
		||||
      Calculer_split();
 | 
			
		||||
  
 | 
			
		||||
      if (Principal_X_Zoom!=Ancien_X_Zoom)
 | 
			
		||||
      {
 | 
			
		||||
        Effacer_curseur();
 | 
			
		||||
  
 | 
			
		||||
        // Effacer la barre en XOR
 | 
			
		||||
        Ligne_verticale_XOR(Ancien_Split,0,Menu_Ordonnee);
 | 
			
		||||
        Ligne_verticale_XOR(Ancien_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
  
 | 
			
		||||
        UpdateRect(Ancien_Split,0,abs(Ancien_Split-Ancien_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
  
 | 
			
		||||
        Ancien_Split=Principal_Split;
 | 
			
		||||
        Ancien_X_Zoom=Principal_X_Zoom;
 | 
			
		||||
  
 | 
			
		||||
        // Rafficher la barre en XOR
 | 
			
		||||
        Ligne_verticale_XOR(Principal_Split,0,Menu_Ordonnee);
 | 
			
		||||
        Ligne_verticale_XOR(Principal_X_Zoom-1,0,Menu_Ordonnee);
 | 
			
		||||
  
 | 
			
		||||
        UpdateRect(Principal_Split,0,abs(Principal_Split-Principal_X_Zoom)+1,Menu_Ordonnee);
 | 
			
		||||
  
 | 
			
		||||
        Afficher_curseur();
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    while(!Get_input())Wait_VBL();
 | 
			
		||||
    if(!Get_input())Wait_VBL();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // Effacer la barre en XOR
 | 
			
		||||
@ -1727,7 +1731,6 @@ short Attendre_click_dans_palette(struct Fenetre_Bouton_palette * Enreg)
 | 
			
		||||
    {
 | 
			
		||||
      if (Fenetre_click_dans_zone(Debut_X,Debut_Y,Fin_X,Fin_Y))
 | 
			
		||||
      {
 | 
			
		||||
        Attendre_fin_de_click();
 | 
			
		||||
        Effacer_curseur();
 | 
			
		||||
        Couleur_choisie=(((Mouse_X-Fenetre_Pos_X)/Menu_Facteur_X)-(Enreg->Pos_X+2)) / 10 * 16 +
 | 
			
		||||
        (((Mouse_Y-Fenetre_Pos_Y)/Menu_Facteur_Y)-(Enreg->Pos_Y+3)) / 5;
 | 
			
		||||
@ -1741,7 +1744,6 @@ short Attendre_click_dans_palette(struct Fenetre_Bouton_palette * Enreg)
 | 
			
		||||
          (Mouse_X>=Fenetre_Pos_X+(Fenetre_Largeur*Menu_Facteur_X)) ||
 | 
			
		||||
          (Mouse_Y>=Fenetre_Pos_Y+(Fenetre_Hauteur*Menu_Facteur_Y)) )
 | 
			
		||||
      {
 | 
			
		||||
        Attendre_fin_de_click();
 | 
			
		||||
        Effacer_curseur();
 | 
			
		||||
        Couleur_choisie=Lit_pixel(Mouse_X,Mouse_Y);
 | 
			
		||||
        Forme_curseur=FORME_CURSEUR_FLECHE;
 | 
			
		||||
@ -1754,7 +1756,6 @@ short Attendre_click_dans_palette(struct Fenetre_Bouton_palette * Enreg)
 | 
			
		||||
 | 
			
		||||
    if ((Mouse_K==A_DROITE) || (Touche==TOUCHE_ESC))
 | 
			
		||||
    {
 | 
			
		||||
      Attendre_fin_de_click();
 | 
			
		||||
      Effacer_curseur();
 | 
			
		||||
      Forme_curseur=FORME_CURSEUR_FLECHE;
 | 
			
		||||
      Cacher_curseur=Ancien_Cacher_curseur;
 | 
			
		||||
@ -1810,7 +1811,7 @@ void Recuperer_couleur_derriere_fenetre(byte * Couleur, byte * Click)
 | 
			
		||||
 | 
			
		||||
    do
 | 
			
		||||
    {
 | 
			
		||||
      while(!Get_input())Wait_VBL();
 | 
			
		||||
      if(!Get_input())Wait_VBL();
 | 
			
		||||
 | 
			
		||||
      if ((Mouse_X!=Ancien_X) || (Mouse_Y!=Ancien_Y))
 | 
			
		||||
      {
 | 
			
		||||
@ -1852,7 +1853,6 @@ void Recuperer_couleur_derriere_fenetre(byte * Couleur, byte * Click)
 | 
			
		||||
      Effacer_curseur();
 | 
			
		||||
      *Click=Mouse_K;
 | 
			
		||||
      *Couleur=Lit_pixel(Mouse_X,Mouse_Y);
 | 
			
		||||
      Attendre_fin_de_click();
 | 
			
		||||
    }
 | 
			
		||||
    else
 | 
			
		||||
    {
 | 
			
		||||
@ -1873,7 +1873,6 @@ void Recuperer_couleur_derriere_fenetre(byte * Couleur, byte * Click)
 | 
			
		||||
  else
 | 
			
		||||
  {
 | 
			
		||||
    Erreur(0);
 | 
			
		||||
    Attendre_fin_de_click();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1314,7 +1314,7 @@ void Bouton_Palette(void)
 | 
			
		||||
          // En cas de X-Swap, tout l'ecran a pu changer de couleur.
 | 
			
		||||
          if (Bouton_clicke==8)
 | 
			
		||||
            UpdateRect(0, 0, Largeur_ecran, Menu_Ordonnee_avant_fenetre);
 | 
			
		||||
          
 | 
			
		||||
          Attendre_fin_de_click();
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
@ -1357,6 +1357,7 @@ void Bouton_Palette(void)
 | 
			
		||||
 | 
			
		||||
          Afficher_curseur();
 | 
			
		||||
          Palette_Reafficher_jauges(Jauge_rouge,Jauge_verte,Jauge_bleue,Palette_de_travail,Debut_block,Fin_block);
 | 
			
		||||
          Attendre_fin_de_click();
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
@ -1376,6 +1377,7 @@ void Bouton_Palette(void)
 | 
			
		||||
              Degrader_palette(Couleur_temporaire,Fore_color,Palette_de_travail);
 | 
			
		||||
            else
 | 
			
		||||
              Degrader_palette(Fore_color,Couleur_temporaire,Palette_de_travail);
 | 
			
		||||
            Attendre_fin_de_click();
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -2001,6 +2003,7 @@ void Bouton_Palette(void)
 | 
			
		||||
              memcpy(Palette_temporaire,Palette_de_travail,sizeof(T_Palette));
 | 
			
		||||
            }
 | 
			
		||||
            Afficher_curseur();
 | 
			
		||||
            Attendre_fin_de_click();
 | 
			
		||||
          }
 | 
			
		||||
          Touche=0;
 | 
			
		||||
          break;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user