## gimpbaseenums gimpbaseenums — Basic GIMP enumeration data types. |

## Synopsis

    enum                GimpAddMaskType;
    enum                GimpBlendMode;
    enum                GimpBucketFillMode;
    enum                GimpChannelOps;
    enum                GimpChannelType;
    enum                GimpCheckSize;
    enum                GimpCheckType;
    enum                GimpCloneType;
    enum                GimpDesaturateMode;
    enum                GimpDodgeBurnType;
    enum                GimpForegroundExtractMode;
    enum                GimpGradientType;
    enum                GimpGridStyle;
    enum                GimpIconType;
    enum                GimpImageBaseType;
    enum                GimpImageType;
    enum                GimpInterpolationType;
    enum                GimpMessageHandlerType;
    enum                GimpPaintApplicationMode;
    enum                GimpPDBArgType;
    enum                GimpPDBErrorHandler;
    enum                GimpPDBProcType;
    enum                GimpPDBStatusType;
    enum                GimpProgressCommand;
    enum                GimpRepeatMode;
    enum                GimpRunMode;
    enum                GimpSizeType;
    enum                GimpStackTraceMode;
    enum                GimpTextDirection;
    enum                GimpTextHintStyle;
    enum                GimpTextJustification;
    enum                GimpTransferMode;
    enum                GimpTransformDirection;
    enum                GimpTransformResize;
    enum                GimpUserDirectory;
    enum                GimpVectorsStrokeType;

## Description

Basic GIMP enumeration data types.

## Details

### enum GimpAddMaskType

    typedef enum {
      GIMP_ADD_WHITE_MASK,          /*< desc="_White (full opacity)"           >*/
      GIMP_ADD_BLACK_MASK,          /*< desc="_Black (full transparency)"      >*/
      GIMP_ADD_ALPHA_MASK,          /*< desc="Layer's _alpha channel"          >*/
      GIMP_ADD_ALPHA_TRANSFER_MASK, /*< desc="_Transfer layer's alpha channel" >*/
      GIMP_ADD_SELECTION_MASK,      /*< desc="_Selection"                      >*/
      GIMP_ADD_COPY_MASK,           /*< desc="_Grayscale copy of layer"        >*/
      GIMP_ADD_CHANNEL_MASK         /*< desc="C_hannel"                        >*/
    } GimpAddMaskType;

### enum GimpBlendMode

    typedef enum {
      GIMP_FG_BG_RGB_MODE,         /*< desc="FG to BG (RGB)"    >*/
      GIMP_FG_BG_HSV_MODE,         /*< desc="FG to BG (HSV)"    >*/
      GIMP_FG_TRANSPARENT_MODE,    /*< desc="FG to transparent" >*/
      GIMP_CUSTOM_MODE             /*< desc="Custom gradient"   >*/
    } GimpBlendMode;

### enum GimpBucketFillMode

    typedef enum {
      GIMP_FG_BUCKET_FILL,      /*< desc="FG color fill" >*/
      GIMP_BG_BUCKET_FILL,      /*< desc="BG color fill" >*/
      GIMP_PATTERN_BUCKET_FILL  /*< desc="Pattern fill"  >*/
    } GimpBucketFillMode;

### enum GimpChannelOps

    typedef enum {
      GIMP_CHANNEL_OP_ADD,       /*< desc="Add to the current selection"         >*/
      GIMP_CHANNEL_OP_SUBTRACT,  /*< desc="Subtract from the current selection"  >*/
      GIMP_CHANNEL_OP_REPLACE,   /*< desc="Replace the current selection"        >*/
      GIMP_CHANNEL_OP_INTERSECT  /*< desc="Intersect with the current selection" >*/
    } GimpChannelOps;

### enum GimpChannelType

    typedef enum {
      GIMP_RED_CHANNEL,      /*< desc="Red"     >*/
      GIMP_GREEN_CHANNEL,    /*< desc="Green"   >*/
      GIMP_BLUE_CHANNEL,     /*< desc="Blue"    >*/
      GIMP_GRAY_CHANNEL,     /*< desc="Gray"    >*/
      GIMP_INDEXED_CHANNEL,  /*< desc="Indexed" >*/
      GIMP_ALPHA_CHANNEL     /*< desc="Alpha"   >*/
    } GimpChannelType;

