Text tool: corrected colors, various fixes.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@320 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
3b4149be49
commit
de2f95863d
30
boutons.c
30
boutons.c
@ -5825,7 +5825,7 @@ void Bouton_Texte()
|
|||||||
case 2: // Clear
|
case 2: // Clear
|
||||||
Chaine[0]='\0';
|
Chaine[0]='\0';
|
||||||
Effacer_curseur();
|
Effacer_curseur();
|
||||||
Fenetre_Contenu_bouton_saisie(Bouton_texte,Chaine);
|
Fenetre_Effacer_bouton_saisie(Bouton_texte);
|
||||||
Afficher_curseur();
|
Afficher_curseur();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -5896,7 +5896,11 @@ void Bouton_Texte()
|
|||||||
|
|
||||||
case 11: // OK
|
case 11: // OK
|
||||||
// Rendu texte
|
// Rendu texte
|
||||||
Nouvelle_Brosse = Rendu_Texte(Chaine, Position_curseur+Debut_liste, Taille_police, AntiAlias, &Nouvelle_Largeur, &Nouvelle_Hauteur);
|
Nouvelle_Brosse = NULL;
|
||||||
|
if (Chaine[0])
|
||||||
|
{
|
||||||
|
Nouvelle_Brosse = Rendu_Texte(Chaine, Position_curseur+Debut_liste, Taille_police, AntiAlias, &Nouvelle_Largeur, &Nouvelle_Hauteur);
|
||||||
|
}
|
||||||
if (!Nouvelle_Brosse)
|
if (!Nouvelle_Brosse)
|
||||||
{
|
{
|
||||||
Fermer_fenetre();
|
Fermer_fenetre();
|
||||||
@ -5906,11 +5910,6 @@ void Bouton_Texte()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Effacer_curseur();
|
Effacer_curseur();
|
||||||
// On passe en brosse:
|
|
||||||
//if (AntiAlias)
|
|
||||||
Changer_la_forme_du_pinceau(FORME_PINCEAU_BROSSE_COULEUR);
|
|
||||||
//else
|
|
||||||
// Changer_la_forme_du_pinceau(FORME_PINCEAU_BROSSE_MONOCHROME);
|
|
||||||
if (Brosse) free(Brosse);
|
if (Brosse) free(Brosse);
|
||||||
|
|
||||||
Brosse=Nouvelle_Brosse;
|
Brosse=Nouvelle_Brosse;
|
||||||
@ -5918,6 +5917,23 @@ void Bouton_Texte()
|
|||||||
Brosse_Hauteur=Nouvelle_Hauteur;
|
Brosse_Hauteur=Nouvelle_Hauteur;
|
||||||
Brosse_Decalage_X=Brosse_Largeur>>1;
|
Brosse_Decalage_X=Brosse_Largeur>>1;
|
||||||
Brosse_Decalage_Y=Brosse_Hauteur>>1;
|
Brosse_Decalage_Y=Brosse_Hauteur>>1;
|
||||||
|
Fermer_fenetre();
|
||||||
|
Desenclencher_bouton(BOUTON_TEXTE);
|
||||||
|
|
||||||
|
// On passe en brosse:
|
||||||
|
if (AntiAlias || !TrueType_fonte(Position_curseur+Debut_liste))
|
||||||
|
Changer_la_forme_du_pinceau(FORME_PINCEAU_BROSSE_COULEUR);
|
||||||
|
else
|
||||||
|
Changer_la_forme_du_pinceau(FORME_PINCEAU_BROSSE_MONOCHROME);
|
||||||
|
|
||||||
|
Enclencher_bouton(BOUTON_DESSIN,A_GAUCHE);
|
||||||
|
if (Config.Auto_discontinuous)
|
||||||
|
{
|
||||||
|
// On se place en mode Dessin discontinu à la main
|
||||||
|
while (Operation_en_cours!=OPERATION_DESSIN_DISCONTINU)
|
||||||
|
Enclencher_bouton(BOUTON_DESSIN,A_DROITE);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
|
||||||
// Attention pas de break
|
// Attention pas de break
|
||||||
case 12: // Cancel
|
case 12: // Cancel
|
||||||
|
|||||||
7
moteur.c
7
moteur.c
@ -1323,6 +1323,13 @@ void Fenetre_Contenu_bouton_saisie(struct Fenetre_Bouton_special * Enreg, char *
|
|||||||
Print_dans_fenetre(Enreg->Pos_X+2,Enreg->Pos_Y+2,Contenu,CM_Noir,CM_Clair);
|
Print_dans_fenetre(Enreg->Pos_X+2,Enreg->Pos_Y+2,Contenu,CM_Noir,CM_Clair);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//------------ Effacer le contenu (caption) d'une zone de saisie ------------
|
||||||
|
|
||||||
|
void Fenetre_Effacer_bouton_saisie(struct Fenetre_Bouton_special * Enreg)
|
||||||
|
{
|
||||||
|
Block((Enreg->Pos_X+2)*Menu_Facteur_X+Fenetre_Pos_X,(Enreg->Pos_Y+2)*Menu_Facteur_Y+Fenetre_Pos_Y,(Enreg->Largeur/8)*8*Menu_Facteur_X,8*Menu_Facteur_Y,CM_Clair);
|
||||||
|
UpdateRect((Enreg->Pos_X+2)*Menu_Facteur_X+Fenetre_Pos_X,(Enreg->Pos_Y+2)*Menu_Facteur_Y+Fenetre_Pos_Y,Enreg->Largeur/8*8*Menu_Facteur_X,8*Menu_Facteur_Y);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//------ Rajout d'un bouton à la liste de ceux présents dans la fenêtre ------
|
//------ Rajout d'un bouton à la liste de ceux présents dans la fenêtre ------
|
||||||
|
|||||||
1
moteur.h
1
moteur.h
@ -39,6 +39,7 @@ void Fenetre_Dessiner_jauge(struct Fenetre_Bouton_scroller * Enreg);
|
|||||||
void Fenetre_Dessiner_bouton_scroller(struct Fenetre_Bouton_scroller * Enreg);
|
void Fenetre_Dessiner_bouton_scroller(struct Fenetre_Bouton_scroller * Enreg);
|
||||||
|
|
||||||
void Fenetre_Contenu_bouton_saisie(struct Fenetre_Bouton_special * Enreg, char * Contenu);
|
void Fenetre_Contenu_bouton_saisie(struct Fenetre_Bouton_special * Enreg, char * Contenu);
|
||||||
|
void Fenetre_Effacer_bouton_saisie(struct Fenetre_Bouton_special * Enreg);
|
||||||
void Fenetre_Dessiner_bouton_saisie(word Pos_X,word Pos_Y,word Largeur_en_caracteres);
|
void Fenetre_Dessiner_bouton_saisie(word Pos_X,word Pos_Y,word Largeur_en_caracteres);
|
||||||
|
|
||||||
void Fenetre_Definir_bouton_normal(word Pos_X, word Pos_Y,
|
void Fenetre_Definir_bouton_normal(word Pos_X, word Pos_Y,
|
||||||
|
|||||||
39
texte.c
39
texte.c
@ -131,6 +131,17 @@ char * Libelle_fonte(int Indice)
|
|||||||
Libelle[Indice]=Nom_fonte[Indice];
|
Libelle[Indice]=Nom_fonte[Indice];
|
||||||
return Libelle;
|
return Libelle;
|
||||||
}
|
}
|
||||||
|
// Vérifie si une fonte donnée est TrueType
|
||||||
|
int TrueType_fonte(int Indice)
|
||||||
|
{
|
||||||
|
T_FONTE *Fonte = Liste_fontes_debut;
|
||||||
|
if (Indice<0 ||Indice>=Fonte_nombre)
|
||||||
|
return 0;
|
||||||
|
while (Indice--)
|
||||||
|
Fonte = Fonte->Suivante;
|
||||||
|
return Fonte->EstTrueType;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Initialisation à faire une fois au début du programme
|
// Initialisation à faire une fois au début du programme
|
||||||
@ -195,8 +206,17 @@ byte *Rendu_Texte_TTF(const char *Chaine, int Numero_fonte, int Taille, int Anti
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
// Couleurs
|
// Couleurs
|
||||||
Couleur_Avant = Conversion_couleur_SDL(Fore_color);
|
if (AntiAlias)
|
||||||
Couleur_Arriere = Conversion_couleur_SDL(Back_color);
|
{
|
||||||
|
Couleur_Avant = Conversion_couleur_SDL(Fore_color);
|
||||||
|
Couleur_Arriere = Conversion_couleur_SDL(Back_color);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Couleur_Avant = Conversion_couleur_SDL(CM_Blanc);
|
||||||
|
Couleur_Arriere = Conversion_couleur_SDL(CM_Noir);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Rendu du texte: crée une surface SDL RGB 24bits
|
// Rendu du texte: crée une surface SDL RGB 24bits
|
||||||
if (AntiAlias)
|
if (AntiAlias)
|
||||||
@ -241,14 +261,15 @@ byte *Rendu_Texte_TTF(const char *Chaine, int Numero_fonte, int Taille, int Anti
|
|||||||
}
|
}
|
||||||
if (!AntiAlias)
|
if (!AntiAlias)
|
||||||
{
|
{
|
||||||
// Mappage des couleurs
|
// Mappage des couleurs
|
||||||
/*for (Indice=0; Indice < Texte8Bit->w * Texte8Bit->h; Indice++)
|
for (Indice=0; Indice < Texte8Bit->w * Texte8Bit->h; Indice++)
|
||||||
{
|
{
|
||||||
if ()
|
if (*(BrosseRetour+Indice) == CM_Noir)
|
||||||
*(BrosseRetour+Indice)=*(BrosseRetour+Indice) ? (*(BrosseRetour+Indice)+96-15) : 0;
|
*(BrosseRetour+Indice)=Back_color;
|
||||||
}*/
|
else if (*(BrosseRetour+Indice) == CM_Blanc)
|
||||||
|
*(BrosseRetour+Indice)=Fore_color;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
*Largeur=Texte8Bit->w;
|
*Largeur=Texte8Bit->w;
|
||||||
*Hauteur=Texte8Bit->h;
|
*Hauteur=Texte8Bit->h;
|
||||||
SDL_FreeSurface(Texte8Bit);
|
SDL_FreeSurface(Texte8Bit);
|
||||||
|
|||||||
2
texte.h
2
texte.h
@ -32,5 +32,7 @@ byte *Rendu_Texte(const char *Chaine, int Numero_fonte, int Taille, int AntiAlia
|
|||||||
char * Libelle_fonte(int Indice);
|
char * Libelle_fonte(int Indice);
|
||||||
// Trouve le nom d'une fonte par son numéro
|
// Trouve le nom d'une fonte par son numéro
|
||||||
char * Nom_fonte(int Indice);
|
char * Nom_fonte(int Indice);
|
||||||
|
// Vérifie si une fonte donnée est TrueType
|
||||||
|
char * TrueType_fonte(int Indice);
|
||||||
// Nombre de fontes déclarées
|
// Nombre de fontes déclarées
|
||||||
extern int Fonte_nombre;
|
extern int Fonte_nombre;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user