Right click is working. You can stop drawing polylines and do various other things
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@83 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
ec2a3083b7
commit
7e48434e19
@ -1388,7 +1388,6 @@ void Bouton_Resol(void)
|
|||||||
Readline(62,37,Chaine,4,1);
|
Readline(62,37,Chaine,4,1);
|
||||||
Largeur_choisie=atoi(Chaine);
|
Largeur_choisie=atoi(Chaine);
|
||||||
// On corrige les dimensions
|
// On corrige les dimensions
|
||||||
DEBUG("Valide",0);
|
|
||||||
if (Largeur_choisie==0)
|
if (Largeur_choisie==0)
|
||||||
{
|
{
|
||||||
Largeur_choisie=1;
|
Largeur_choisie=1;
|
||||||
|
|||||||
894
const.h
894
const.h
@ -1,448 +1,448 @@
|
|||||||
#ifndef _CONST_H_
|
#ifndef _CONST_H_
|
||||||
#define _CONST_H_
|
#define _CONST_H_
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Déclaration des constantes ////////////////////////////////////////////////
|
// Déclaration des constantes ////////////////////////////////////////////////
|
||||||
|
|
||||||
#define M_2PI 6.28318530717958647692528676656
|
#define M_2PI 6.28318530717958647692528676656
|
||||||
|
|
||||||
// Note: La taille du fichier GFX2.DAT est définie au début de INIT.C !
|
// Note: La taille du fichier GFX2.DAT est définie au début de INIT.C !
|
||||||
#define POURCENTAGE_VERSION "96.5%" // Libellé du pourcentage de la version á
|
#define POURCENTAGE_VERSION "96.5%" // Libellé du pourcentage de la version á
|
||||||
#define VERSION1 2 // |
|
#define VERSION1 2 // |
|
||||||
#define VERSION2 0 // |_ Numéro de version découpé en
|
#define VERSION2 0 // |_ Numéro de version découpé en
|
||||||
#define BETA1 96 // | plusieurs parties => 2.0 á95.5%
|
#define BETA1 96 // | plusieurs parties => 2.0 á95.5%
|
||||||
#define BETA2 5 // |
|
#define BETA2 5 // |
|
||||||
#define ALPHA_BETA "á" // Type de la version "à" ou "á"
|
#define ALPHA_BETA "á" // Type de la version "à" ou "á"
|
||||||
#define TAILLE_FICHIER_CONFIG 10351 // Taille du fichier GFX2.CFG
|
#define TAILLE_FICHIER_CONFIG 10351 // Taille du fichier GFX2.CFG
|
||||||
#define NB_MODES_VIDEO 60 // Nombre de modes vidéo
|
#define NB_MODES_VIDEO 60 // Nombre de modes vidéo
|
||||||
#define NB_BOUTONS 38 // Nombre de boutons à gérer
|
#define NB_BOUTONS 38 // Nombre de boutons à gérer
|
||||||
#define NB_TOUCHES 134 // Nombre de combinaisons de touches
|
#define NB_TOUCHES 134 // Nombre de combinaisons de touches
|
||||||
#define NB_TOUCHES_SPECIALES 72 // Nombre de touches spéciales
|
#define NB_TOUCHES_SPECIALES 72 // Nombre de touches spéciales
|
||||||
#define NB_OPERATIONS 32 // Nombre d'opérations gérées par le moteur
|
#define NB_OPERATIONS 32 // Nombre d'opérations gérées par le moteur
|
||||||
#define NB_FACTEURS_DE_ZOOM 12 // Nombre de facteurs de zoom
|
#define NB_FACTEURS_DE_ZOOM 12 // Nombre de facteurs de zoom
|
||||||
#define LARGEUR_MENU 254 // Largeur du menu en taille réelle
|
#define LARGEUR_MENU 254 // Largeur du menu en taille réelle
|
||||||
#define HAUTEUR_MENU 44 // Hauteur du menu en taille réelle
|
#define HAUTEUR_MENU 44 // Hauteur du menu en taille réelle
|
||||||
#define NB_SPRITES_CURSEUR 8 // Nombre de sprites de curseur
|
#define NB_SPRITES_CURSEUR 8 // Nombre de sprites de curseur
|
||||||
#define LARGEUR_SPRITE_CURSEUR 15 // Largeur d'un sprite de curseur en pixels
|
#define LARGEUR_SPRITE_CURSEUR 15 // Largeur d'un sprite de curseur en pixels
|
||||||
#define HAUTEUR_SPRITE_CURSEUR 15 // Hauteur d'un sprite de curseur en pixels
|
#define HAUTEUR_SPRITE_CURSEUR 15 // Hauteur d'un sprite de curseur en pixels
|
||||||
#define NB_SPRITES_EFFETS 9 // Nombre de sprites d'effets
|
#define NB_SPRITES_EFFETS 9 // Nombre de sprites d'effets
|
||||||
#define NB_SPRITES_MENU 9 // Nombre de sprites de menu
|
#define NB_SPRITES_MENU 9 // Nombre de sprites de menu
|
||||||
#define LARGEUR_SPRITE_MENU 14 // Largeur d'un sprite de menu en pixels
|
#define LARGEUR_SPRITE_MENU 14 // Largeur d'un sprite de menu en pixels
|
||||||
#define HAUTEUR_SPRITE_MENU 14 // Hauteur d'un sprite de menu en pixels
|
#define HAUTEUR_SPRITE_MENU 14 // Hauteur d'un sprite de menu en pixels
|
||||||
#define LARGEUR_PINCEAU 16 // Largeur d'un sprite de pinceau prédéfini
|
#define LARGEUR_PINCEAU 16 // Largeur d'un sprite de pinceau prédéfini
|
||||||
#define HAUTEUR_PINCEAU 16 // Hauteur d'un sprite de pinceau prédéfini
|
#define HAUTEUR_PINCEAU 16 // Hauteur d'un sprite de pinceau prédéfini
|
||||||
#define TAILLE_MAXI_PINCEAU 127 // Taille maxi des pinceaux
|
#define TAILLE_MAXI_PINCEAU 127 // Taille maxi des pinceaux
|
||||||
#define NB_SPRITES_DRIVES 5 // Nombre de sprites de drives
|
#define NB_SPRITES_DRIVES 5 // Nombre de sprites de drives
|
||||||
#define LARGEUR_SPRITE_DRIVE 7 // Largeur d'un sprite de drive en pixels
|
#define LARGEUR_SPRITE_DRIVE 7 // Largeur d'un sprite de drive en pixels
|
||||||
#define HAUTEUR_SPRITE_DRIVE 7 // Hauteur d'un sprite de drive en pixels
|
#define HAUTEUR_SPRITE_DRIVE 7 // Hauteur d'un sprite de drive en pixels
|
||||||
#define NB_SPRITES_PINCEAU 48 // Nombre de sprites de pinceau
|
#define NB_SPRITES_PINCEAU 48 // Nombre de sprites de pinceau
|
||||||
#define NB_TRAMES_PREDEFINIES 12 // Nombre de trames prédéfinies
|
#define NB_TRAMES_PREDEFINIES 12 // Nombre de trames prédéfinies
|
||||||
#define TAILLE_PILE_OPERATIONS 16 // Nombre maximum d'éléments utilisés par les opérations
|
#define TAILLE_PILE_OPERATIONS 16 // Nombre maximum d'éléments utilisés par les opérations
|
||||||
#define TAILLE_MAXI_PATH 37 // Taille maximum affichable du répertoire courant dans les fenêtres du fileselect
|
#define TAILLE_MAXI_PATH 37 // Taille maximum affichable du répertoire courant dans les fenêtres du fileselect
|
||||||
#define TAILLE_COMMENTAIRE 32 // Taille maxi des commentaires pour le PKM
|
#define TAILLE_COMMENTAIRE 32 // Taille maxi des commentaires pour le PKM
|
||||||
#define TAILLE_NOM_CONSTRUCTEUR 24 // Taille maxi du nom de constructeur VESA dans la fenêtre de stats.
|
#define TAILLE_NOM_CONSTRUCTEUR 24 // Taille maxi du nom de constructeur VESA dans la fenêtre de stats.
|
||||||
#define NB_PAGES_UNDO_MAX 99 // Nombre maximal de pages d'undo
|
#define NB_PAGES_UNDO_MAX 99 // Nombre maximal de pages d'undo
|
||||||
#define FACTEUR_DE_ZOOM_PAR_DEFAUT 4 // Facteur de zoom initial
|
#define FACTEUR_DE_ZOOM_PAR_DEFAUT 4 // Facteur de zoom initial
|
||||||
#define NB_SECTIONS_AIDE 3 // Nombre de sections dans l'aide
|
#define NB_SECTIONS_AIDE 3 // Nombre de sections dans l'aide
|
||||||
|
|
||||||
// On impose à l'allocation dynamique des pages de backups de conserver un
|
// On impose à l'allocation dynamique des pages de backups de conserver un
|
||||||
// minimum de 256 Ko pour que le reste du programme puisse continuer à
|
// minimum de 256 Ko pour que le reste du programme puisse continuer à
|
||||||
// fonctionner.
|
// fonctionner.
|
||||||
#define QUANTITE_MINIMALE_DE_MEMOIRE_A_CONSERVER (256*1024)
|
#define QUANTITE_MINIMALE_DE_MEMOIRE_A_CONSERVER (256*1024)
|
||||||
|
|
||||||
#define A_GAUCHE 1 // Indique une direction (ou click) à gauche
|
#define A_GAUCHE 1 // Indique une direction (ou click) à gauche
|
||||||
#define A_DROITE 2 // Indique une direction (ou click) à droite
|
#define A_DROITE 2 // Indique une direction (ou click) à droite
|
||||||
|
|
||||||
#define LARGEUR_BARRE_SPLIT 6 // [ Û±±° ]
|
#define LARGEUR_BARRE_SPLIT 6 // [ Û±±° ]
|
||||||
#define PROPORTION_SPLIT 0.3 // proportion de la zone non-zoomée en largeur par rapport à l'écran
|
#define PROPORTION_SPLIT 0.3 // proportion de la zone non-zoomée en largeur par rapport à l'écran
|
||||||
#define NB_PIXELS_ZOOMES_MIN 4 // Nombre minimal de pixels zoomés en largeur (Note: En dessous de 4, on ne peut plus scroller!)
|
#define NB_PIXELS_ZOOMES_MIN 4 // Nombre minimal de pixels zoomés en largeur (Note: En dessous de 4, on ne peut plus scroller!)
|
||||||
|
|
||||||
// Les différents formats de fichiers:
|
// Les différents formats de fichiers:
|
||||||
|
|
||||||
#define NB_FORMATS_CONNUS 12 // Nombre de formats connus (devrait être la valeur maximale de NB_FORMATS_LOAD et NB_FORMATS_SAVE, mais plus généralement: Card({NB_FORMATS_LOAD} UNION {NB_FORMATS_SAVE}))
|
#define NB_FORMATS_CONNUS 12 // Nombre de formats connus (devrait être la valeur maximale de NB_FORMATS_LOAD et NB_FORMATS_SAVE, mais plus généralement: Card({NB_FORMATS_LOAD} UNION {NB_FORMATS_SAVE}))
|
||||||
#define NB_FORMATS_LOAD 12 // Nombre de formats que l'on sait charger
|
#define NB_FORMATS_LOAD 12 // Nombre de formats que l'on sait charger
|
||||||
#define NB_FORMATS_SAVE 12 // Nombre de formats que l'on sait sauver
|
#define NB_FORMATS_SAVE 12 // Nombre de formats que l'on sait sauver
|
||||||
|
|
||||||
enum FORMATS_RECONNUS
|
enum FORMATS_RECONNUS
|
||||||
{
|
|
||||||
FORMAT_PKM=1, // |
|
|
||||||
FORMAT_LBM, // |
|
|
||||||
FORMAT_GIF, // | Il faudra penser à réordonner
|
|
||||||
FORMAT_BMP, // | les données sur les formats dans
|
|
||||||
FORMAT_PCX, // | GLOBAL.H si on modifie ces cons-
|
|
||||||
FORMAT_IMG, // |_ tantes.
|
|
||||||
FORMAT_SCx, // |
|
|
||||||
FORMAT_PI1, // | Elles représentent l'indice o—
|
|
||||||
FORMAT_PC1, // | l'on doit aller piocher ces
|
|
||||||
FORMAT_CEL, // | données.
|
|
||||||
FORMAT_KCF, // |
|
|
||||||
FORMAT_PAL // |
|
|
||||||
};
|
|
||||||
|
|
||||||
#define FORMAT_PAR_DEFAUT FORMAT_PKM // Format par défaut (ah bon? oh!)
|
|
||||||
|
|
||||||
// Les différentes erreurs:
|
|
||||||
|
|
||||||
enum CODES_D_ERREURS
|
|
||||||
{
|
|
||||||
ERREUR_DAT_ABSENT=1, // Le fichier GFX2.DAT est absent
|
|
||||||
ERREUR_DAT_CORROMPU, // Mauvais fichier GFX2.DAT
|
|
||||||
ERREUR_CFG_ABSENT, // Le fichier GFX2.CFG est absent
|
|
||||||
ERREUR_CFG_CORROMPU, // Mauvais fichier GFX2.CFG
|
|
||||||
ERREUR_CFG_ANCIEN, // Ancienne version du fichier GFX2.CFG
|
|
||||||
ERREUR_MEMOIRE, // Plus de mémoire
|
|
||||||
ERREUR_LIGNE_COMMANDE, // Erreur sur la ligne de commande
|
|
||||||
ERREUR_DRIVER_SOURIS, // Pas de driver souris installé
|
|
||||||
ERREUR_MODE_VESA_INVALIDE, // Mode VESA demandé sur la ligne de commande invalide
|
|
||||||
ERREUR_MODE_INTERDIT, // Mode demandé sur la ligne de commande interdit (coché en noir)
|
|
||||||
ERREUR_NUMERO_MODE, // Erreur de choix de mode sur la ligne de commande
|
|
||||||
ERREUR_SAUVEGARDE_CFG, // Erreur en écriture pour GFX2.CFG
|
|
||||||
ERREUR_REPERTOIRE_DISPARU, // Le répertoire de lancement n'existe plus
|
|
||||||
ERREUR_INI_ABSENT, // Le fichier GFX2.INI est absent
|
|
||||||
ERREUR_INI_CORROMPU, // Le fichier GFX2.INI est corrompu
|
|
||||||
ERREUR_SAUVEGARDE_INI, // Le fichier GFX2.INI n'est pas inscriptible
|
|
||||||
ERREUR_SORRY_SORRY_SORRY // On le refera plus, promis
|
|
||||||
};
|
|
||||||
|
|
||||||
// Les différents types de modes vidéos
|
|
||||||
|
|
||||||
enum TYPES_DE_MODES_VIDEO
|
|
||||||
{
|
{
|
||||||
MODE_SDL
|
FORMAT_PKM=1, // |
|
||||||
/*MODE_MCGA,
|
FORMAT_LBM, // |
|
||||||
MODE_X,
|
FORMAT_GIF, // | Il faudra penser à réordonner
|
||||||
MODE_VESA, // Attention! Si on change la numérotation, il faut
|
FORMAT_BMP, // | les données sur les formats dans
|
||||||
MODE_XVESA // que les 2 plus grandes valeurs soient ces 2 modes!*/
|
FORMAT_PCX, // | GLOBAL.H si on modifie ces cons-
|
||||||
};
|
FORMAT_IMG, // |_ tantes.
|
||||||
|
FORMAT_SCx, // |
|
||||||
// Les différents modes vidéos (avec leur nø d'ordre)
|
FORMAT_PI1, // | Elles représentent l'indice o—
|
||||||
|
FORMAT_PC1, // | l'on doit aller piocher ces
|
||||||
enum MODES_VIDEO
|
FORMAT_CEL, // | données.
|
||||||
{
|
FORMAT_KCF, // |
|
||||||
MODE_320_200, // !!! MODE 0 !!!
|
FORMAT_PAL // |
|
||||||
MODE_320_224,
|
};
|
||||||
MODE_320_240,
|
|
||||||
MODE_320_256,
|
#define FORMAT_PAR_DEFAUT FORMAT_PKM // Format par défaut (ah bon? oh!)
|
||||||
MODE_320_270,
|
|
||||||
MODE_320_282,
|
// Les différentes erreurs:
|
||||||
MODE_320_300,
|
|
||||||
MODE_320_360,
|
enum CODES_D_ERREURS
|
||||||
MODE_320_400,
|
{
|
||||||
MODE_320_448,
|
ERREUR_DAT_ABSENT=1, // Le fichier GFX2.DAT est absent
|
||||||
MODE_320_480,
|
ERREUR_DAT_CORROMPU, // Mauvais fichier GFX2.DAT
|
||||||
MODE_320_512,
|
ERREUR_CFG_ABSENT, // Le fichier GFX2.CFG est absent
|
||||||
MODE_320_540,
|
ERREUR_CFG_CORROMPU, // Mauvais fichier GFX2.CFG
|
||||||
MODE_320_564,
|
ERREUR_CFG_ANCIEN, // Ancienne version du fichier GFX2.CFG
|
||||||
MODE_320_600,
|
ERREUR_MEMOIRE, // Plus de mémoire
|
||||||
MODE_360_200, // 15
|
ERREUR_LIGNE_COMMANDE, // Erreur sur la ligne de commande
|
||||||
MODE_360_224,
|
ERREUR_DRIVER_SOURIS, // Pas de driver souris installé
|
||||||
MODE_360_240,
|
ERREUR_MODE_VESA_INVALIDE, // Mode VESA demandé sur la ligne de commande invalide
|
||||||
MODE_360_256,
|
ERREUR_MODE_INTERDIT, // Mode demandé sur la ligne de commande interdit (coché en noir)
|
||||||
MODE_360_270,
|
ERREUR_NUMERO_MODE, // Erreur de choix de mode sur la ligne de commande
|
||||||
MODE_360_282,
|
ERREUR_SAUVEGARDE_CFG, // Erreur en écriture pour GFX2.CFG
|
||||||
MODE_360_300,
|
ERREUR_REPERTOIRE_DISPARU, // Le répertoire de lancement n'existe plus
|
||||||
MODE_360_360,
|
ERREUR_INI_ABSENT, // Le fichier GFX2.INI est absent
|
||||||
MODE_360_400,
|
ERREUR_INI_CORROMPU, // Le fichier GFX2.INI est corrompu
|
||||||
MODE_360_448,
|
ERREUR_SAUVEGARDE_INI, // Le fichier GFX2.INI n'est pas inscriptible
|
||||||
MODE_360_480,
|
ERREUR_SORRY_SORRY_SORRY // On le refera plus, promis
|
||||||
MODE_360_512,
|
};
|
||||||
MODE_360_540,
|
|
||||||
MODE_360_564,
|
// Les différents types de modes vidéos
|
||||||
MODE_360_600,
|
|
||||||
MODE_400_200, // 30
|
enum TYPES_DE_MODES_VIDEO
|
||||||
MODE_400_224,
|
{
|
||||||
MODE_400_240,
|
MODE_SDL
|
||||||
MODE_400_256,
|
/*MODE_MCGA,
|
||||||
MODE_400_270,
|
MODE_X,
|
||||||
MODE_400_282,
|
MODE_VESA, // Attention! Si on change la numérotation, il faut
|
||||||
MODE_400_300,
|
MODE_XVESA // que les 2 plus grandes valeurs soient ces 2 modes!*/
|
||||||
MODE_400_360,
|
};
|
||||||
MODE_400_400,
|
|
||||||
MODE_400_448,
|
// Les différents modes vidéos (avec leur nø d'ordre)
|
||||||
MODE_400_480,
|
|
||||||
MODE_400_512,
|
enum MODES_VIDEO
|
||||||
MODE_400_540,
|
{
|
||||||
MODE_400_564,
|
MODE_320_200, // !!! MODE 0 !!!
|
||||||
MODE_400_600,
|
MODE_320_224,
|
||||||
MODE_640_224, // 45
|
MODE_320_240,
|
||||||
MODE_640_240,
|
MODE_320_256,
|
||||||
MODE_640_256,
|
MODE_320_270,
|
||||||
MODE_640_270,
|
MODE_320_282,
|
||||||
MODE_640_300,
|
MODE_320_300,
|
||||||
MODE_640_350,
|
MODE_320_360,
|
||||||
MODE_640_400,
|
MODE_320_400,
|
||||||
MODE_640_448,
|
MODE_320_448,
|
||||||
MODE_640_480,
|
MODE_320_480,
|
||||||
MODE_640_512,
|
MODE_320_512,
|
||||||
MODE_640_540,
|
MODE_320_540,
|
||||||
MODE_640_564,
|
MODE_320_564,
|
||||||
MODE_640_600,
|
MODE_320_600,
|
||||||
MODE_800_600,
|
MODE_360_200, // 15
|
||||||
MODE_1024_768 // 59
|
MODE_360_224,
|
||||||
};
|
MODE_360_240,
|
||||||
|
MODE_360_256,
|
||||||
// Les différentes catégories de bouton:
|
MODE_360_270,
|
||||||
|
MODE_360_282,
|
||||||
enum FAMILLES_DE_BOUTONS
|
MODE_360_300,
|
||||||
{
|
MODE_360_360,
|
||||||
FAMILLE_OUTIL=1, // Outils de dessin
|
MODE_360_400,
|
||||||
FAMILLE_INTERRUPTION, // Opération éphémŠre
|
MODE_360_448,
|
||||||
FAMILLE_INSTANTANE, // Pif paf
|
MODE_360_480,
|
||||||
FAMILLE_TOOLBAR, // Cache/Montre la barre d'outils
|
MODE_360_512,
|
||||||
FAMILLE_EFFETS // Effets
|
MODE_360_540,
|
||||||
};
|
MODE_360_564,
|
||||||
|
MODE_360_600,
|
||||||
// Les différentes formes de bouton:
|
MODE_400_200, // 30
|
||||||
|
MODE_400_224,
|
||||||
enum FORMES_DE_BOUTONS
|
MODE_400_240,
|
||||||
{
|
MODE_400_256,
|
||||||
FORME_BOUTON_SANS_CADRE, // Ex: la palette
|
MODE_400_270,
|
||||||
FORME_BOUTON_RECTANGLE, // Ex: la plupart
|
MODE_400_282,
|
||||||
FORME_BOUTON_TRIANGLE_HAUT_GAUCHE, // Ex: Rectangles vides
|
MODE_400_300,
|
||||||
FORME_BOUTON_TRIANGLE_BAS_DROITE // Ex: Rectangles pleins
|
MODE_400_360,
|
||||||
};
|
MODE_400_400,
|
||||||
|
MODE_400_448,
|
||||||
// Les différentes formes de curseur:
|
MODE_400_480,
|
||||||
|
MODE_400_512,
|
||||||
enum FORMES_DE_CURSEUR
|
MODE_400_540,
|
||||||
{
|
MODE_400_564,
|
||||||
FORME_CURSEUR_FLECHE,
|
MODE_400_600,
|
||||||
FORME_CURSEUR_CIBLE, // Utilise le pinceau
|
MODE_640_224, // 45
|
||||||
FORME_CURSEUR_CIBLE_PIPETTE, // Utilise le pinceau
|
MODE_640_240,
|
||||||
FORME_CURSEUR_SABLIER,
|
MODE_640_256,
|
||||||
FORME_CURSEUR_MULTIDIRECTIONNEL,
|
MODE_640_270,
|
||||||
FORME_CURSEUR_HORIZONTAL,
|
MODE_640_300,
|
||||||
FORME_CURSEUR_CIBLE_FINE, // Utilise le pinceau
|
MODE_640_350,
|
||||||
FORME_CURSEUR_CIBLE_PIPETTE_FINE, // Utilise le pinceau
|
MODE_640_400,
|
||||||
FORME_CURSEUR_CIBLE_XOR,
|
MODE_640_448,
|
||||||
FORME_CURSEUR_RECTANGLE_XOR,
|
MODE_640_480,
|
||||||
FORME_CURSEUR_ROTATE_XOR
|
MODE_640_512,
|
||||||
};
|
MODE_640_540,
|
||||||
|
MODE_640_564,
|
||||||
// Les différentes formes de pinceaux (les types de pinceaux doivent être au début)
|
MODE_640_600,
|
||||||
|
MODE_800_600,
|
||||||
enum FORMES_DE_PINCEAUX
|
MODE_1024_768 // 59
|
||||||
{
|
};
|
||||||
FORME_PINCEAU_ROND,
|
|
||||||
FORME_PINCEAU_CARRE,
|
// Les différentes catégories de bouton:
|
||||||
FORME_PINCEAU_BARRE_HORIZONTALE,
|
|
||||||
FORME_PINCEAU_BARRE_VERTICALE,
|
enum FAMILLES_DE_BOUTONS
|
||||||
FORME_PINCEAU_SLASH,
|
{
|
||||||
FORME_PINCEAU_ANTISLASH,
|
FAMILLE_OUTIL=1, // Outils de dessin
|
||||||
FORME_PINCEAU_ALEATOIRE,
|
FAMILLE_INTERRUPTION, // Opération éphémŠre
|
||||||
FORME_PINCEAU_X,
|
FAMILLE_INSTANTANE, // Pif paf
|
||||||
FORME_PINCEAU_PLUS,
|
FAMILLE_TOOLBAR, // Cache/Montre la barre d'outils
|
||||||
FORME_PINCEAU_LOSANGE,
|
FAMILLE_EFFETS // Effets
|
||||||
FORME_PINCEAU_ROND_TRAME,
|
};
|
||||||
FORME_PINCEAU_CARRE_TRAME,
|
|
||||||
FORME_PINCEAU_DIVERS,// Ce doit être le dernier des types de pinceaux, comme ‡a il indique le nombre de types de pinceaux (-1)
|
// Les différentes formes de bouton:
|
||||||
FORME_PINCEAU_POINT, // Utilisé pour réduire de pinceau à 1 point dans certaines opérations
|
|
||||||
FORME_PINCEAU_BROSSE_COULEUR,
|
enum FORMES_DE_BOUTONS
|
||||||
FORME_PINCEAU_BROSSE_MONOCHROME
|
{
|
||||||
};
|
FORME_BOUTON_SANS_CADRE, // Ex: la palette
|
||||||
|
FORME_BOUTON_RECTANGLE, // Ex: la plupart
|
||||||
// Les différents états de bouton:
|
FORME_BOUTON_TRIANGLE_HAUT_GAUCHE, // Ex: Rectangles vides
|
||||||
|
FORME_BOUTON_TRIANGLE_BAS_DROITE // Ex: Rectangles pleins
|
||||||
#define BOUTON_RELACHE 0
|
};
|
||||||
#define BOUTON_ENFONCE 1
|
|
||||||
|
// Les différentes formes de curseur:
|
||||||
// Les différents modes de Shade
|
|
||||||
|
enum FORMES_DE_CURSEUR
|
||||||
enum MODES_DE_SHADE
|
{
|
||||||
{
|
FORME_CURSEUR_FLECHE,
|
||||||
MODE_SHADE_NORMAL,
|
FORME_CURSEUR_CIBLE, // Utilise le pinceau
|
||||||
MODE_SHADE_BOUCLE,
|
FORME_CURSEUR_CIBLE_PIPETTE, // Utilise le pinceau
|
||||||
MODE_SHADE_NOSAT
|
FORME_CURSEUR_SABLIER,
|
||||||
};
|
FORME_CURSEUR_MULTIDIRECTIONNEL,
|
||||||
|
FORME_CURSEUR_HORIZONTAL,
|
||||||
// Les différents chunks du fichier .CFG
|
FORME_CURSEUR_CIBLE_FINE, // Utilise le pinceau
|
||||||
|
FORME_CURSEUR_CIBLE_PIPETTE_FINE, // Utilise le pinceau
|
||||||
enum CHUNKS_CFG
|
FORME_CURSEUR_CIBLE_XOR,
|
||||||
{
|
FORME_CURSEUR_RECTANGLE_XOR,
|
||||||
CHUNK_TOUCHES,
|
FORME_CURSEUR_ROTATE_XOR
|
||||||
CHUNK_MODES_VIDEO,
|
};
|
||||||
CHUNK_SHADE,
|
|
||||||
CHUNK_MASQUE,
|
// Les différentes formes de pinceaux (les types de pinceaux doivent être au début)
|
||||||
CHUNK_STENCIL,
|
|
||||||
CHUNK_DEGRADES,
|
enum FORMES_DE_PINCEAUX
|
||||||
CHUNK_SMOOTH,
|
{
|
||||||
CHUNK_EXCLUDE_COLORS,
|
FORME_PINCEAU_ROND,
|
||||||
CHUNK_QUICK_SHADE
|
FORME_PINCEAU_CARRE,
|
||||||
};
|
FORME_PINCEAU_BARRE_HORIZONTALE,
|
||||||
|
FORME_PINCEAU_BARRE_VERTICALE,
|
||||||
// Les différents types de lecteurs:
|
FORME_PINCEAU_SLASH,
|
||||||
|
FORME_PINCEAU_ANTISLASH,
|
||||||
enum TYPES_DE_LECTEURS
|
FORME_PINCEAU_ALEATOIRE,
|
||||||
{
|
FORME_PINCEAU_X,
|
||||||
DRIVE_FLOPPY_3_5, // 0: Diskette 3"«
|
FORME_PINCEAU_PLUS,
|
||||||
DRIVE_FLOPPY_5_25, // 1: Diskette 5"¬
|
FORME_PINCEAU_LOSANGE,
|
||||||
DRIVE_HDD, // 2: HDD
|
FORME_PINCEAU_ROND_TRAME,
|
||||||
DRIVE_CDROM, // 3: CD-ROM
|
FORME_PINCEAU_CARRE_TRAME,
|
||||||
DRIVE_NETWORK // 4: Logique (réseau?)
|
FORME_PINCEAU_DIVERS,// Ce doit être le dernier des types de pinceaux, comme ‡a il indique le nombre de types de pinceaux (-1)
|
||||||
};
|
FORME_PINCEAU_POINT, // Utilisé pour réduire de pinceau à 1 point dans certaines opérations
|
||||||
|
FORME_PINCEAU_BROSSE_COULEUR,
|
||||||
// Les différents boutons:
|
FORME_PINCEAU_BROSSE_MONOCHROME
|
||||||
|
};
|
||||||
enum NUMEROS_DE_BOUTONS
|
|
||||||
{
|
// Les différents états de bouton:
|
||||||
BOUTON_PINCEAUX,
|
|
||||||
BOUTON_AJUSTER,
|
#define BOUTON_RELACHE 0
|
||||||
BOUTON_DESSIN,
|
#define BOUTON_ENFONCE 1
|
||||||
BOUTON_COURBES,
|
|
||||||
BOUTON_LIGNES,
|
// Les différents modes de Shade
|
||||||
BOUTON_SPRAY,
|
|
||||||
BOUTON_FLOODFILL,
|
enum MODES_DE_SHADE
|
||||||
BOUTON_POLYGONES,
|
{
|
||||||
BOUTON_POLYFILL,
|
MODE_SHADE_NORMAL,
|
||||||
BOUTON_RECTANGLES,
|
MODE_SHADE_BOUCLE,
|
||||||
BOUTON_FILLRECT,
|
MODE_SHADE_NOSAT
|
||||||
BOUTON_CERCLES,
|
};
|
||||||
BOUTON_FILLCERC,
|
|
||||||
BOUTON_GRADRECT,
|
// Les différents chunks du fichier .CFG
|
||||||
BOUTON_GRADMENU,
|
|
||||||
BOUTON_SPHERES,
|
enum CHUNKS_CFG
|
||||||
BOUTON_BROSSE,
|
{
|
||||||
BOUTON_POLYBROSSE,
|
CHUNK_TOUCHES,
|
||||||
BOUTON_EFFETS_BROSSE,
|
CHUNK_MODES_VIDEO,
|
||||||
BOUTON_EFFETS,
|
CHUNK_SHADE,
|
||||||
BOUTON_TEXTE,
|
CHUNK_MASQUE,
|
||||||
BOUTON_LOUPE,
|
CHUNK_STENCIL,
|
||||||
BOUTON_PIPETTE,
|
CHUNK_DEGRADES,
|
||||||
BOUTON_RESOL,
|
CHUNK_SMOOTH,
|
||||||
BOUTON_PAGE,
|
CHUNK_EXCLUDE_COLORS,
|
||||||
BOUTON_SAUVER,
|
CHUNK_QUICK_SHADE
|
||||||
BOUTON_CHARGER,
|
};
|
||||||
BOUTON_PARAMETRES,
|
|
||||||
BOUTON_CLEAR,
|
// Les différents types de lecteurs:
|
||||||
BOUTON_AIDE,
|
|
||||||
BOUTON_UNDO,
|
enum TYPES_DE_LECTEURS
|
||||||
BOUTON_KILL,
|
{
|
||||||
BOUTON_QUIT,
|
DRIVE_FLOPPY_3_5, // 0: Diskette 3"«
|
||||||
BOUTON_PALETTE,
|
DRIVE_FLOPPY_5_25, // 1: Diskette 5"¬
|
||||||
BOUTON_PAL_LEFT,
|
DRIVE_HDD, // 2: HDD
|
||||||
BOUTON_PAL_RIGHT,
|
DRIVE_CDROM, // 3: CD-ROM
|
||||||
BOUTON_CHOIX_COL,
|
DRIVE_NETWORK // 4: Logique (réseau?)
|
||||||
BOUTON_CACHER
|
};
|
||||||
};
|
|
||||||
|
// Les différents boutons:
|
||||||
// Les actions des touches spéciales
|
|
||||||
|
enum NUMEROS_DE_BOUTONS
|
||||||
enum ACTIONS_SPECIALES
|
{
|
||||||
{
|
BOUTON_PINCEAUX,
|
||||||
SPECIAL_MOUSE_UP, // |
|
BOUTON_AJUSTER,
|
||||||
SPECIAL_MOUSE_DOWN, // |
|
BOUTON_DESSIN,
|
||||||
SPECIAL_MOUSE_LEFT, // |
|
BOUTON_COURBES,
|
||||||
SPECIAL_MOUSE_RIGHT, // |
|
BOUTON_LIGNES,
|
||||||
SPECIAL_CLICK_LEFT, // | Il faut garder
|
BOUTON_SPRAY,
|
||||||
SPECIAL_CLICK_RIGHT, // | ces constantes
|
BOUTON_FLOODFILL,
|
||||||
SPECIAL_NEXT_FORECOLOR, // | au début de la
|
BOUTON_POLYGONES,
|
||||||
SPECIAL_PREVIOUS_FORECOLOR, // |_ liste car elles
|
BOUTON_POLYFILL,
|
||||||
SPECIAL_NEXT_BACKCOLOR, // | sont réutilisées
|
BOUTON_RECTANGLES,
|
||||||
SPECIAL_PREVIOUS_BACKCOLOR, // | avec leurs valeurs
|
BOUTON_FILLRECT,
|
||||||
SPECIAL_RETRECIR_PINCEAU, // | brutes en ASM dans
|
BOUTON_CERCLES,
|
||||||
SPECIAL_GROSSIR_PINCEAU, // | Get_input !!!
|
BOUTON_FILLCERC,
|
||||||
SPECIAL_NEXT_USER_FORECOLOR, // |
|
BOUTON_GRADRECT,
|
||||||
SPECIAL_PREVIOUS_USER_FORECOLOR, // |
|
BOUTON_GRADMENU,
|
||||||
SPECIAL_NEXT_USER_BACKCOLOR, // |
|
BOUTON_SPHERES,
|
||||||
SPECIAL_PREVIOUS_USER_BACKCOLOR, // |
|
BOUTON_BROSSE,
|
||||||
SPECIAL_SCROLL_UP,
|
BOUTON_POLYBROSSE,
|
||||||
SPECIAL_SCROLL_DOWN,
|
BOUTON_EFFETS_BROSSE,
|
||||||
SPECIAL_SCROLL_LEFT,
|
BOUTON_EFFETS,
|
||||||
SPECIAL_SCROLL_RIGHT,
|
BOUTON_TEXTE,
|
||||||
SPECIAL_SCROLL_UP_FAST,
|
BOUTON_LOUPE,
|
||||||
SPECIAL_SCROLL_DOWN_FAST,
|
BOUTON_PIPETTE,
|
||||||
SPECIAL_SCROLL_LEFT_FAST,
|
BOUTON_RESOL,
|
||||||
SPECIAL_SCROLL_RIGHT_FAST,
|
BOUTON_PAGE,
|
||||||
SPECIAL_SCROLL_UP_SLOW,
|
BOUTON_SAUVER,
|
||||||
SPECIAL_SCROLL_DOWN_SLOW,
|
BOUTON_CHARGER,
|
||||||
SPECIAL_SCROLL_LEFT_SLOW,
|
BOUTON_PARAMETRES,
|
||||||
SPECIAL_SCROLL_RIGHT_SLOW,
|
BOUTON_CLEAR,
|
||||||
SPECIAL_SHOW_HIDE_CURSOR,
|
BOUTON_AIDE,
|
||||||
SPECIAL_PINCEAU_POINT,
|
BOUTON_UNDO,
|
||||||
SPECIAL_DESSIN_CONTINU,
|
BOUTON_KILL,
|
||||||
SPECIAL_FLIP_X,
|
BOUTON_QUIT,
|
||||||
SPECIAL_FLIP_Y,
|
BOUTON_PALETTE,
|
||||||
SPECIAL_ROTATE_90,
|
BOUTON_PAL_LEFT,
|
||||||
SPECIAL_ROTATE_180,
|
BOUTON_PAL_RIGHT,
|
||||||
SPECIAL_STRETCH,
|
BOUTON_CHOIX_COL,
|
||||||
SPECIAL_DISTORT,
|
BOUTON_CACHER
|
||||||
SPECIAL_OUTLINE,
|
};
|
||||||
SPECIAL_NIBBLE,
|
|
||||||
SPECIAL_GET_BRUSH_COLORS,
|
// Les actions des touches spéciales
|
||||||
SPECIAL_RECOLORIZE_BRUSH,
|
|
||||||
SPECIAL_ROTATE_ANY_ANGLE,
|
enum ACTIONS_SPECIALES
|
||||||
SPECIAL_LOAD_BRUSH,
|
{
|
||||||
SPECIAL_SAVE_BRUSH,
|
SPECIAL_MOUSE_UP, // |
|
||||||
SPECIAL_INVERT_SIEVE,
|
SPECIAL_MOUSE_DOWN, // |
|
||||||
SPECIAL_ZOOM_IN,
|
SPECIAL_MOUSE_LEFT, // |
|
||||||
SPECIAL_ZOOM_OUT,
|
SPECIAL_MOUSE_RIGHT, // |
|
||||||
SPECIAL_CENTER_ATTACHMENT,
|
SPECIAL_CLICK_LEFT, // | Il faut garder
|
||||||
SPECIAL_TOP_LEFT_ATTACHMENT,
|
SPECIAL_CLICK_RIGHT, // | ces constantes
|
||||||
SPECIAL_TOP_RIGHT_ATTACHMENT,
|
SPECIAL_NEXT_FORECOLOR, // | au début de la
|
||||||
SPECIAL_BOTTOM_LEFT_ATTACHMENT,
|
SPECIAL_PREVIOUS_FORECOLOR, // |_ liste car elles
|
||||||
SPECIAL_BOTTOM_RIGHT_ATTACHMENT,
|
SPECIAL_NEXT_BACKCOLOR, // | sont réutilisées
|
||||||
SPECIAL_EXCLUDE_COLORS_MENU,
|
SPECIAL_PREVIOUS_BACKCOLOR, // | avec leurs valeurs
|
||||||
SPECIAL_SHADE_MODE, // |
|
SPECIAL_RETRECIR_PINCEAU, // | brutes en ASM dans
|
||||||
SPECIAL_SHADE_MENU, // |
|
SPECIAL_GROSSIR_PINCEAU, // | Get_input !!!
|
||||||
SPECIAL_QUICK_SHADE_MODE, // |
|
SPECIAL_NEXT_USER_FORECOLOR, // |
|
||||||
SPECIAL_QUICK_SHADE_MENU, // |
|
SPECIAL_PREVIOUS_USER_FORECOLOR, // |
|
||||||
SPECIAL_STENCIL_MODE, // |
|
SPECIAL_NEXT_USER_BACKCOLOR, // |
|
||||||
SPECIAL_STENCIL_MENU, // |
|
SPECIAL_PREVIOUS_USER_BACKCOLOR, // |
|
||||||
SPECIAL_MASK_MODE, // | Il faut que le premier effet soit
|
SPECIAL_SCROLL_UP,
|
||||||
SPECIAL_MASK_MENU, // | SPECIAL_SHADE_MODE, et que le
|
SPECIAL_SCROLL_DOWN,
|
||||||
SPECIAL_GRID_MODE, // | dernier soit SPECIAL_TILING_MENU,
|
SPECIAL_SCROLL_LEFT,
|
||||||
SPECIAL_GRID_MENU, // |_ et que seuls des effets soient
|
SPECIAL_SCROLL_RIGHT,
|
||||||
SPECIAL_SIEVE_MODE, // | définis entre ces deux là car
|
SPECIAL_SCROLL_UP_FAST,
|
||||||
SPECIAL_SIEVE_MENU, // | des tests sur cet intervalle sont
|
SPECIAL_SCROLL_DOWN_FAST,
|
||||||
SPECIAL_COLORIZE_MODE, // | faits dans le moteur.
|
SPECIAL_SCROLL_LEFT_FAST,
|
||||||
SPECIAL_COLORIZE_MENU, // |
|
SPECIAL_SCROLL_RIGHT_FAST,
|
||||||
SPECIAL_SMOOTH_MODE, // |
|
SPECIAL_SCROLL_UP_SLOW,
|
||||||
SPECIAL_SMOOTH_MENU, // |
|
SPECIAL_SCROLL_DOWN_SLOW,
|
||||||
SPECIAL_SMEAR_MODE, // |
|
SPECIAL_SCROLL_LEFT_SLOW,
|
||||||
SPECIAL_TILING_MODE, // |
|
SPECIAL_SCROLL_RIGHT_SLOW,
|
||||||
SPECIAL_TILING_MENU // |
|
SPECIAL_SHOW_HIDE_CURSOR,
|
||||||
};
|
SPECIAL_PINCEAU_POINT,
|
||||||
|
SPECIAL_DESSIN_CONTINU,
|
||||||
// Définition des opérations:
|
SPECIAL_FLIP_X,
|
||||||
|
SPECIAL_FLIP_Y,
|
||||||
enum OPERATIONS
|
SPECIAL_ROTATE_90,
|
||||||
{
|
SPECIAL_ROTATE_180,
|
||||||
OPERATION_DESSIN_CONTINU, // Dessin à la main continu
|
SPECIAL_STRETCH,
|
||||||
OPERATION_DESSIN_DISCONTINU, // Dessin à la main discontinu
|
SPECIAL_DISTORT,
|
||||||
OPERATION_DESSIN_POINT, // Dessin à la main point par point
|
SPECIAL_OUTLINE,
|
||||||
OPERATION_LIGNE, // Lignes
|
SPECIAL_NIBBLE,
|
||||||
OPERATION_K_LIGNE, // Lignes reliées
|
SPECIAL_GET_BRUSH_COLORS,
|
||||||
OPERATION_LIGNES_CENTREES, // Lignes concentriques
|
SPECIAL_RECOLORIZE_BRUSH,
|
||||||
OPERATION_RECTANGLE_VIDE, // Rectangle vide
|
SPECIAL_ROTATE_ANY_ANGLE,
|
||||||
OPERATION_RECTANGLE_PLEIN, // Rectangle plein
|
SPECIAL_LOAD_BRUSH,
|
||||||
OPERATION_CERCLE_VIDE, // Cercle vide
|
SPECIAL_SAVE_BRUSH,
|
||||||
OPERATION_CERCLE_PLEIN, // Cercle plein
|
SPECIAL_INVERT_SIEVE,
|
||||||
OPERATION_ELLIPSE_VIDE, // Ellipse vide
|
SPECIAL_ZOOM_IN,
|
||||||
OPERATION_ELLIPSE_PLEINE, // Ellipse pleine
|
SPECIAL_ZOOM_OUT,
|
||||||
OPERATION_FILL, // Fill
|
SPECIAL_CENTER_ATTACHMENT,
|
||||||
OPERATION_REMPLACER, // Remplacer couleur
|
SPECIAL_TOP_LEFT_ATTACHMENT,
|
||||||
OPERATION_PRISE_BROSSE, // Prise de brosse rectangulaire
|
SPECIAL_TOP_RIGHT_ATTACHMENT,
|
||||||
OPERATION_POLYBROSSE, // Prise d'une brosse multiforme
|
SPECIAL_BOTTOM_LEFT_ATTACHMENT,
|
||||||
OPERATION_PIPETTE, // Récupération d'une couleur
|
SPECIAL_BOTTOM_RIGHT_ATTACHMENT,
|
||||||
OPERATION_LOUPE, // Positionnement de la fenêtre de loupe
|
SPECIAL_EXCLUDE_COLORS_MENU,
|
||||||
OPERATION_COURBE_3_POINTS, // Courbe à 3 points
|
SPECIAL_SHADE_MODE, // |
|
||||||
OPERATION_COURBE_4_POINTS, // Courbe à 4 points
|
SPECIAL_SHADE_MENU, // |
|
||||||
OPERATION_SPRAY, // Spray
|
SPECIAL_QUICK_SHADE_MODE, // |
|
||||||
OPERATION_POLYGONE, // Polygone
|
SPECIAL_QUICK_SHADE_MENU, // |
|
||||||
OPERATION_POLYFORM, // Polyforme
|
SPECIAL_STENCIL_MODE, // |
|
||||||
OPERATION_POLYFILL, // Polyfill
|
SPECIAL_STENCIL_MENU, // |
|
||||||
OPERATION_FILLED_POLYFORM, // Polyforme rempli
|
SPECIAL_MASK_MODE, // | Il faut que le premier effet soit
|
||||||
OPERATION_SCROLL, // Scroll
|
SPECIAL_MASK_MENU, // | SPECIAL_SHADE_MODE, et que le
|
||||||
OPERATION_CERCLE_DEGRADE, // Cercles dégradés
|
SPECIAL_GRID_MODE, // | dernier soit SPECIAL_TILING_MENU,
|
||||||
OPERATION_ELLIPSE_DEGRADEE, // Ellipses dégradées
|
SPECIAL_GRID_MENU, // |_ et que seuls des effets soient
|
||||||
OPERATION_TOURNER_BROSSE, // Faire tourner brosse
|
SPECIAL_SIEVE_MODE, // | définis entre ces deux là car
|
||||||
OPERATION_ETIRER_BROSSE, // Etirer brosse
|
SPECIAL_SIEVE_MENU, // | des tests sur cet intervalle sont
|
||||||
OPERATION_DEFORMER_BROSSE, // Deformer brosse
|
SPECIAL_COLORIZE_MODE, // | faits dans le moteur.
|
||||||
|
SPECIAL_COLORIZE_MENU, // |
|
||||||
OPERATION_AUCUNE
|
SPECIAL_SMOOTH_MODE, // |
|
||||||
};
|
SPECIAL_SMOOTH_MENU, // |
|
||||||
|
SPECIAL_SMEAR_MODE, // |
|
||||||
|
SPECIAL_TILING_MODE, // |
|
||||||
|
SPECIAL_TILING_MENU // |
|
||||||
#endif
|
};
|
||||||
|
|
||||||
|
// Définition des opérations:
|
||||||
|
|
||||||
|
enum OPERATIONS
|
||||||
|
{
|
||||||
|
OPERATION_DESSIN_CONTINU, // Dessin à la main continu
|
||||||
|
OPERATION_DESSIN_DISCONTINU, // Dessin à la main discontinu
|
||||||
|
OPERATION_DESSIN_POINT, // Dessin à la main point par point
|
||||||
|
OPERATION_LIGNE, // Lignes
|
||||||
|
OPERATION_K_LIGNE, // Lignes reliées
|
||||||
|
OPERATION_LIGNES_CENTREES, // Lignes concentriques
|
||||||
|
OPERATION_RECTANGLE_VIDE, // Rectangle vide
|
||||||
|
OPERATION_RECTANGLE_PLEIN, // Rectangle plein
|
||||||
|
OPERATION_CERCLE_VIDE, // Cercle vide
|
||||||
|
OPERATION_CERCLE_PLEIN, // Cercle plein
|
||||||
|
OPERATION_ELLIPSE_VIDE, // Ellipse vide
|
||||||
|
OPERATION_ELLIPSE_PLEINE, // Ellipse pleine
|
||||||
|
OPERATION_FILL, // Fill
|
||||||
|
OPERATION_REMPLACER, // Remplacer couleur
|
||||||
|
OPERATION_PRISE_BROSSE, // Prise de brosse rectangulaire
|
||||||
|
OPERATION_POLYBROSSE, // Prise d'une brosse multiforme
|
||||||
|
OPERATION_PIPETTE, // Récupération d'une couleur
|
||||||
|
OPERATION_LOUPE, // Positionnement de la fenêtre de loupe
|
||||||
|
OPERATION_COURBE_3_POINTS, // Courbe à 3 points
|
||||||
|
OPERATION_COURBE_4_POINTS, // Courbe à 4 points
|
||||||
|
OPERATION_SPRAY, // Spray
|
||||||
|
OPERATION_POLYGONE, // Polygone
|
||||||
|
OPERATION_POLYFORM, // Polyforme
|
||||||
|
OPERATION_POLYFILL, // Polyfill
|
||||||
|
OPERATION_FILLED_POLYFORM, // Polyforme rempli
|
||||||
|
OPERATION_SCROLL, // Scroll
|
||||||
|
OPERATION_CERCLE_DEGRADE, // Cercles dégradés
|
||||||
|
OPERATION_ELLIPSE_DEGRADEE, // Ellipses dégradées
|
||||||
|
OPERATION_TOURNER_BROSSE, // Faire tourner brosse
|
||||||
|
OPERATION_ETIRER_BROSSE, // Etirer brosse
|
||||||
|
OPERATION_DEFORMER_BROSSE, // Deformer brosse
|
||||||
|
|
||||||
|
OPERATION_AUCUNE
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|||||||
10
divers.c
10
divers.c
@ -126,7 +126,13 @@ void Get_input(void)
|
|||||||
break;
|
break;
|
||||||
case SDL_MOUSEBUTTONDOWN:
|
case SDL_MOUSEBUTTONDOWN:
|
||||||
//Clic sur un des boutons de la souris
|
//Clic sur un des boutons de la souris
|
||||||
INPUT_Nouveau_Mouse_K=event.button.button;
|
switch(event.button.button)
|
||||||
|
{
|
||||||
|
case SDL_BUTTON_LEFT: INPUT_Nouveau_Mouse_K = 1; break;
|
||||||
|
case SDL_BUTTON_MIDDLE: // Pour SDL, 2 = clic milieu. Pour nous c'est le clic droit
|
||||||
|
case SDL_BUTTON_RIGHT: // Clic droit SDL, clic droit pour nous aussi ( pour le moment en tout cas)
|
||||||
|
INPUT_Nouveau_Mouse_K = 2;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SDL_MOUSEBUTTONUP:
|
case SDL_MOUSEBUTTONUP:
|
||||||
//Bouton souris relaché
|
//Bouton souris relaché
|
||||||
@ -450,7 +456,7 @@ void Rotate_90_deg_LOWLEVEL(byte * Source,byte * Destination)
|
|||||||
|
|
||||||
void Remap_general_LOWLEVEL(byte * Table_conv,byte * Buffer,short Largeur,short Hauteur,short Largeur_buffer)
|
void Remap_general_LOWLEVEL(byte * Table_conv,byte * Buffer,short Largeur,short Hauteur,short Largeur_buffer)
|
||||||
{
|
{
|
||||||
puts("Remap_general_LOWLEVEL non implémenté!");
|
UNIMPLEMENTED
|
||||||
}
|
}
|
||||||
|
|
||||||
void Copier_image_dans_brosse(short Debut_X,short Debut_Y,short Brosse_Largeur,short Brosse_Hauteur,word Largeur_image)
|
void Copier_image_dans_brosse(short Debut_X,short Debut_Y,short Brosse_Largeur,short Brosse_Hauteur,word Largeur_image)
|
||||||
|
|||||||
3
graph.c
3
graph.c
@ -3003,7 +3003,8 @@ void Afficher_sprite_dans_menu(int Numero_bouton,int Numero_sprite)
|
|||||||
Pixel_dans_menu(Pos_menu_X,Pos_menu_Y,Couleur);
|
Pixel_dans_menu(Pos_menu_X,Pos_menu_Y,Couleur);
|
||||||
BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
|
BLOCK_MENU[Pos_menu_Y][Pos_menu_X]=Couleur;
|
||||||
}
|
}
|
||||||
SDL_UpdateRect(Ecran_SDL,0,Menu_Ordonnee*Menu_Facteur_Y,Pos_X*Menu_Facteur_X,Pos_Y*Menu_Facteur_Y);
|
SDL_UpdateRect(Ecran_SDL,Menu_Facteur_X*(Bouton[Numero_bouton].Decalage_X+1),(Bouton[Numero_bouton].Decalage_Y+1)*Menu_Facteur_Y,
|
||||||
|
Pos_X*Menu_Facteur_X,Pos_Y*Menu_Facteur_Y);
|
||||||
}
|
}
|
||||||
|
|
||||||
// -- Redessiner la forme du pinceau dans le menu --
|
// -- Redessiner la forme du pinceau dans le menu --
|
||||||
|
|||||||
@ -8,6 +8,7 @@
|
|||||||
#include "operatio.h"
|
#include "operatio.h"
|
||||||
#include "boutons.h"
|
#include "boutons.h"
|
||||||
#include "pages.h"
|
#include "pages.h"
|
||||||
|
#include "erreurs.h"
|
||||||
|
|
||||||
#ifdef __WATCOMC__
|
#ifdef __WATCOMC__
|
||||||
#define M_PI 3.14159265358979323846
|
#define M_PI 3.14159265358979323846
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user