### enum GimpCheckSize

    typedef enum {
      GIMP_CHECK_SIZE_SMALL_CHECKS  = 0,  /*< desc="Small"  >*/
      GIMP_CHECK_SIZE_MEDIUM_CHECKS = 1,  /*< desc="Medium" >*/
      GIMP_CHECK_SIZE_LARGE_CHECKS  = 2   /*< desc="Large"  >*/
    } GimpCheckSize;

### enum GimpCheckType

    typedef enum {
      GIMP_CHECK_TYPE_LIGHT_CHECKS = 0,  /*< desc="Light checks"    >*/
      GIMP_CHECK_TYPE_GRAY_CHECKS  = 1,  /*< desc="Mid-tone checks" >*/
      GIMP_CHECK_TYPE_DARK_CHECKS  = 2,  /*< desc="Dark checks"     >*/
      GIMP_CHECK_TYPE_WHITE_ONLY   = 3,  /*< desc="White only"      >*/
      GIMP_CHECK_TYPE_GRAY_ONLY    = 4,  /*< desc="Gray only"       >*/
      GIMP_CHECK_TYPE_BLACK_ONLY   = 5   /*< desc="Black only"      >*/
    } GimpCheckType;

### enum GimpCloneType

    typedef enum {
      GIMP_IMAGE_CLONE,   /*< desc="Image"   >*/
      GIMP_PATTERN_CLONE  /*< desc="Pattern" >*/
    } GimpCloneType;

### enum GimpDesaturateMode

    typedef enum {
      GIMP_DESATURATE_LIGHTNESS,   /*< desc="Lightness"  >*/
      GIMP_DESATURATE_LUMINOSITY,  /*< desc="Luminosity" >*/
      GIMP_DESATURATE_AVERAGE      /*< desc="Average"    >*/
    } GimpDesaturateMode;

### enum GimpDodgeBurnType

    typedef enum {
      GIMP_DODGE,  /*< desc="Dodge" >*/
      GIMP_BURN    /*< desc="Burn"  >*/
    } GimpDodgeBurnType;

### enum GimpForegroundExtractMode

    typedef enum {
      GIMP_FOREGROUND_EXTRACT_SIOX
    } GimpForegroundExtractMode;

### enum GimpGradientType

    typedef enum {
      GIMP_GRADIENT_LINEAR,                /*< desc="Linear"            >*/
      GIMP_GRADIENT_BILINEAR,              /*< desc="Bi-linear"         >*/
      GIMP_GRADIENT_RADIAL,                /*< desc="Radial"            >*/
      GIMP_GRADIENT_SQUARE,                /*< desc="Square"            >*/
      GIMP_GRADIENT_CONICAL_SYMMETRIC,     /*< desc="Conical (sym)"     >*/
      GIMP_GRADIENT_CONICAL_ASYMMETRIC,    /*< desc="Conical (asym)"    >*/
      GIMP_GRADIENT_SHAPEBURST_ANGULAR,    /*< desc="Shaped (angular)"  >*/
      GIMP_GRADIENT_SHAPEBURST_SPHERICAL,  /*< desc="Shaped (spherical)">*/
      GIMP_GRADIENT_SHAPEBURST_DIMPLED,    /*< desc="Shaped (dimpled)"  >*/
      GIMP_GRADIENT_SPIRAL_CLOCKWISE,      /*< desc="Spiral (cw)"       >*/
      GIMP_GRADIENT_SPIRAL_ANTICLOCKWISE   /*< desc="Spiral (ccw)"      >*/
    } GimpGradientType;

### enum GimpGridStyle

    typedef enum {
      GIMP_GRID_DOTS,           /*< desc="Intersections (dots)"       >*/
      GIMP_GRID_INTERSECTIONS,  /*< desc="Intersections (crosshairs)" >*/
      GIMP_GRID_ON_OFF_DASH,    /*< desc="Dashed"                     >*/
      GIMP_GRID_DOUBLE_DASH,    /*< desc="Double dashed"              >*/
      GIMP_GRID_SOLID           /*< desc="Solid"                      >*/
    } GimpGridStyle;

### enum GimpIconType

    typedef enum {
      GIMP_ICON_TYPE_STOCK_ID,      /*< desc="Stock ID"      >*/
      GIMP_ICON_TYPE_INLINE_PIXBUF, /*< desc="Inline pixbuf" >*/
      GIMP_ICON_TYPE_IMAGE_FILE     /*< desc="Image file"    >*/
    } GimpIconType;

### enum GimpImageBaseType

    typedef enum {
      GIMP_RGB,     /*< desc="RGB color"     >*/
      GIMP_GRAY,    /*< desc="Grayscale"     >*/
      GIMP_INDEXED  /*< desc="Indexed color" >*/
    } GimpImageBaseType;

