/* PIKA - Photo and Image Kooker Application * a rebranding of The GNU Image Manipulation Program (created with heckimp) * A derived work which may be trivial. However, any changes may be (C)2023 by Aldercone Studio * * Original copyright, applying to most contents (license remains unchanged): * Copyright (C) 1995 Spencer Kimball and Peter Mattis * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef __TOOLS_ENUMS_H__ #define __TOOLS_ENUMS_H__ /* * these enums are registered with the type system */ /** * PikaBucketFillArea: * @PIKA_BUCKET_FILL_SELECTION: Fill whole selection * @PIKA_BUCKET_FILL_SIMILAR_COLORS: Fill similar colors * @PIKA_BUCKET_FILL_LINE_ART: Fill by line art detection * * Bucket fill area. */ #define PIKA_TYPE_BUCKET_FILL_AREA (pika_bucket_fill_area_get_type ()) GType pika_bucket_fill_area_get_type (void) G_GNUC_CONST; typedef enum { PIKA_BUCKET_FILL_SELECTION, /*< desc="Fill whole selection" >*/ PIKA_BUCKET_FILL_SIMILAR_COLORS, /*< desc="Fill similar colors" >*/ PIKA_BUCKET_FILL_LINE_ART /*< desc="Fill by line art detection" >*/ } PikaBucketFillArea; /** * PikaLineArtSource: * @PIKA_LINE_ART_SOURCE_SAMPLE_MERGED: All visible layers * @PIKA_LINE_ART_SOURCE_ACTIVE_LAYER: Active layer * @PIKA_LINE_ART_SOURCE_LOWER_LAYER: Layer below the active one * @PIKA_LINE_ART_SOURCE_UPPER_LAYER: Layer above the active one * * Bucket fill area. */ #define PIKA_TYPE_LINE_ART_SOURCE (pika_line_art_source_get_type ()) GType pika_line_art_source_get_type (void) G_GNUC_CONST; typedef enum { PIKA_LINE_ART_SOURCE_SAMPLE_MERGED, /*< desc="All visible layers" >*/ PIKA_LINE_ART_SOURCE_ACTIVE_LAYER, /*< desc="Selected layer" >*/ PIKA_LINE_ART_SOURCE_LOWER_LAYER, /*< desc="Layer below the selected one" >*/ PIKA_LINE_ART_SOURCE_UPPER_LAYER /*< desc="Layer above the selected one" >*/ } PikaLineArtSource; #define PIKA_TYPE_RECT_SELECT_MODE (pika_rect_select_mode_get_type ()) GType pika_rect_select_mode_get_type (void) G_GNUC_CONST; typedef enum { PIKA_RECT_SELECT_MODE_FREE, /*< desc="Free select" >*/ PIKA_RECT_SELECT_MODE_FIXED_SIZE, /*< desc="Fixed size" >*/ PIKA_RECT_SELECT_MODE_FIXED_RATIO /*< desc="Fixed aspect ratio" >*/ } PikaRectSelectMode; #define PIKA_TYPE_TRANSFORM_TYPE (pika_transform_type_get_type ()) GType pika_transform_type_get_type (void) G_GNUC_CONST; typedef enum { PIKA_TRANSFORM_TYPE_LAYER, /*< desc="Layer" >*/ PIKA_TRANSFORM_TYPE_SELECTION, /*< desc="Selection" >*/ PIKA_TRANSFORM_TYPE_PATH, /*< desc="Path" >*/ PIKA_TRANSFORM_TYPE_IMAGE /*< desc="Image" >*/ } PikaTransformType; #define PIKA_TYPE_TOOL_ACTION (pika_tool_action_get_type ()) GType pika_tool_action_get_type (void) G_GNUC_CONST; typedef enum { PIKA_TOOL_ACTION_PAUSE, PIKA_TOOL_ACTION_RESUME, PIKA_TOOL_ACTION_HALT, PIKA_TOOL_ACTION_COMMIT } PikaToolAction; #define PIKA_TYPE_TOOL_ACTIVE_MODIFIERS (pika_tool_active_modifiers_get_type ()) GType pika_tool_active_modifiers_get_type (void) G_GNUC_CONST; typedef enum { PIKA_TOOL_ACTIVE_MODIFIERS_OFF, PIKA_TOOL_ACTIVE_MODIFIERS_SAME, PIKA_TOOL_ACTIVE_MODIFIERS_SEPARATE, } PikaToolActiveModifiers; #define PIKA_TYPE_MATTING_DRAW_MODE (pika_matting_draw_mode_get_type ()) GType pika_matting_draw_mode_get_type (void) G_GNUC_CONST; typedef enum { PIKA_MATTING_DRAW_MODE_FOREGROUND, /*< desc="Draw foreground" >*/ PIKA_MATTING_DRAW_MODE_BACKGROUND, /*< desc="Draw background" >*/ PIKA_MATTING_DRAW_MODE_UNKNOWN, /*< desc="Draw unknown" >*/ } PikaMattingDrawMode; #define PIKA_TYPE_MATTING_PREVIEW_MODE (pika_matting_preview_mode_get_type ()) GType pika_matting_preview_mode_get_type (void) G_GNUC_CONST; typedef enum { PIKA_MATTING_PREVIEW_MODE_ON_COLOR, /*< desc="Color" >*/ PIKA_MATTING_PREVIEW_MODE_GRAYSCALE, /*< desc="Grayscale" >*/ } PikaMattingPreviewMode; #define PIKA_TYPE_TRANSFORM_3D_LENS_MODE (pika_transform_3d_lens_mode_get_type ()) GType pika_transform_3d_lens_mode_get_type (void) G_GNUC_CONST; typedef enum /*< lowercase_name=pika_transform_3d_lens_mode >*/ { PIKA_TRANSFORM_3D_LENS_MODE_FOCAL_LENGTH, /*< desc="Focal length" >*/ PIKA_TRANSFORM_3D_LENS_MODE_FOV_IMAGE, /*< desc="Field of view (relative to image)", abbrev="FOV (image)" >*/ PIKA_TRANSFORM_3D_LENS_MODE_FOV_ITEM, /*< desc="Field of view (relative to item)", abbrev="FOV (item)" >*/ } Pika3DTransformLensMode; #define PIKA_TYPE_WARP_BEHAVIOR (pika_warp_behavior_get_type ()) GType pika_warp_behavior_get_type (void) G_GNUC_CONST; typedef enum { PIKA_WARP_BEHAVIOR_MOVE, /*< desc="Move pixels" >*/ PIKA_WARP_BEHAVIOR_GROW, /*< desc="Grow area" >*/ PIKA_WARP_BEHAVIOR_SHRINK, /*< desc="Shrink area" >*/ PIKA_WARP_BEHAVIOR_SWIRL_CW, /*< desc="Swirl clockwise" >*/ PIKA_WARP_BEHAVIOR_SWIRL_CCW, /*< desc="Swirl counter-clockwise" >*/ PIKA_WARP_BEHAVIOR_ERASE, /*< desc="Erase warping" >*/ PIKA_WARP_BEHAVIOR_SMOOTH /*< desc="Smooth warping" >*/ } PikaWarpBehavior; #define PIKA_TYPE_PAINT_SELECT_MODE (pika_paint_select_mode_get_type ()) GType pika_paint_select_mode_get_type (void) G_GNUC_CONST; typedef enum { PIKA_PAINT_SELECT_MODE_ADD, /*< desc="Add to selection" >*/ PIKA_PAINT_SELECT_MODE_SUBTRACT, /*< desc="Subtract from selection" >*/ } PikaPaintSelectMode; /* * non-registered enums; register them if needed */ typedef enum /*< skip >*/ { SELECTION_SELECT, SELECTION_MOVE_MASK, SELECTION_MOVE, SELECTION_MOVE_COPY, SELECTION_ANCHOR } SelectFunction; /* Modes of PikaEditSelectionTool */ typedef enum /*< skip >*/ { PIKA_TRANSLATE_MODE_VECTORS, PIKA_TRANSLATE_MODE_CHANNEL, PIKA_TRANSLATE_MODE_LAYER_MASK, PIKA_TRANSLATE_MODE_MASK, PIKA_TRANSLATE_MODE_MASK_TO_LAYER, PIKA_TRANSLATE_MODE_MASK_COPY_TO_LAYER, PIKA_TRANSLATE_MODE_LAYER, PIKA_TRANSLATE_MODE_FLOATING_SEL } PikaTranslateMode; /* Motion event report modes */ typedef enum /*< skip >*/ { PIKA_MOTION_MODE_EXACT, PIKA_MOTION_MODE_COMPRESS } PikaMotionMode; #endif /* __TOOLS_ENUMS_H__ */