Fixed mouse cursor in text input (Readline(), recent problems)
Fixed refresh problem when rotating a brush outside of screen limits (bug in 98%) Fixed Palette window having 'S' as shortcut for 2 functions. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@612 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
8aadfe3732
commit
1ed8852d64
19
boutons.c
19
boutons.c
@ -936,7 +936,6 @@ void Bouton_Settings(void)
|
|||||||
break;
|
break;
|
||||||
case 21 : // Nb pages Undo
|
case 21 : // Nb pages Undo
|
||||||
Attendre_fin_de_click();
|
Attendre_fin_de_click();
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Config_choisie.Nb_pages_Undo,Chaine,2);
|
Num2str(Config_choisie.Nb_pages_Undo,Chaine,2);
|
||||||
Readline(142,52,Chaine,2,1);
|
Readline(142,52,Chaine,2,1);
|
||||||
Config_choisie.Nb_pages_Undo=atoi(Chaine);
|
Config_choisie.Nb_pages_Undo=atoi(Chaine);
|
||||||
@ -1462,7 +1461,6 @@ void Bouton_Resol(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 3 : // Largeur
|
case 3 : // Largeur
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Largeur_choisie,Chaine,4);
|
Num2str(Largeur_choisie,Chaine,4);
|
||||||
Readline(62,37,Chaine,4,1);
|
Readline(62,37,Chaine,4,1);
|
||||||
Largeur_choisie=atoi(Chaine);
|
Largeur_choisie=atoi(Chaine);
|
||||||
@ -1477,7 +1475,6 @@ void Bouton_Resol(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 4 : // Hauteur
|
case 4 : // Hauteur
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Hauteur_choisie,Chaine,4);
|
Num2str(Hauteur_choisie,Chaine,4);
|
||||||
Readline(166,37,Chaine,4,1);
|
Readline(166,37,Chaine,4,1);
|
||||||
Hauteur_choisie=atoi(Chaine);
|
Hauteur_choisie=atoi(Chaine);
|
||||||
@ -2755,13 +2752,11 @@ byte Bouton_Load_ou_Save(byte Load, byte Image)
|
|||||||
case 7 : // Saisie d'un commentaire pour la sauvegarde
|
case 7 : // Saisie d'un commentaire pour la sauvegarde
|
||||||
if ( (!Load) && (FormatFichier[Principal_Format-1].Commentaire) )
|
if ( (!Load) && (FormatFichier[Principal_Format-1].Commentaire) )
|
||||||
{
|
{
|
||||||
Effacer_curseur();
|
|
||||||
Readline(46,175+FILENAMESPACE,Principal_Commentaire,32,0);
|
Readline(46,175+FILENAMESPACE,Principal_Commentaire,32,0);
|
||||||
Afficher_curseur();
|
Afficher_curseur();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 8 : // Saisie du nom de fichier
|
case 8 : // Saisie du nom de fichier
|
||||||
Effacer_curseur();
|
|
||||||
|
|
||||||
// Save the filename
|
// Save the filename
|
||||||
strcpy(Nom_fichier_Save, Principal_Nom_fichier);
|
strcpy(Nom_fichier_Save, Principal_Nom_fichier);
|
||||||
@ -4029,7 +4024,6 @@ void Bouton_Menu_Grille(void)
|
|||||||
switch (Bouton_clicke)
|
switch (Bouton_clicke)
|
||||||
{
|
{
|
||||||
case 3 :
|
case 3 :
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(X_choisi,Chaine,2);
|
Num2str(X_choisi,Chaine,2);
|
||||||
Readline(39,26,Chaine,2,1);
|
Readline(39,26,Chaine,2,1);
|
||||||
X_choisi=atoi(Chaine);
|
X_choisi=atoi(Chaine);
|
||||||
@ -4052,7 +4046,6 @@ void Bouton_Menu_Grille(void)
|
|||||||
Afficher_curseur();
|
Afficher_curseur();
|
||||||
break;
|
break;
|
||||||
case 4 :
|
case 4 :
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Y_choisi,Chaine,2);
|
Num2str(Y_choisi,Chaine,2);
|
||||||
Readline(39,47,Chaine,2,1);
|
Readline(39,47,Chaine,2,1);
|
||||||
Y_choisi=atoi(Chaine);
|
Y_choisi=atoi(Chaine);
|
||||||
@ -4075,7 +4068,6 @@ void Bouton_Menu_Grille(void)
|
|||||||
Afficher_curseur();
|
Afficher_curseur();
|
||||||
break;
|
break;
|
||||||
case 5 :
|
case 5 :
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(dX_choisi,Chaine,2);
|
Num2str(dX_choisi,Chaine,2);
|
||||||
Readline(97,26,Chaine,2,1);
|
Readline(97,26,Chaine,2,1);
|
||||||
dX_choisi=atoi(Chaine);
|
dX_choisi=atoi(Chaine);
|
||||||
@ -4091,7 +4083,6 @@ void Bouton_Menu_Grille(void)
|
|||||||
Afficher_curseur();
|
Afficher_curseur();
|
||||||
break;
|
break;
|
||||||
case 6 :
|
case 6 :
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(dY_choisi,Chaine,2);
|
Num2str(dY_choisi,Chaine,2);
|
||||||
Readline(97,47,Chaine,2,1);
|
Readline(97,47,Chaine,2,1);
|
||||||
dY_choisi=atoi(Chaine);
|
dY_choisi=atoi(Chaine);
|
||||||
@ -4383,7 +4374,6 @@ void Bouton_Smooth_Menu(void)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Effacer_curseur();
|
|
||||||
I=Bouton_clicke-7; X=I%3; Y=I/3;
|
I=Bouton_clicke-7; X=I%3; Y=I/3;
|
||||||
Num2str(Matrice_choisie[X][Y],Chaine,2);
|
Num2str(Matrice_choisie[X][Y],Chaine,2);
|
||||||
Readline(Matrice_Zone_saisie[X][Y]->Pos_X+2,
|
Readline(Matrice_Zone_saisie[X][Y]->Pos_X+2,
|
||||||
@ -4539,7 +4529,6 @@ void Bouton_Colorize_Menu(void)
|
|||||||
switch(Bouton_clicke)
|
switch(Bouton_clicke)
|
||||||
{
|
{
|
||||||
case 1: // Zone de saisie de l'opacité
|
case 1: // Zone de saisie de l'opacité
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Opacite_choisie,Chaine,3);
|
Num2str(Opacite_choisie,Chaine,3);
|
||||||
Readline(89,23,Chaine,3,1);
|
Readline(89,23,Chaine,3,1);
|
||||||
Opacite_choisie=atoi(Chaine);
|
Opacite_choisie=atoi(Chaine);
|
||||||
@ -4632,7 +4621,6 @@ void Bouton_Tiling_Menu(void)
|
|||||||
|
|
||||||
if (Bouton_clicke==3) // Zone de saisie du décalage X
|
if (Bouton_clicke==3) // Zone de saisie du décalage X
|
||||||
{
|
{
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Offset_X_choisi,Chaine,4);
|
Num2str(Offset_X_choisi,Chaine,4);
|
||||||
Readline(93,23,Chaine,4,1);
|
Readline(93,23,Chaine,4,1);
|
||||||
Offset_X_choisi=atoi(Chaine);
|
Offset_X_choisi=atoi(Chaine);
|
||||||
@ -4648,7 +4636,6 @@ void Bouton_Tiling_Menu(void)
|
|||||||
else
|
else
|
||||||
if (Bouton_clicke==4) // Zone de saisie du décalage Y
|
if (Bouton_clicke==4) // Zone de saisie du décalage Y
|
||||||
{
|
{
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Offset_Y_choisi,Chaine,4);
|
Num2str(Offset_Y_choisi,Chaine,4);
|
||||||
Readline(93,37,Chaine,4,1);
|
Readline(93,37,Chaine,4,1);
|
||||||
Offset_Y_choisi=atoi(Chaine);
|
Offset_Y_choisi=atoi(Chaine);
|
||||||
@ -4943,7 +4930,6 @@ void Bouton_Spray_Menu(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 11 : // Size
|
case 11 : // Size
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Spray_Size,Chaine,3);
|
Num2str(Spray_Size,Chaine,3);
|
||||||
Readline(188,25,Chaine,3,1);
|
Readline(188,25,Chaine,3,1);
|
||||||
Spray_Size=atoi(Chaine);
|
Spray_Size=atoi(Chaine);
|
||||||
@ -4964,7 +4950,6 @@ void Bouton_Spray_Menu(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 12 : // Delay
|
case 12 : // Delay
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Spray_Delay,Chaine,2);
|
Num2str(Spray_Delay,Chaine,2);
|
||||||
Readline(196,39,Chaine,2,1);
|
Readline(196,39,Chaine,2,1);
|
||||||
Spray_Delay=atoi(Chaine);
|
Spray_Delay=atoi(Chaine);
|
||||||
@ -4979,7 +4964,6 @@ void Bouton_Spray_Menu(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 13 : // Mono-Flow
|
case 13 : // Mono-Flow
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Spray_Mono_flow,Chaine,2);
|
Num2str(Spray_Mono_flow,Chaine,2);
|
||||||
Readline(113,24,Chaine,2,1);
|
Readline(113,24,Chaine,2,1);
|
||||||
Spray_Mono_flow=atoi(Chaine);
|
Spray_Mono_flow=atoi(Chaine);
|
||||||
@ -4994,7 +4978,6 @@ void Bouton_Spray_Menu(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 14 : // Init
|
case 14 : // Init
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Spray_Init,Chaine,2);
|
Num2str(Spray_Init,Chaine,2);
|
||||||
Readline(113,40,Chaine,2,1);
|
Readline(113,40,Chaine,2,1);
|
||||||
Spray_Init=atoi(Chaine);
|
Spray_Init=atoi(Chaine);
|
||||||
@ -6182,7 +6165,6 @@ void Bouton_Texte()
|
|||||||
switch(Bouton_clicke)
|
switch(Bouton_clicke)
|
||||||
{
|
{
|
||||||
case 1: // Texte saisi
|
case 1: // Texte saisi
|
||||||
Effacer_curseur();
|
|
||||||
Readline_ex(50,20,Chaine,29,250,0);
|
Readline_ex(50,20,Chaine,29,250,0);
|
||||||
A_previsionner=1;
|
A_previsionner=1;
|
||||||
break;
|
break;
|
||||||
@ -6233,7 +6215,6 @@ void Bouton_Texte()
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 7: // Taille du texte (nombre)
|
case 7: // Taille du texte (nombre)
|
||||||
Effacer_curseur();
|
|
||||||
Readline(222,45,Buffer_taille,3,1);
|
Readline(222,45,Buffer_taille,3,1);
|
||||||
Taille_police=atoi(Buffer_taille);
|
Taille_police=atoi(Buffer_taille);
|
||||||
// On corrige les dimensions
|
// On corrige les dimensions
|
||||||
|
|||||||
17
divers.c
17
divers.c
@ -596,23 +596,6 @@ void Scroll_picture(short Decalage_X,short Decalage_Y)
|
|||||||
UpdateRect(0,0,0,0);
|
UpdateRect(0,0,0,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
word Get_key(void)
|
|
||||||
{
|
|
||||||
SDL_Event event;
|
|
||||||
|
|
||||||
Attendre_fin_de_click(); // On prend le controle de la boucle d'évènements, donc il ne faut pas qu'on rate la fin de click !
|
|
||||||
while(1)
|
|
||||||
{
|
|
||||||
SDL_WaitEvent(&event);
|
|
||||||
if(event.type == SDL_KEYDOWN)
|
|
||||||
{
|
|
||||||
return Conversion_ANSI(event.key.keysym);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
Gere_Evenement_SDL(&event);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Zoomer_une_ligne(byte* Ligne_originale, byte* Ligne_zoomee,
|
void Zoomer_une_ligne(byte* Ligne_originale, byte* Ligne_zoomee,
|
||||||
word Facteur, word Largeur
|
word Facteur, word Largeur
|
||||||
)
|
)
|
||||||
|
|||||||
1
divers.h
1
divers.h
@ -38,7 +38,6 @@ void Wait_VBL(void);
|
|||||||
void Tempo_jauge(byte Vitesse);
|
void Tempo_jauge(byte Vitesse);
|
||||||
dword Round_div(dword Numerateur,dword Diviseur);
|
dword Round_div(dword Numerateur,dword Diviseur);
|
||||||
word Palette_Compter_nb_couleurs_utilisees(dword * Tableau);
|
word Palette_Compter_nb_couleurs_utilisees(dword * Tableau);
|
||||||
word Get_key(void);
|
|
||||||
|
|
||||||
void Pixel_dans_ecran_courant (word X,word Y,byte Couleur);
|
void Pixel_dans_ecran_courant (word X,word Y,byte Couleur);
|
||||||
void Pixel_dans_brosse (word X,word Y,byte Couleur);
|
void Pixel_dans_brosse (word X,word Y,byte Couleur);
|
||||||
|
|||||||
12
graph.c
12
graph.c
@ -1300,9 +1300,19 @@ void Tracer_ligne_Preview(short Debut_X,short Debut_Y,short Fin_X,short Fin_Y,by
|
|||||||
|
|
||||||
void Tracer_ligne_Preview_xor(short Debut_X,short Debut_Y,short Fin_X,short Fin_Y,byte Couleur)
|
void Tracer_ligne_Preview_xor(short Debut_X,short Debut_Y,short Fin_X,short Fin_Y,byte Couleur)
|
||||||
{
|
{
|
||||||
int L = Fin_X-Debut_X, H = Fin_Y - Debut_Y;
|
int L, H;
|
||||||
Pixel_figure=Pixel_figure_Preview_xor;
|
Pixel_figure=Pixel_figure_Preview_xor;
|
||||||
Tracer_ligne_General(Debut_X,Debut_Y,Fin_X,Fin_Y,Couleur);
|
Tracer_ligne_General(Debut_X,Debut_Y,Fin_X,Fin_Y,Couleur);
|
||||||
|
if (Debut_X<0)
|
||||||
|
Debut_X=0;
|
||||||
|
if (Debut_Y<0)
|
||||||
|
Debut_Y=0;
|
||||||
|
if (Fin_X<0)
|
||||||
|
Fin_X=0;
|
||||||
|
if (Fin_Y<0)
|
||||||
|
Fin_Y=0;
|
||||||
|
L = Fin_X-Debut_X;
|
||||||
|
H = Fin_Y-Debut_Y;
|
||||||
Mettre_Ecran_A_Jour((Debut_X<Fin_X)?Debut_X:Fin_X,(Debut_Y<Fin_Y)?Debut_Y:Fin_Y,abs(L)+1,abs(H)+1);
|
Mettre_Ecran_A_Jour((Debut_X<Fin_X)?Debut_X:Fin_X,(Debut_Y<Fin_Y)?Debut_Y:Fin_Y,abs(L)+1,abs(H)+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -841,7 +841,7 @@ void Bouton_Palette(void)
|
|||||||
|
|
||||||
Fenetre_Definir_bouton_normal( 6,17,59,14,"Default",3,1,SDLK_f); // 5
|
Fenetre_Definir_bouton_normal( 6,17,59,14,"Default",3,1,SDLK_f); // 5
|
||||||
Fenetre_Definir_bouton_normal(66,17,29,14,"Gry" ,1,1,SDLK_g); // 6
|
Fenetre_Definir_bouton_normal(66,17,29,14,"Gry" ,1,1,SDLK_g); // 6
|
||||||
Fenetre_Definir_bouton_normal(66,47,29,14,"Swp" ,1,1,SDLK_s); // 7
|
Fenetre_Definir_bouton_normal(66,47,29,14,"Swp" ,0,1,TOUCHE_AUCUNE); // 7
|
||||||
Fenetre_Definir_bouton_normal( 6,47,59,14,"X-Swap" ,1,1,SDLK_x); // 8
|
Fenetre_Definir_bouton_normal( 6,47,59,14,"X-Swap" ,1,1,SDLK_x); // 8
|
||||||
Fenetre_Definir_bouton_normal(66,32,29,14,"Cpy" ,1,1,SDLK_c); // 9
|
Fenetre_Definir_bouton_normal(66,32,29,14,"Cpy" ,1,1,SDLK_c); // 9
|
||||||
Fenetre_Definir_bouton_normal( 6,32,59,14,"Spread" ,4,1,SDLK_e); // 10
|
Fenetre_Definir_bouton_normal( 6,32,59,14,"Spread" ,4,1,SDLK_e); // 10
|
||||||
@ -1785,7 +1785,6 @@ void Bouton_Palette(void)
|
|||||||
|
|
||||||
case 23 : // Saisie du nombre de couleurs pour la réduction de palette
|
case 23 : // Saisie du nombre de couleurs pour la réduction de palette
|
||||||
Num2str(Reduce_Nb_couleurs,Chaine,3);
|
Num2str(Reduce_Nb_couleurs,Chaine,3);
|
||||||
Effacer_curseur();
|
|
||||||
|
|
||||||
if (Readline(265,41,Chaine,3,1))
|
if (Readline(265,41,Chaine,3,1))
|
||||||
{
|
{
|
||||||
|
|||||||
10
readline.c
10
readline.c
@ -38,6 +38,7 @@
|
|||||||
#include "sdlscreen.h"
|
#include "sdlscreen.h"
|
||||||
#include "readline.h"
|
#include "readline.h"
|
||||||
#include "windows.h"
|
#include "windows.h"
|
||||||
|
#include "input.h"
|
||||||
|
|
||||||
#define COULEUR_TEXTE CM_Noir
|
#define COULEUR_TEXTE CM_Noir
|
||||||
#define COULEUR_FOND CM_Clair
|
#define COULEUR_FOND CM_Clair
|
||||||
@ -144,6 +145,7 @@ byte Readline_ex(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte T
|
|||||||
|
|
||||||
byte Offset=0; // Indice du premier caractère affiché
|
byte Offset=0; // Indice du premier caractère affiché
|
||||||
|
|
||||||
|
Effacer_curseur();
|
||||||
// Effacement de la chaîne
|
// Effacement de la chaîne
|
||||||
Block(Fenetre_Pos_X+(Pos_X*Menu_Facteur_X),Fenetre_Pos_Y+(Pos_Y*Menu_Facteur_Y),
|
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);
|
Taille_affichee*(Menu_Facteur_X<<3),(Menu_Facteur_Y<<3),COULEUR_FOND);
|
||||||
@ -179,7 +181,13 @@ byte Readline_ex(word Pos_X,word Pos_Y,char * Chaine,byte Taille_affichee,byte T
|
|||||||
|
|
||||||
while ((Touche_lue!=SDLK_RETURN) && (Touche_lue!=TOUCHE_ESC))
|
while ((Touche_lue!=SDLK_RETURN) && (Touche_lue!=TOUCHE_ESC))
|
||||||
{
|
{
|
||||||
Touche_lue=Get_key();
|
Afficher_curseur();
|
||||||
|
do
|
||||||
|
{
|
||||||
|
if(!Get_input()) Wait_VBL();
|
||||||
|
Touche_lue=Touche_ANSI;
|
||||||
|
} while(Touche_lue==0);
|
||||||
|
Effacer_curseur();
|
||||||
switch (Touche_lue)
|
switch (Touche_lue)
|
||||||
{
|
{
|
||||||
case SDLK_DELETE : // Suppr.
|
case SDLK_DELETE : // Suppr.
|
||||||
|
|||||||
2
shade.c
2
shade.c
@ -828,7 +828,6 @@ int Menu_Shade(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 15 : // Saisie du pas
|
case 15 : // Saisie du pas
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Shade_Liste[Shade_Actuel].Pas,Chaine,3);
|
Num2str(Shade_Liste[Shade_Actuel].Pas,Chaine,3);
|
||||||
Readline(276,176,Chaine,3,1);
|
Readline(276,176,Chaine,3,1);
|
||||||
Temp=atoi(Chaine);
|
Temp=atoi(Chaine);
|
||||||
@ -1070,7 +1069,6 @@ void Bouton_Quick_shade_Menu(void)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 4 : // Saisie du pas
|
case 4 : // Saisie du pas
|
||||||
Effacer_curseur();
|
|
||||||
Num2str(Quick_shade_Step,Chaine,3);
|
Num2str(Quick_shade_Step,Chaine,3);
|
||||||
Readline(42,21,Chaine,3,1);
|
Readline(42,21,Chaine,3,1);
|
||||||
Temp=atoi(Chaine);
|
Temp=atoi(Chaine);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user