### enum GimpImageType

    typedef enum {
      GIMP_RGB_IMAGE,      /*< desc="RGB"             >*/
      GIMP_RGBA_IMAGE,     /*< desc="RGB-alpha"       >*/
      GIMP_GRAY_IMAGE,     /*< desc="Grayscale"       >*/
      GIMP_GRAYA_IMAGE,    /*< desc="Grayscale-alpha" >*/
      GIMP_INDEXED_IMAGE,  /*< desc="Indexed"         >*/
      GIMP_INDEXEDA_IMAGE  /*< desc="Indexed-alpha"   >*/
    } GimpImageType;

### enum GimpInterpolationType

    typedef enum {
      GIMP_INTERPOLATION_NONE,   /*< desc="None"            >*/
      GIMP_INTERPOLATION_LINEAR, /*< desc="Linear"          >*/
      GIMP_INTERPOLATION_CUBIC,  /*< desc="Cubic"           >*/
      GIMP_INTERPOLATION_LANCZOS /*< desc="Sinc (Lanczos3)" >*/
    } GimpInterpolationType;

### enum GimpMessageHandlerType

    typedef enum {
      GIMP_MESSAGE_BOX,
      GIMP_CONSOLE,
      GIMP_ERROR_CONSOLE
    } GimpMessageHandlerType;

### enum GimpPaintApplicationMode

    typedef enum {
      GIMP_PAINT_CONSTANT,    /*< desc="Constant"    >*/
      GIMP_PAINT_INCREMENTAL  /*< desc="Incremental" >*/
    } GimpPaintApplicationMode;

### enum GimpPDBArgType

    typedef enum {
      GIMP_PDB_INT32,
      GIMP_PDB_INT16,
      GIMP_PDB_INT8,
      GIMP_PDB_FLOAT,
      GIMP_PDB_STRING,
      GIMP_PDB_INT32ARRAY,
      GIMP_PDB_INT16ARRAY,
      GIMP_PDB_INT8ARRAY,
      GIMP_PDB_FLOATARRAY,
      GIMP_PDB_STRINGARRAY,
      GIMP_PDB_COLOR,
      GIMP_PDB_ITEM,
      GIMP_PDB_DISPLAY,
      GIMP_PDB_IMAGE,
      GIMP_PDB_LAYER,
      GIMP_PDB_CHANNEL,
      GIMP_PDB_DRAWABLE,
      GIMP_PDB_SELECTION,
      GIMP_PDB_COLORARRAY,
      GIMP_PDB_VECTORS,
      GIMP_PDB_PARASITE,
      GIMP_PDB_STATUS,
      GIMP_PDB_END,

      /*  the following aliases are deprecated  */
      GIMP_PDB_PATH     = GIMP_PDB_VECTORS,     /*< skip >*/
      GIMP_PDB_BOUNDARY = GIMP_PDB_COLORARRAY,  /*< skip >*/
      GIMP_PDB_REGION   = GIMP_PDB_ITEM         /*< skip >*/
    } GimpPDBArgType;

### enum GimpPDBErrorHandler

    typedef enum {
      GIMP_PDB_ERROR_HANDLER_INTERNAL,
      GIMP_PDB_ERROR_HANDLER_PLUGIN
    } GimpPDBErrorHandler;

### enum GimpPDBProcType

    typedef enum {
      GIMP_INTERNAL,   /*< desc="Internal GIMP procedure" >*/
      GIMP_PLUGIN,     /*< desc="GIMP Plug-In" >*/
      GIMP_EXTENSION,  /*< desc="GIMP Extension" >*/
      GIMP_TEMPORARY   /*< desc="Temporary Procedure" >*/
    } GimpPDBProcType;

### enum GimpPDBStatusType

    typedef enum {
      GIMP_PDB_EXECUTION_ERROR,
      GIMP_PDB_CALLING_ERROR,
      GIMP_PDB_PASS_THROUGH,
      GIMP_PDB_SUCCESS,
      GIMP_PDB_CANCEL
    } GimpPDBStatusType;

### enum GimpProgressCommand

    typedef enum {
      GIMP_PROGRESS_COMMAND_START,
      GIMP_PROGRESS_COMMAND_END,
      GIMP_PROGRESS_COMMAND_SET_TEXT,
      GIMP_PROGRESS_COMMAND_SET_VALUE,
      GIMP_PROGRESS_COMMAND_PULSE,
      GIMP_PROGRESS_COMMAND_GET_WINDOW
    } GimpProgressCommand;

