00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _CONST_H_
00023 #define _CONST_H_
00024
00025
00026
00027
00028
00029 #define M_2PI 6.28318530717958647692528676656
00030
00031 #define POURCENTAGE_VERSION "98.0%" // Libellé du pourcentage de la version ß
00032 #define VERSION1 2 // |
00033 #define VERSION2 0 // |_ Numéro de version découpé en
00034 #define BETA1 98 // | plusieurs parties => 2.0 ß95.5%
00035 #define BETA2 0 // | (utilisé pour le fichier de config)
00036 #define ALPHA_BETA "ß" // Type de la version "Þ" ou "ß"
00037 #define MAX_MODES_VIDEO 100 // Nombre de modes vidéo maxi
00038 #define NB_BOUTONS 38 // Nombre de boutons à gérer
00039 #define NB_TOUCHES 134 // Nombre de combinaisons de touches
00040 #define NB_TOUCHES_SPECIALES 72 // Nombre de touches spéciales
00041 #define NB_OPERATIONS 33 // Nombre d'opérations gérées par le moteur
00042 #define NB_FACTEURS_DE_ZOOM 12 // Nombre de facteurs de zoom
00043 #define LARGEUR_MENU 254 // Largeur du menu en taille réelle
00044 #define HAUTEUR_MENU 44 // Hauteur du menu en taille réelle
00045 #define NB_SPRITES_CURSEUR 8 // Nombre de sprites de curseur
00046 #define LARGEUR_SPRITE_CURSEUR 15 // Largeur d'un sprite de curseur en pixels
00047 #define HAUTEUR_SPRITE_CURSEUR 15 // Hauteur d'un sprite de curseur en pixels
00048 #define NB_SPRITES_EFFETS 9 // Nombre de sprites d'effets
00049 #define NB_SPRITES_MENU 18 // Nombre de sprites de menu
00050 #define LARGEUR_SPRITE_MENU 14 // Largeur d'un sprite de menu en pixels
00051 #define HAUTEUR_SPRITE_MENU 14 // Hauteur d'un sprite de menu en pixels
00052 #define LARGEUR_PINCEAU 16 // Largeur d'un sprite de pinceau prédéfini
00053 #define HAUTEUR_PINCEAU 16 // Hauteur d'un sprite de pinceau prédéfini
00054 #define TAILLE_MAXI_PINCEAU 127 // Taille maxi des pinceaux
00055 #define NB_SPRITES_DRIVES 7 // Nombre de sprites de drives
00056 #define LARGEUR_SPRITE_DRIVE 8 // Largeur d'un sprite de drive en pixels
00057 #define HAUTEUR_SPRITE_DRIVE 8 // Hauteur d'un sprite de drive en pixels
00058 #define NB_SPRITES_PINCEAU 48 // Nombre de sprites de pinceau
00059 #define NB_TRAMES_PREDEFINIES 12 // Nombre de trames prédéfinies
00060 #define TAILLE_PILE_OPERATIONS 16 // Nombre maximum d'éléments utilisés par les opérations
00061 #define TAILLE_MAXI_PATH 37 // Taille maximum affichable du répertoire courant dans les fenêtres du fileselect
00062 #define TAILLE_COMMENTAIRE 32 // Taille maxi des commentaires pour le PKM
00063 #define NB_PAGES_UNDO_MAX 99 // Nombre maximal de pages d'undo
00064 #define FACTEUR_DE_ZOOM_PAR_DEFAUT 4 // Facteur de zoom initial
00065 #define TAILLE_CHEMIN_FICHIER 260 // Le nombre de caractères maxi pour un nom de fichier avec chemin complet
00066 #define NB_BOOKMARKS 4 // Nombre de boutons "signet" dans l'ecran Save/Load
00067
00068 #define CARACTERE_TRIANGLE_DROIT 16
00069 #define CARACTERE_TRIANGLE_GAUCHE 17
00070 #define CARACTERE_SUSPENSION '…'
00071
00072
00073
00074
00075 #define QUANTITE_MINIMALE_DE_MEMOIRE_A_CONSERVER (256*1024)
00076
00077 #define A_GAUCHE 1 // Indique une direction (ou click) à gauche
00078 #define A_DROITE 2 // Indique une direction (ou click) à droite
00079
00080 #define LARGEUR_BARRE_SPLIT 6 // [ Û±±° ]
00081 #define PROPORTION_SPLIT 0.3 // proportion de la zone non-zoomée en largeur par rapport à l'écran
00082 #define NB_PIXELS_ZOOMES_MIN 4 // Nombre minimal de pixels zoomés en largeur (Note: En dessous de 4, on ne peut plus scroller!)
00083
00084 #if defined(__MORPHOS__) || defined(__amigaos4__) || defined(__amigaos__)
00085 #define PARENT_DIR "/"
00086 #else
00087 #define PARENT_DIR ".."
00088 #endif
00089
00090
00091
00092 #ifndef __no_pnglib__
00093 #define NB_FORMATS_CONNUS 13 // 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}))
00094 #define NB_FORMATS_LOAD 13 // Nombre de formats que l'on sait charger
00095 #define NB_FORMATS_SAVE 13 // Nombre de formats que l'on sait sauver
00096 #else
00097
00098 #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}))
00099 #define NB_FORMATS_LOAD 12 // Nombre de formats que l'on sait charger
00100 #define NB_FORMATS_SAVE 12 // Nombre de formats que l'on sait sauver
00101 #endif
00102
00103 enum FORMATS_RECONNUS
00104 {
00105 FORMAT_PKM=1,
00106 FORMAT_LBM,
00107 FORMAT_GIF,
00108 FORMAT_BMP,
00109 FORMAT_PCX,
00110 FORMAT_IMG,
00111 FORMAT_SCx,
00112 FORMAT_PI1,
00113 FORMAT_PC1,
00114 FORMAT_CEL,
00115 FORMAT_KCF,
00116 FORMAT_PAL,
00117 FORMAT_PNG
00118 };
00119
00120 #define FORMAT_PAR_DEFAUT FORMAT_GIF // Format par défaut (ah bon? oh!)
00121
00122
00123
00124 enum CODES_D_ERREURS
00125 {
00126
00127 ERREUR_GUI_ABSENT=1,
00128 ERREUR_GUI_CORROMPU,
00129 ERREUR_INI_ABSENT,
00130 ERREUR_CFG_ABSENT,
00131 ERREUR_CFG_CORROMPU,
00132 ERREUR_CFG_ANCIEN,
00133 ERREUR_MEMOIRE,
00134 ERREUR_LIGNE_COMMANDE,
00135 ERREUR_DRIVER_SOURIS,
00136 ERREUR_MODE_INTERDIT,
00137 ERREUR_SAUVEGARDE_CFG,
00138 ERREUR_REPERTOIRE_DISPARU,
00139 ERREUR_INI_CORROMPU,
00140 ERREUR_SAUVEGARDE_INI,
00141 ERREUR_SORRY_SORRY_SORRY
00142 };
00143
00144
00145
00146 enum PIXEL_RATIO
00147 {
00148 PIXEL_SIMPLE,
00149 PIXEL_WIDE,
00150 PIXEL_TALL,
00151 PIXEL_DOUBLE
00152 };
00153
00154
00155
00156 enum FAMILLES_DE_BOUTONS
00157 {
00158 FAMILLE_OUTIL=1,
00159 FAMILLE_INTERRUPTION,
00160 FAMILLE_INSTANTANE,
00161 FAMILLE_TOOLBAR,
00162 FAMILLE_EFFETS
00163 };
00164
00165
00166
00167 enum FORMES_DE_BOUTONS
00168 {
00169 FORME_BOUTON_SANS_CADRE,
00170 FORME_BOUTON_RECTANGLE,
00171 FORME_BOUTON_TRIANGLE_HAUT_GAUCHE,
00172 FORME_BOUTON_TRIANGLE_BAS_DROITE
00173 };
00174
00175
00176
00177 enum FORMES_DE_CURSEUR
00178 {
00179 FORME_CURSEUR_FLECHE,
00180 FORME_CURSEUR_CIBLE,
00181 FORME_CURSEUR_CIBLE_PIPETTE,
00182 FORME_CURSEUR_SABLIER,
00183 FORME_CURSEUR_MULTIDIRECTIONNEL,
00184 FORME_CURSEUR_HORIZONTAL,
00185 FORME_CURSEUR_CIBLE_FINE,
00186 FORME_CURSEUR_CIBLE_PIPETTE_FINE,
00187 FORME_CURSEUR_CIBLE_XOR,
00188 FORME_CURSEUR_RECTANGLE_XOR,
00189 FORME_CURSEUR_ROTATE_XOR
00190 };
00191
00192
00193
00194 enum FORMES_DE_PINCEAUX
00195 {
00196 FORME_PINCEAU_ROND,
00197 FORME_PINCEAU_CARRE,
00198 FORME_PINCEAU_BARRE_HORIZONTALE,
00199 FORME_PINCEAU_BARRE_VERTICALE,
00200 FORME_PINCEAU_SLASH,
00201 FORME_PINCEAU_ANTISLASH,
00202 FORME_PINCEAU_ALEATOIRE,
00203 FORME_PINCEAU_X,
00204 FORME_PINCEAU_PLUS,
00205 FORME_PINCEAU_LOSANGE,
00206 FORME_PINCEAU_ROND_TRAME,
00207 FORME_PINCEAU_CARRE_TRAME,
00208 FORME_PINCEAU_DIVERS,
00209 FORME_PINCEAU_POINT,
00210 FORME_PINCEAU_BROSSE_COULEUR,
00211 FORME_PINCEAU_BROSSE_MONOCHROME
00212 };
00213
00214
00215
00216 #define BOUTON_RELACHE 0
00217 #define BOUTON_ENFONCE 1
00218
00219
00220
00221 enum MODES_DE_SHADE
00222 {
00223 MODE_SHADE_NORMAL,
00224 MODE_SHADE_BOUCLE,
00225 MODE_SHADE_NOSAT
00226 };
00227
00228
00229
00230 enum CHUNKS_CFG
00231 {
00232 CHUNK_TOUCHES = 0,
00233 CHUNK_MODES_VIDEO = 1,
00234 CHUNK_SHADE = 2,
00235 CHUNK_MASQUE = 3,
00236 CHUNK_STENCIL = 4,
00237 CHUNK_DEGRADES = 5,
00238 CHUNK_SMOOTH = 6,
00239 CHUNK_EXCLUDE_COLORS = 7,
00240 CHUNK_QUICK_SHADE = 8,
00241 CHUNK_GRILLE = 9,
00242 CHUNK_MAX
00243 };
00244
00245
00246
00247 enum TYPES_DE_LECTEURS
00248 {
00249 LECTEUR_FLOPPY_3_5,
00250 LECTEUR_FLOPPY_5_25,
00251 LECTEUR_HDD,
00252 LECTEUR_CDROM,
00253 LECTEUR_NETWORK
00254 };
00255
00256
00257
00258 enum NUMEROS_DE_BOUTONS
00259 {
00260 BOUTON_PINCEAUX,
00261 BOUTON_AJUSTER,
00262 BOUTON_DESSIN,
00263 BOUTON_COURBES,
00264 BOUTON_LIGNES,
00265 BOUTON_SPRAY,
00266 BOUTON_FLOODFILL,
00267 BOUTON_POLYGONES,
00268 BOUTON_POLYFILL,
00269 BOUTON_RECTANGLES,
00270 BOUTON_FILLRECT,
00271 BOUTON_CERCLES,
00272 BOUTON_FILLCERC,
00273 BOUTON_GRADRECT,
00274 BOUTON_GRADMENU,
00275 BOUTON_SPHERES,
00276 BOUTON_BROSSE,
00277 BOUTON_POLYBROSSE,
00278 BOUTON_EFFETS_BROSSE,
00279 BOUTON_EFFETS,
00280 BOUTON_TEXTE,
00281 BOUTON_LOUPE,
00282 BOUTON_PIPETTE,
00283 BOUTON_RESOL,
00284 BOUTON_PAGE,
00285 BOUTON_SAUVER,
00286 BOUTON_CHARGER,
00287 BOUTON_PARAMETRES,
00288 BOUTON_CLEAR,
00289 BOUTON_AIDE,
00290 BOUTON_UNDO,
00291 BOUTON_KILL,
00292 BOUTON_QUIT,
00293 BOUTON_PALETTE,
00294 BOUTON_PAL_LEFT,
00295 BOUTON_PAL_RIGHT,
00296 BOUTON_CHOIX_COL,
00297 BOUTON_CACHER
00298 };
00299
00300
00301
00302 enum ACTIONS_SPECIALES
00303 {
00304 SPECIAL_MOUSE_UP,
00305 SPECIAL_MOUSE_DOWN,
00306 SPECIAL_MOUSE_LEFT,
00307 SPECIAL_MOUSE_RIGHT,
00308 SPECIAL_CLICK_LEFT,
00309 SPECIAL_CLICK_RIGHT,
00310 SPECIAL_NEXT_FORECOLOR,
00311 SPECIAL_PREVIOUS_FORECOLOR,
00312 SPECIAL_NEXT_BACKCOLOR,
00313 SPECIAL_PREVIOUS_BACKCOLOR,
00314 SPECIAL_RETRECIR_PINCEAU,
00315 SPECIAL_GROSSIR_PINCEAU,
00316 SPECIAL_NEXT_USER_FORECOLOR,
00317 SPECIAL_PREVIOUS_USER_FORECOLOR,
00318 SPECIAL_NEXT_USER_BACKCOLOR,
00319 SPECIAL_PREVIOUS_USER_BACKCOLOR,
00320 SPECIAL_SCROLL_UP,
00321 SPECIAL_SCROLL_DOWN,
00322 SPECIAL_SCROLL_LEFT,
00323 SPECIAL_SCROLL_RIGHT,
00324 SPECIAL_SCROLL_UP_FAST,
00325 SPECIAL_SCROLL_DOWN_FAST,
00326 SPECIAL_SCROLL_LEFT_FAST,
00327 SPECIAL_SCROLL_RIGHT_FAST,
00328 SPECIAL_SCROLL_UP_SLOW,
00329 SPECIAL_SCROLL_DOWN_SLOW,
00330 SPECIAL_SCROLL_LEFT_SLOW,
00331 SPECIAL_SCROLL_RIGHT_SLOW,
00332 SPECIAL_SHOW_HIDE_CURSOR,
00333 SPECIAL_PINCEAU_POINT,
00334 SPECIAL_DESSIN_CONTINU,
00335 SPECIAL_FLIP_X,
00336 SPECIAL_FLIP_Y,
00337 SPECIAL_ROTATE_90,
00338 SPECIAL_ROTATE_180,
00339 SPECIAL_STRETCH,
00340 SPECIAL_DISTORT,
00341 SPECIAL_OUTLINE,
00342 SPECIAL_NIBBLE,
00343 SPECIAL_GET_BRUSH_COLORS,
00344 SPECIAL_RECOLORIZE_BRUSH,
00345 SPECIAL_ROTATE_ANY_ANGLE,
00346 SPECIAL_LOAD_BRUSH,
00347 SPECIAL_SAVE_BRUSH,
00348 SPECIAL_INVERT_SIEVE,
00349 SPECIAL_ZOOM_IN,
00350 SPECIAL_ZOOM_OUT,
00351 SPECIAL_CENTER_ATTACHMENT,
00352 SPECIAL_TOP_LEFT_ATTACHMENT,
00353 SPECIAL_TOP_RIGHT_ATTACHMENT,
00354 SPECIAL_BOTTOM_LEFT_ATTACHMENT,
00355 SPECIAL_BOTTOM_RIGHT_ATTACHMENT,
00356 SPECIAL_EXCLUDE_COLORS_MENU,
00357 SPECIAL_SHADE_MODE,
00358 SPECIAL_SHADE_MENU,
00359 SPECIAL_QUICK_SHADE_MODE,
00360 SPECIAL_QUICK_SHADE_MENU,
00361 SPECIAL_STENCIL_MODE,
00362 SPECIAL_STENCIL_MENU,
00363 SPECIAL_MASK_MODE,
00364 SPECIAL_MASK_MENU,
00365 SPECIAL_GRID_MODE,
00366 SPECIAL_GRID_MENU,
00367 SPECIAL_SIEVE_MODE,
00368 SPECIAL_SIEVE_MENU,
00369 SPECIAL_COLORIZE_MODE,
00370 SPECIAL_COLORIZE_MENU,
00371 SPECIAL_SMOOTH_MODE,
00372 SPECIAL_SMOOTH_MENU,
00373 SPECIAL_SMEAR_MODE,
00374 SPECIAL_TILING_MODE,
00375 SPECIAL_TILING_MENU
00376 };
00377
00378
00379
00380 enum OPERATIONS
00381 {
00382 OPERATION_DESSIN_CONTINU,
00383 OPERATION_DESSIN_DISCONTINU,
00384 OPERATION_DESSIN_POINT,
00385 OPERATION_FILLED_CONTOUR,
00386 OPERATION_LIGNE,
00387 OPERATION_K_LIGNE,
00388 OPERATION_LIGNES_CENTREES,
00389 OPERATION_RECTANGLE_VIDE,
00390 OPERATION_RECTANGLE_PLEIN,
00391 OPERATION_CERCLE_VIDE,
00392 OPERATION_CERCLE_PLEIN,
00393 OPERATION_ELLIPSE_VIDE,
00394 OPERATION_ELLIPSE_PLEINE,
00395 OPERATION_FILL,
00396 OPERATION_REMPLACER,
00397 OPERATION_PRISE_BROSSE,
00398 OPERATION_POLYBROSSE,
00399 OPERATION_PIPETTE,
00400 OPERATION_LOUPE,
00401 OPERATION_COURBE_3_POINTS,
00402 OPERATION_COURBE_4_POINTS,
00403 OPERATION_SPRAY,
00404 OPERATION_POLYGONE,
00405 OPERATION_POLYFORM,
00406 OPERATION_POLYFILL,
00407 OPERATION_FILLED_POLYFORM,
00408 OPERATION_SCROLL,
00409 OPERATION_CERCLE_DEGRADE,
00410 OPERATION_ELLIPSE_DEGRADEE,
00411 OPERATION_TOURNER_BROSSE,
00412 OPERATION_ETIRER_BROSSE,
00413 OPERATION_DEFORMER_BROSSE,
00414 OPERATION_RECTANGLE_DEGRADE,
00415
00416 OPERATION_AUCUNE
00417 };
00418
00419
00420
00421 #endif