### enum GimpRepeatMode

    typedef enum {
      GIMP_REPEAT_NONE,       /*< desc="None"            >*/
      GIMP_REPEAT_SAWTOOTH,   /*< desc="Sawtooth wave"   >*/
      GIMP_REPEAT_TRIANGULAR  /*< desc="Triangular wave" >*/
    } GimpRepeatMode;

### enum GimpRunMode

    typedef enum {
      GIMP_RUN_INTERACTIVE,     /*< desc="Run interactively"         >*/
      GIMP_RUN_NONINTERACTIVE,  /*< desc="Run non-interactively"     >*/
      GIMP_RUN_WITH_LAST_VALS   /*< desc="Run with last used values" >*/
    } GimpRunMode;

### enum GimpSizeType

    typedef enum {
      GIMP_PIXELS,  /*< desc="Pixels" >*/
      GIMP_POINTS   /*< desc="Points" >*/
    } GimpSizeType;

### enum GimpStackTraceMode

    typedef enum {
      GIMP_STACK_TRACE_NEVER,
      GIMP_STACK_TRACE_QUERY,
      GIMP_STACK_TRACE_ALWAYS
    } GimpStackTraceMode;

### enum GimpTextDirection

    typedef enum {
      GIMP_TEXT_DIRECTION_LTR,   /*< desc="From left to right" >*/
      GIMP_TEXT_DIRECTION_RTL    /*< desc="From right to left" >*/
    } GimpTextDirection;

### enum GimpTextHintStyle

    typedef enum {
      GIMP_TEXT_HINT_STYLE_NONE,     /*< desc="None"   >*/
      GIMP_TEXT_HINT_STYLE_SLIGHT,   /*< desc="Slight" >*/
      GIMP_TEXT_HINT_STYLE_MEDIUM,   /*< desc="Medium" >*/
      GIMP_TEXT_HINT_STYLE_FULL      /*< desc="Full"   >*/
    } GimpTextHintStyle;

### enum GimpTextJustification

    typedef enum {
      GIMP_TEXT_JUSTIFY_LEFT,    /*< desc="Left justified"  >*/
      GIMP_TEXT_JUSTIFY_RIGHT,   /*< desc="Right justified" >*/
      GIMP_TEXT_JUSTIFY_CENTER,  /*< desc="Centered"        >*/
      GIMP_TEXT_JUSTIFY_FILL     /*< desc="Filled"          >*/
    } GimpTextJustification;

### enum GimpTransferMode

    typedef enum {
      GIMP_SHADOWS,     /*< desc="Shadows"    >*/
      GIMP_MIDTONES,    /*< desc="Midtones"   >*/
      GIMP_HIGHLIGHTS   /*< desc="Highlights" >*/
    } GimpTransferMode;

### enum GimpTransformDirection

    typedef enum {
      GIMP_TRANSFORM_FORWARD,   /*< desc="Normal (Forward)" >*/
      GIMP_TRANSFORM_BACKWARD   /*< desc="Corrective (Backward)" >*/
    } GimpTransformDirection;

### enum GimpTransformResize

    typedef enum {
      GIMP_TRANSFORM_RESIZE_ADJUST           = 0, /*< desc="Adjust" >*/
      GIMP_TRANSFORM_RESIZE_CLIP             = 1, /*< desc="Clip" >*/
      GIMP_TRANSFORM_RESIZE_CROP,                 /*< desc="Crop to result" >*/
      GIMP_TRANSFORM_RESIZE_CROP_WITH_ASPECT      /*< desc="Crop with aspect" >*/
    } GimpTransformResize;

### enum GimpUserDirectory

    typedef enum {
      GIMP_USER_DIRECTORY_DESKTOP,
      GIMP_USER_DIRECTORY_DOCUMENTS,
      GIMP_USER_DIRECTORY_DOWNLOAD,
      GIMP_USER_DIRECTORY_MUSIC,
      GIMP_USER_DIRECTORY_PICTURES,
      GIMP_USER_DIRECTORY_PUBLIC_SHARE,
      GIMP_USER_DIRECTORY_TEMPLATES,
      GIMP_USER_DIRECTORY_VIDEOS
    } GimpUserDirectory;

### Warning

`GimpUserDirectory` is deprecated and should not be used in newly-written code.

### enum GimpVectorsStrokeType

    typedef enum {
      GIMP_VECTORS_STROKE_TYPE_BEZIER
    } GimpVectorsStrokeType;