static void gimp_tiling_class_init (GimpTilingClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpSymmetryClass *symmetry_class = GIMP_SYMMETRY_CLASS (klass); object_class->constructed = gimp_tiling_constructed; object_class->finalize = gimp_tiling_finalize; object_class->set_property = gimp_tiling_set_property; object_class->get_property = gimp_tiling_get_property; symmetry_class->label = _("Tiling"); symmetry_class->update_strokes = gimp_tiling_update_strokes; symmetry_class->get_operation = gimp_tiling_get_operation; GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_X_INTERVAL, "x-interval", _("Interval X"), _("Interval on the X axis (pixels)"), 0.0, 10000.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_Y_INTERVAL, "y-interval", _("Interval Y"), _("Interval on the Y axis (pixels)"), 0.0, 10000.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_SHIFT, "shift", _("Shift"), _("X-shift between lines (pixels)"), 0.0, 10000.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); GIMP_CONFIG_PROP_INT (object_class, PROP_X_MAX, "x-max", _("Max strokes X"), _("Maximum number of strokes on the X axis"), 0, 100, 0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); GIMP_CONFIG_PROP_INT (object_class, PROP_Y_MAX, "y-max", _("Max strokes Y"), _("Maximum number of strokes on the Y axis"), 0, 100, 0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); }
static void gimp_operation_posterize_class_init (GimpOperationPosterizeClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GeglOperationClass *operation_class = GEGL_OPERATION_CLASS (klass); GeglOperationPointFilterClass *point_class = GEGL_OPERATION_POINT_FILTER_CLASS (klass); object_class->set_property = gimp_operation_posterize_set_property; object_class->get_property = gimp_operation_posterize_get_property; point_class->process = gimp_operation_posterize_process; gegl_operation_class_set_keys (operation_class, "name", "gimp:posterize", "categories", "color", "description", _("Reduce to a limited set of colors"), NULL); GIMP_CONFIG_PROP_INT (object_class, PROP_LEVELS, "levels", _("Posterize levels"), NULL, 2, 256, 3, GIMP_PARAM_STATIC_STRINGS); }
static void gimp_mandala_class_init (GimpMandalaClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpSymmetryClass *symmetry_class = GIMP_SYMMETRY_CLASS (klass); GParamSpec *pspec; object_class->constructed = gimp_mandala_constructed; object_class->finalize = gimp_mandala_finalize; object_class->set_property = gimp_mandala_set_property; object_class->get_property = gimp_mandala_get_property; symmetry_class->label = _("Mandala"); symmetry_class->update_strokes = gimp_mandala_update_strokes; symmetry_class->get_operation = gimp_mandala_get_operation; symmetry_class->active_changed = gimp_mandala_active_changed; GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_CENTER_X, "center-x", _("Center abscissa"), NULL, 0.0, G_MAXDOUBLE, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); pspec = g_object_class_find_property (object_class, "center-x"); gegl_param_spec_set_property_key (pspec, "unit", "pixel-coordinate"); gegl_param_spec_set_property_key (pspec, "axis", "x"); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_CENTER_Y, "center-y", _("Center ordinate"), NULL, 0.0, G_MAXDOUBLE, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); pspec = g_object_class_find_property (object_class, "center-y"); gegl_param_spec_set_property_key (pspec, "unit", "pixel-coordinate"); gegl_param_spec_set_property_key (pspec, "axis", "y"); GIMP_CONFIG_PROP_INT (object_class, PROP_SIZE, "size", _("Number of points"), NULL, 1, 100, 6.0, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_DISABLE_TRANSFORMATION, "disable-transformation", _("Disable brush transform"), _("Disable brush rotation"), FALSE, GIMP_PARAM_STATIC_STRINGS | GIMP_SYMMETRY_PARAM_GUI); }
static void gimp_paint_options_class_init (GimpPaintOptionsClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); object_class->dispose = gimp_paint_options_dispose; object_class->finalize = gimp_paint_options_finalize; object_class->set_property = gimp_paint_options_set_property; object_class->get_property = gimp_paint_options_get_property; g_object_class_install_property (object_class, PROP_PAINT_INFO, g_param_spec_object ("paint-info", NULL, NULL, GIMP_TYPE_PAINT_INFO, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (object_class, PROP_USE_APPLICATOR, g_param_spec_boolean ("use-applicator", "Use GimpApplicator", NULL, FALSE, G_PARAM_READWRITE | G_PARAM_CONSTRUCT)); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_SIZE, "brush-size", _("Size"), _("Brush Size"), 1.0, GIMP_BRUSH_MAX_SIZE, DEFAULT_BRUSH_SIZE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_ZOOM, "brush-zoom", _("Brush Zoom"), _("Link brush size with canvas zoom"), DEFAULT_BRUSH_ZOOM, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_ASPECT_RATIO, "brush-aspect-ratio", _("Aspect Ratio"), _("Brush Aspect Ratio"), -20.0, 20.0, DEFAULT_BRUSH_ASPECT_RATIO, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_ANGLE, "brush-angle", _("Angle"), _("Brush Angle"), -180.0, 180.0, DEFAULT_BRUSH_ANGLE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_SPACING, "brush-spacing", _("Spacing"), _("Brush Spacing"), 0.01, 50.0, DEFAULT_BRUSH_SPACING, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_HARDNESS, "brush-hardness", _("Hardness"), _("Brush Hardness"), 0.0, 1.0, DEFAULT_BRUSH_HARDNESS, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_BRUSH_FORCE, "brush-force", _("Force"), _("Brush Force"), 0.0, 1.0, DEFAULT_BRUSH_FORCE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_LINK_SIZE, "brush-link-size", _("Link Size"), _("Link brush size to brush native"), DEFAULT_BRUSH_LINK_SIZE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_LINK_ASPECT_RATIO, "brush-link-aspect-ratio", _("Link Aspect Ratio"), _("Link brush aspect ratio to brush native"), DEFAULT_BRUSH_LINK_ASPECT_RATIO, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_LINK_ANGLE, "brush-link-angle", _("Link Angle"), _("Link brush angle to brush native"), DEFAULT_BRUSH_LINK_ANGLE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_LINK_SPACING, "brush-link-spacing", _("Link Spacing"), _("Link brush spacing to brush native"), DEFAULT_BRUSH_LINK_SPACING, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_BRUSH_LINK_HARDNESS, "brush-link-hardness", _("Link Hardness"), _("Link brush hardness to brush native"), DEFAULT_BRUSH_LINK_HARDNESS, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_APPLICATION_MODE, "application-mode", _("Incremental"), _("Every stamp has its own opacity"), GIMP_TYPE_PAINT_APPLICATION_MODE, DEFAULT_APPLICATION_MODE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_HARD, "hard", _("Hard edge"), _("Ignore fuzziness of the current brush"), DEFAULT_HARD, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_USE_JITTER, "use-jitter", _("Apply Jitter"), _("Scatter brush as you paint"), DEFAULT_USE_JITTER, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_JITTER_AMOUNT, "jitter-amount", _("Amount"), _("Distance of scattering"), 0.0, 50.0, DEFAULT_JITTER_AMOUNT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_DYNAMICS_EXPANDED, "dynamics-expanded", _("Dynamics Options"), NULL, DEFAULT_DYNAMICS_EXPANDED, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_FADE_LENGTH, "fade-length", _("Fade length"), _("Distance over which strokes fade out"), 0.0, 32767.0, DEFAULT_FADE_LENGTH, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_UNIT (object_class, PROP_FADE_UNIT, "fade-unit", NULL, NULL, TRUE, TRUE, DEFAULT_FADE_UNIT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_FADE_REVERSE, "fade-reverse", _("Reverse"), _("Reverse direction of fading"), DEFAULT_FADE_REVERSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_FADE_REPEAT, "fade-repeat", _("Repeat"), _("How fade is repeated as you paint"), GIMP_TYPE_REPEAT_MODE, DEFAULT_FADE_REPEAT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GRADIENT_REVERSE, "gradient-reverse", NULL, NULL, DEFAULT_GRADIENT_REVERSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_BRUSH_VIEW_TYPE, "brush-view-type", NULL, NULL, GIMP_TYPE_VIEW_TYPE, GIMP_VIEW_TYPE_GRID, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_BRUSH_VIEW_SIZE, "brush-view-size", NULL, NULL, GIMP_VIEW_SIZE_TINY, GIMP_VIEWABLE_MAX_BUTTON_SIZE, GIMP_VIEW_SIZE_SMALL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_DYNAMICS_VIEW_TYPE, "dynamics-view-type", NULL, NULL, GIMP_TYPE_VIEW_TYPE, GIMP_VIEW_TYPE_LIST, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_DYNAMICS_VIEW_SIZE, "dynamics-view-size", NULL, NULL, GIMP_VIEW_SIZE_TINY, GIMP_VIEWABLE_MAX_BUTTON_SIZE, GIMP_VIEW_SIZE_SMALL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_PATTERN_VIEW_TYPE, "pattern-view-type", NULL, NULL, GIMP_TYPE_VIEW_TYPE, GIMP_VIEW_TYPE_GRID, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_PATTERN_VIEW_SIZE, "pattern-view-size", NULL, NULL, GIMP_VIEW_SIZE_TINY, GIMP_VIEWABLE_MAX_BUTTON_SIZE, GIMP_VIEW_SIZE_SMALL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_GRADIENT_VIEW_TYPE, "gradient-view-type", NULL, NULL, GIMP_TYPE_VIEW_TYPE, GIMP_VIEW_TYPE_LIST, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_GRADIENT_VIEW_SIZE, "gradient-view-size", NULL, NULL, GIMP_VIEW_SIZE_TINY, GIMP_VIEWABLE_MAX_BUTTON_SIZE, GIMP_VIEW_SIZE_LARGE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_USE_SMOOTHING, "use-smoothing", _("Smooth stroke"), _("Paint smoother strokes"), FALSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_SMOOTHING_QUALITY, "smoothing-quality", _("Quality"), _("Depth of smoothing"), 1, 100, DEFAULT_SMOOTHING_QUALITY, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_SMOOTHING_FACTOR, "smoothing-factor", _("Weight"), _("Gravity of the pen"), /* Max velocity is set to 3; allowing for * smoothing factor to be less than velcoty * results in numeric instablility */ 3.0, 1000.0, DEFAULT_SMOOTHING_FACTOR, GIMP_PARAM_STATIC_STRINGS); }
static void gimp_symmetry_class_init (GimpSymmetryClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); /* This signal should likely be emitted at the end of * update_strokes() if stroke coordinates were changed. */ gimp_symmetry_signals[STROKES_UPDATED] = g_signal_new ("strokes-updated", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, 0, NULL, NULL, NULL, G_TYPE_NONE, 1, GIMP_TYPE_IMAGE); /* This signal should be emitted when you request a change in the * settings UI. For instance adding some settings (therefore having * a dynamic UI), or changing scale min/max extremes, etc. */ gimp_symmetry_signals[GUI_PARAM_CHANGED] = g_signal_new ("gui-param-changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, 0, NULL, NULL, NULL, G_TYPE_NONE, 1, GIMP_TYPE_IMAGE); gimp_symmetry_signals[ACTIVE_CHANGED] = g_signal_new ("active-changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpSymmetryClass, active_changed), NULL, NULL, NULL, G_TYPE_NONE, 0); object_class->finalize = gimp_symmetry_finalize; object_class->set_property = gimp_symmetry_set_property; object_class->get_property = gimp_symmetry_get_property; klass->label = _("None"); klass->update_strokes = gimp_symmetry_real_update_strokes; klass->get_operation = gimp_symmetry_real_get_op; klass->active_changed = NULL; klass->update_version = gimp_symmetry_real_update_version; g_object_class_install_property (object_class, PROP_IMAGE, g_param_spec_object ("image", NULL, NULL, GIMP_TYPE_IMAGE, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_ACTIVE, "active", _("Active"), _("Activate symmetry painting"), FALSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_VERSION, "version", "Symmetry version", "Version of the symmetry object", -1, G_MAXINT, 0, GIMP_PARAM_STATIC_STRINGS); }
static void gimp_text_options_class_init (GimpTextOptionsClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); object_class->finalize = gimp_text_options_finalize; object_class->set_property = gimp_text_options_set_property; object_class->get_property = gimp_text_options_get_property; GIMP_CONFIG_PROP_UNIT (object_class, PROP_UNIT, "font-size-unit", _("Unit"), _("Font size unit"), TRUE, FALSE, GIMP_UNIT_PIXEL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_FONT_SIZE, "font-size", _("Font size"), _("Font size"), 0.0, 8192.0, 62.0, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_ANTIALIAS, "antialias", _("Antialiasing"), NULL, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_HINT_STYLE, "hint-style", _("Hinting"), _("Hinting alters the font outline to " "produce a crisp bitmap at small " "sizes"), GIMP_TYPE_TEXT_HINT_STYLE, GIMP_TEXT_HINT_STYLE_MEDIUM, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_LANGUAGE, "language", _("Language"), _("The text language may have an effect " "on the way the text is rendered."), (const gchar *) gtk_get_default_language (), GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_BASE_DIR, "base-direction", NULL, NULL, GIMP_TYPE_TEXT_DIRECTION, GIMP_TEXT_DIRECTION_LTR, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_JUSTIFICATION, "justify", _("Justify"), _("Text alignment"), GIMP_TYPE_TEXT_JUSTIFICATION, GIMP_TEXT_JUSTIFY_LEFT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_INDENTATION, "indent", _("Indentation"), _("Indentation of the first line"), -8192.0, 8192.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_DEFAULTS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_LINE_SPACING, "line-spacing", _("Line spacing"), _("Adjust line spacing"), -8192.0, 8192.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_DEFAULTS); GIMP_CONFIG_PROP_DOUBLE (object_class, PROP_LETTER_SPACING, "letter-spacing", _("Letter spacing"), _("Adjust letter spacing"), -8192.0, 8192.0, 0.0, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_DEFAULTS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_BOX_MODE, "box-mode", _("Box"), _("Whether text flows into rectangular shape or " "moves into a new line when you press Enter"), GIMP_TYPE_TEXT_BOX_MODE, GIMP_TEXT_BOX_DYNAMIC, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_USE_EDITOR, "use-editor", _("Use editor"), _("Use an external editor window for text entry"), FALSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_FONT_VIEW_TYPE, "font-view-type", NULL, NULL, GIMP_TYPE_VIEW_TYPE, GIMP_VIEW_TYPE_LIST, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_FONT_VIEW_SIZE, "font-view-size", NULL, NULL, GIMP_VIEW_SIZE_TINY, GIMP_VIEWABLE_MAX_BUTTON_SIZE, GIMP_VIEW_SIZE_SMALL, GIMP_PARAM_STATIC_STRINGS); }
static void gimp_core_config_class_init (GimpCoreConfigClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); gchar *path; gchar *mypaint_brushes; GimpRGB red = { 1.0, 0, 0, 0.5 }; guint64 undo_size; object_class->finalize = gimp_core_config_finalize; object_class->set_property = gimp_core_config_set_property; object_class->get_property = gimp_core_config_get_property; GIMP_CONFIG_PROP_STRING (object_class, PROP_LANGUAGE, "language", "Language", LANGUAGE_BLURB, NULL, /* take from environment */ GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_ENUM (object_class, PROP_INTERPOLATION_TYPE, "interpolation-type", "Interpolation", INTERPOLATION_TYPE_BLURB, GIMP_TYPE_INTERPOLATION_TYPE, GIMP_INTERPOLATION_CUBIC, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_DEFAULT_THRESHOLD, "default-threshold", "Default threshold", DEFAULT_THRESHOLD_BLURB, 0, 255, 15, GIMP_PARAM_STATIC_STRINGS); path = gimp_config_build_plug_in_path ("plug-ins"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PLUG_IN_PATH, "plug-in-path", "Plug-in path", PLUG_IN_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("modules"); GIMP_CONFIG_PROP_PATH (object_class, PROP_MODULE_PATH, "module-path", "Module path", MODULE_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("interpreters"); GIMP_CONFIG_PROP_PATH (object_class, PROP_INTERPRETER_PATH, "interpreter-path", "Interpreter path", INTERPRETER_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("environ"); GIMP_CONFIG_PROP_PATH (object_class, PROP_ENVIRON_PATH, "environ-path", "Environment path", ENVIRON_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("brushes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_BRUSH_PATH, "brush-path", "Brush path", BRUSH_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("brushes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_BRUSH_PATH_WRITABLE, "brush-path-writable", "Writable brush path", BRUSH_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("dynamics"); GIMP_CONFIG_PROP_PATH (object_class, PROP_DYNAMICS_PATH, "dynamics-path", "Dynamics path", DYNAMICS_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("dynamics"); GIMP_CONFIG_PROP_PATH (object_class, PROP_DYNAMICS_PATH_WRITABLE, "dynamics-path-writable", "Writable dynamics path", DYNAMICS_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); #ifdef ENABLE_RELOCATABLE_RESOURCES mypaint_brushes = g_build_filename ("${gimp_installation_dir}", "share", "mypaint-data", "1.0", "brushes", NULL); #else mypaint_brushes = g_strdup (MYPAINT_BRUSHES_DIR); #endif path = g_build_path (G_SEARCHPATH_SEPARATOR_S, mypaint_brushes, "~/.mypaint/brushes", NULL); g_free (mypaint_brushes); GIMP_CONFIG_PROP_PATH (object_class, PROP_MYPAINT_BRUSH_PATH, "mypaint-brush-path", "MyPaint brush path", MYPAINT_BRUSH_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = g_build_path (G_SEARCHPATH_SEPARATOR_S, "~/.mypaint/brushes", NULL); GIMP_CONFIG_PROP_PATH (object_class, PROP_MYPAINT_BRUSH_PATH_WRITABLE, "mypaint-brush-path-writable", "Writable MyPaint brush path", MYPAINT_BRUSH_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("patterns"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PATTERN_PATH, "pattern-path", "Pattern path", PATTERN_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("patterns"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PATTERN_PATH_WRITABLE, "pattern-path-writable", "Writable pattern path", PATTERN_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("palettes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PALETTE_PATH, "palette-path", "Palette path", PALETTE_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("palettes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PALETTE_PATH_WRITABLE, "palette-path-writable", "Writable palette path", PALETTE_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("gradients"); GIMP_CONFIG_PROP_PATH (object_class, PROP_GRADIENT_PATH, "gradient-path", "Gradient path", GRADIENT_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("gradients"); GIMP_CONFIG_PROP_PATH (object_class, PROP_GRADIENT_PATH_WRITABLE, "gradient-path-writable", "Writable gradient path", GRADIENT_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("tool-presets"); GIMP_CONFIG_PROP_PATH (object_class, PROP_TOOL_PRESET_PATH, "tool-preset-path", "Tool preset path", TOOL_PRESET_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_writable_path ("tool-presets"); GIMP_CONFIG_PROP_PATH (object_class, PROP_TOOL_PRESET_PATH_WRITABLE, "tool-preset-path-writable", "Writable tool preset path", TOOL_PRESET_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); path = gimp_config_build_data_path ("fonts"); GIMP_CONFIG_PROP_PATH (object_class, PROP_FONT_PATH, "font-path", "Font path", FONT_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); GIMP_CONFIG_PROP_PATH (object_class, PROP_FONT_PATH_WRITABLE, "font-path-writable", "Writable font path", NULL, GIMP_CONFIG_PATH_DIR_LIST, NULL, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_BRUSH, "default-brush", "Default brush", DEFAULT_BRUSH_BLURB, DEFAULT_BRUSH, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_DYNAMICS, "default-dynamics", "Default dynamics", DEFAULT_DYNAMICS_BLURB, DEFAULT_DYNAMICS, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_MYPAINT_BRUSH, "default-mypaint-brush", "Default MyPaint brush", DEFAULT_MYPAINT_BRUSH_BLURB, DEFAULT_MYPAINT_BRUSH, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_PATTERN, "default-pattern", "Default pattern", DEFAULT_PATTERN_BLURB, DEFAULT_PATTERN, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_PALETTE, "default-palette", "Default palette", DEFAULT_PALETTE_BLURB, DEFAULT_PALETTE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_GRADIENT, "default-gradient", "Default gradient", DEFAULT_GRADIENT_BLURB, DEFAULT_GRADIENT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_TOOL_PRESET, "default-tool-preset", "Default tool preset", DEFAULT_TOOL_PRESET_BLURB, DEFAULT_TOOL_PRESET, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_FONT, "default-font", "Default font", DEFAULT_FONT_BLURB, DEFAULT_FONT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_BRUSH, "global-brush", "Global brush", GLOBAL_BRUSH_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_DYNAMICS, "global-dynamics", "Global dynamics", GLOBAL_DYNAMICS_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_PATTERN, "global-pattern", "Global pattern", GLOBAL_PATTERN_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_PALETTE, "global-palette", "Global palette", GLOBAL_PALETTE_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_GRADIENT, "global-gradient", "Global gradient", GLOBAL_GRADIENT_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_FONT, "global-font", "Global font", GLOBAL_FONT_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_DEFAULT_IMAGE, "default-image", "Default image", DEFAULT_IMAGE_BLURB, GIMP_TYPE_TEMPLATE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_DEFAULT_GRID, "default-grid", "Default grid", DEFAULT_GRID_BLURB, GIMP_TYPE_GRID, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_INT (object_class, PROP_UNDO_LEVELS, "undo-levels", "Undo levels", UNDO_LEVELS_BLURB, 0, 1 << 20, 5, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); undo_size = gimp_get_physical_memory_size (); if (undo_size > 0) undo_size = undo_size / 8; /* 1/8th of the memory */ else undo_size = 1 << 26; /* 64GB */ GIMP_CONFIG_PROP_MEMSIZE (object_class, PROP_UNDO_SIZE, "undo-size", "Undo size", UNDO_SIZE_BLURB, 0, GIMP_MAX_MEMSIZE, undo_size, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); GIMP_CONFIG_PROP_ENUM (object_class, PROP_UNDO_PREVIEW_SIZE, "undo-preview-size", "Undo preview size", UNDO_PREVIEW_SIZE_BLURB, GIMP_TYPE_VIEW_SIZE, GIMP_VIEW_SIZE_LARGE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_INT (object_class, PROP_FILTER_HISTORY_SIZE, "plug-in-history-size", /* compat name */ "Filter history size", FILTER_HISTORY_SIZE_BLURB, 0, 256, 10, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_PATH (object_class, PROP_PLUGINRC_PATH, "pluginrc-path", "plugninrc path", PLUGINRC_PATH_BLURB, GIMP_CONFIG_PATH_FILE, "${gimp_dir}" G_DIR_SEPARATOR_S "pluginrc", GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_LAYER_PREVIEWS, "layer-previews", "Layer previews", LAYER_PREVIEWS_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GROUP_LAYER_PREVIEWS, "group-layer-previews", "Layer group previews", GROUP_LAYER_PREVIEWS_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_LAYER_PREVIEW_SIZE, "layer-preview-size", "Layer preview size", LAYER_PREVIEW_SIZE_BLURB, GIMP_TYPE_VIEW_SIZE, GIMP_VIEW_SIZE_MEDIUM, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_THUMBNAIL_SIZE, "thumbnail-size", "Thumbnail size", THUMBNAIL_SIZE_BLURB, GIMP_TYPE_THUMBNAIL_SIZE, GIMP_THUMBNAIL_SIZE_NORMAL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_MEMSIZE (object_class, PROP_THUMBNAIL_FILESIZE_LIMIT, "thumbnail-filesize-limit", "Thumbnail file size limit", THUMBNAIL_FILESIZE_LIMIT_BLURB, 0, GIMP_MAX_MEMSIZE, 1 << 22, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_COLOR_MANAGEMENT, "color-management", "Color management", COLOR_MANAGEMENT_BLURB, GIMP_TYPE_COLOR_CONFIG, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_SAVE_DOCUMENT_HISTORY, "save-document-history", "Save document history", SAVE_DOCUMENT_HISTORY_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_RGB (object_class, PROP_QUICK_MASK_COLOR, "quick-mask-color", "Quick mask color", QUICK_MASK_COLOR_BLURB, TRUE, &red, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_IMPORT_PROMOTE_FLOAT, "import-promote-float", "Import promote float", IMPORT_PROMOTE_FLOAT_BLURB, FALSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_IMPORT_PROMOTE_DITHER, "import-promote-dither", "Import promote dither", IMPORT_PROMOTE_DITHER_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_IMPORT_ADD_ALPHA, "import-add-alpha", "Import add alpha", IMPORT_ADD_ALPHA_BLURB, FALSE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_PATH (object_class, PROP_IMPORT_RAW_PLUG_IN, "import-raw-plug-in", "Import raw plug-in", IMPORT_RAW_PLUG_IN_BLURB, GIMP_CONFIG_PATH_FILE, "", GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_ENUM (object_class, PROP_EXPORT_FILE_TYPE, "export-file-type", "Default export file type", EXPORT_FILE_TYPE_BLURB, GIMP_TYPE_EXPORT_FILE_TYPE, GIMP_EXPORT_FILE_PNG, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_EXPORT_COLOR_PROFILE, "export-color-profile", "Export Color Profile", EXPORT_COLOR_PROFILE_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_EXPORT_METADATA_EXIF, "export-metadata-exif", "Export Exif metadata", EXPORT_METADATA_EXIF_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_EXPORT_METADATA_XMP, "export-metadata-xmp", "Export XMP metadata", EXPORT_METADATA_XMP_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_EXPORT_METADATA_IPTC, "export-metadata-iptc", "Export IPTC metadata", EXPORT_METADATA_IPTC_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_DEBUG_POLICY, "debug-policy", "Try generating backtrace upon errors", GENERATE_BACKTRACE_BLURB, GIMP_TYPE_DEBUG_POLICY, #ifdef GIMP_UNSTABLE GIMP_DEBUG_POLICY_WARNING, #else GIMP_DEBUG_POLICY_FATAL, #endif GIMP_PARAM_STATIC_STRINGS); /* only for backward compatibility: */ GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_INSTALL_COLORMAP, "install-colormap", NULL, NULL, FALSE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); GIMP_CONFIG_PROP_INT (object_class, PROP_MIN_COLORS, "min-colors", NULL, NULL, 27, 256, 144, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); }
static void gimp_core_config_class_init (GimpCoreConfigClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); gchar *path; #if 0 gchar *dir1; gchar *dir2; #endif GimpRGB red = { 1.0, 0, 0, 0.5 }; guint64 undo_size; object_class->finalize = gimp_core_config_finalize; object_class->set_property = gimp_core_config_set_property; object_class->get_property = gimp_core_config_get_property; GIMP_CONFIG_PROP_STRING (object_class, PROP_LANGUAGE, "language", "Language", LANGUAGE_BLURB, NULL, /* take from environment */ GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_ENUM (object_class, PROP_INTERPOLATION_TYPE, "interpolation-type", "Interpolation", INTERPOLATION_TYPE_BLURB, GIMP_TYPE_INTERPOLATION_TYPE, GIMP_INTERPOLATION_CUBIC, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_INT (object_class, PROP_DEFAULT_THRESHOLD, "default-threshold", "Default threshold", DEFAULT_THRESHOLD_BLURB, 0, 255, 15, GIMP_PARAM_STATIC_STRINGS); path = gimp_config_build_plug_in_path ("plug-ins"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PLUG_IN_PATH, "plug-in-path", "Plug-In path", PLUG_IN_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("modules"); GIMP_CONFIG_PROP_PATH (object_class, PROP_MODULE_PATH, "module-path", "Module path", MODULE_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("interpreters"); GIMP_CONFIG_PROP_PATH (object_class, PROP_INTERPRETER_PATH, "interpreter-path", "Interpreter path", INTERPRETER_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_plug_in_path ("environ"); GIMP_CONFIG_PROP_PATH (object_class, PROP_ENVIRON_PATH, "environ-path", "Environment path", ENVIRON_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("brushes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_BRUSH_PATH, "brush-path", "Brush path", BRUSH_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("brushes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_BRUSH_PATH_WRITABLE, "brush-path-writable", "Writable brush path", BRUSH_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("dynamics"); GIMP_CONFIG_PROP_PATH (object_class, PROP_DYNAMICS_PATH, "dynamics-path", "Dynamics path", DYNAMICS_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("dynamics"); GIMP_CONFIG_PROP_PATH (object_class, PROP_DYNAMICS_PATH_WRITABLE, "dynamics-path-writable", "Writable dynamics path", DYNAMICS_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); #if 0 /* FIXME these are useful dirs, disabled until we figure how to * properly generate a default gimprc */ dir1 = g_build_filename (DATADIR, "mypaint", "brushes", NULL); dir2 = g_build_filename (g_get_user_data_dir (), "mypaint", "brushes", NULL); #endif path = g_build_path (G_SEARCHPATH_SEPARATOR_S, "/usr/share/mypaint/brushes", "/usr/local/share/mypaint/brushes", #if 0 dir1, dir2, #endif "~/.mypaint/brushes", NULL); GIMP_CONFIG_PROP_PATH (object_class, PROP_MYPAINT_BRUSH_PATH, "mypaint-brush-path", "MyPaint brush path", MYPAINT_BRUSH_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); #if 0 g_free (dir1); #endif path = g_build_path (G_SEARCHPATH_SEPARATOR_S, #if 0 /* FIXME see above */ dir2, #endif "~/.mypaint/brushes", NULL); GIMP_CONFIG_PROP_PATH (object_class, PROP_MYPAINT_BRUSH_PATH_WRITABLE, "mypaint-brush-path-writable", "Writable MyPaint brush path", MYPAINT_BRUSH_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); #if 0 g_free (dir2); #endif path = gimp_config_build_data_path ("patterns"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PATTERN_PATH, "pattern-path", "Pattern path", PATTERN_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("patterns"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PATTERN_PATH_WRITABLE, "pattern-path-writable", "Writable pattern path", PATTERN_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("palettes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PALETTE_PATH, "palette-path", "Palette path", PALETTE_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("palettes"); GIMP_CONFIG_PROP_PATH (object_class, PROP_PALETTE_PATH_WRITABLE, "palette-path-writable", "Writable palette path", PALETTE_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("gradients"); GIMP_CONFIG_PROP_PATH (object_class, PROP_GRADIENT_PATH, "gradient-path", "Gradient path", GRADIENT_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("gradients"); GIMP_CONFIG_PROP_PATH (object_class, PROP_GRADIENT_PATH_WRITABLE, "gradient-path-writable", "Writable gradient path", GRADIENT_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("tool-presets"); GIMP_CONFIG_PROP_PATH (object_class, PROP_TOOL_PRESET_PATH, "tool-preset-path", "Tool preset path", TOOL_PRESET_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_writable_path ("tool-presets"); GIMP_CONFIG_PROP_PATH (object_class, PROP_TOOL_PRESET_PATH_WRITABLE, "tool-preset-path-writable", "Writable tool preset path", TOOL_PRESET_PATH_WRITABLE_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); g_free (path); path = gimp_config_build_data_path ("fonts"); GIMP_CONFIG_PROP_PATH (object_class, PROP_FONT_PATH, "font-path", "Font path", FONT_PATH_BLURB, GIMP_CONFIG_PATH_DIR_LIST, path, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); g_free (path); GIMP_CONFIG_PROP_PATH (object_class, PROP_FONT_PATH_WRITABLE, "font-path-writable", "Writable font path", NULL, GIMP_CONFIG_PATH_DIR_LIST, NULL, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_BRUSH, "default-brush", "Default brush", DEFAULT_BRUSH_BLURB, DEFAULT_BRUSH, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_DYNAMICS, "default-dynamics", "Default dynamics", DEFAULT_DYNAMICS_BLURB, DEFAULT_DYNAMICS, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_MYPAINT_BRUSH, "default-mypaint-brush", "Default MyPaint brush", DEFAULT_MYPAINT_BRUSH_BLURB, DEFAULT_MYPAINT_BRUSH, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_PATTERN, "default-pattern", "Default pattern", DEFAULT_PATTERN_BLURB, DEFAULT_PATTERN, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_PALETTE, "default-palette", "Default palette", DEFAULT_PALETTE_BLURB, DEFAULT_PALETTE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_GRADIENT, "default-gradient", "Default gradient", DEFAULT_GRADIENT_BLURB, DEFAULT_GRADIENT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_TOOL_PRESET, "default-tool-preset", "Default tool preset", DEFAULT_TOOL_PRESET_BLURB, DEFAULT_TOOL_PRESET, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_STRING (object_class, PROP_DEFAULT_FONT, "default-font", "Default font", DEFAULT_FONT_BLURB, DEFAULT_FONT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_BRUSH, "global-brush", "Global brush", GLOBAL_BRUSH_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_DYNAMICS, "global-dynamics", "Global dynamics", GLOBAL_DYNAMICS_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_PATTERN, "global-pattern", "Global pattern", GLOBAL_PATTERN_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_PALETTE, "global-palette", "Global palette", GLOBAL_PALETTE_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_GRADIENT, "global-gradient", "Global gradient", GLOBAL_GRADIENT_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_GLOBAL_FONT, "global-font", "Global font", GLOBAL_FONT_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_DEFAULT_IMAGE, "default-image", "Default image", DEFAULT_IMAGE_BLURB, GIMP_TYPE_TEMPLATE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_DEFAULT_GRID, "default-grid", "Default grid", DEFAULT_GRID_BLURB, GIMP_TYPE_GRID, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_INT (object_class, PROP_UNDO_LEVELS, "undo-levels", "Undo levels", UNDO_LEVELS_BLURB, 0, 1 << 20, 5, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); undo_size = gimp_get_physical_memory_size (); if (undo_size > 0) undo_size = undo_size / 8; /* 1/8th of the memory */ else undo_size = 1 << 26; /* 64GB */ GIMP_CONFIG_PROP_MEMSIZE (object_class, PROP_UNDO_SIZE, "undo-size", "Undo size", UNDO_SIZE_BLURB, 0, GIMP_MAX_MEMSIZE, undo_size, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_CONFIRM); GIMP_CONFIG_PROP_ENUM (object_class, PROP_UNDO_PREVIEW_SIZE, "undo-preview-size", "Undo preview size", UNDO_PREVIEW_SIZE_BLURB, GIMP_TYPE_VIEW_SIZE, GIMP_VIEW_SIZE_LARGE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_INT (object_class, PROP_FILTER_HISTORY_SIZE, "plug-in-history-size", /* compat name */ "Filter history size", FILTER_HISTORY_SIZE_BLURB, 0, 256, 10, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_PATH (object_class, PROP_PLUGINRC_PATH, "pluginrc-path", "plugninrc path", PLUGINRC_PATH_BLURB, GIMP_CONFIG_PATH_FILE, "${gimp_dir}" G_DIR_SEPARATOR_S "pluginrc", GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_RESTART); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_LAYER_PREVIEWS, "layer-previews", "Layer previews", LAYER_PREVIEWS_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_LAYER_PREVIEW_SIZE, "layer-preview-size", "Layer preview size", LAYER_PREVIEW_SIZE_BLURB, GIMP_TYPE_VIEW_SIZE, GIMP_VIEW_SIZE_MEDIUM, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_ENUM (object_class, PROP_THUMBNAIL_SIZE, "thumbnail-size", "Thumbnail size", THUMBNAIL_SIZE_BLURB, GIMP_TYPE_THUMBNAIL_SIZE, GIMP_THUMBNAIL_SIZE_NORMAL, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_MEMSIZE (object_class, PROP_THUMBNAIL_FILESIZE_LIMIT, "thumbnail-filesize-limit", "Thumbnail file size limie", THUMBNAIL_FILESIZE_LIMIT_BLURB, 0, GIMP_MAX_MEMSIZE, 1 << 22, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_OBJECT (object_class, PROP_COLOR_MANAGEMENT, "color-management", "Color management", COLOR_MANAGEMENT_BLURB, GIMP_TYPE_COLOR_CONFIG, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_AGGREGATE); GIMP_CONFIG_PROP_ENUM (object_class, PROP_COLOR_PROFILE_POLICY, "color-profile-policy", "Color profile policy", COLOR_PROFILE_POLICY_BLURB, GIMP_TYPE_COLOR_PROFILE_POLICY, GIMP_COLOR_PROFILE_POLICY_ASK, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_SAVE_DOCUMENT_HISTORY, "save-document-history", "Save document history", SAVE_DOCUMENT_HISTORY_BLURB, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_PROP_RGB (object_class, PROP_QUICK_MASK_COLOR, "quick-mask-color", "Quick mask color", QUICK_MASK_COLOR_BLURB, TRUE, &red, GIMP_PARAM_STATIC_STRINGS); /* only for backward compatibility: */ GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_INSTALL_COLORMAP, "install-colormap", NULL, NULL, FALSE, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); GIMP_CONFIG_PROP_INT (object_class, PROP_MIN_COLORS, "min-colors", NULL, NULL, 27, 256, 144, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_IGNORE); }
static void gimp_curve_class_init (GimpCurveClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpViewableClass *viewable_class = GIMP_VIEWABLE_CLASS (klass); GimpDataClass *data_class = GIMP_DATA_CLASS (klass); GParamSpec *array_spec; object_class->finalize = gimp_curve_finalize; object_class->set_property = gimp_curve_set_property; object_class->get_property = gimp_curve_get_property; gimp_object_class->get_memsize = gimp_curve_get_memsize; viewable_class->default_icon_name = "FIXME icon name"; viewable_class->get_preview_size = gimp_curve_get_preview_size; viewable_class->get_popup_size = gimp_curve_get_popup_size; viewable_class->get_new_preview = gimp_curve_get_new_preview; viewable_class->get_description = gimp_curve_get_description; data_class->dirty = gimp_curve_dirty; data_class->save = gimp_curve_save; data_class->get_extension = gimp_curve_get_extension; data_class->copy = gimp_curve_data_copy; GIMP_CONFIG_PROP_ENUM (object_class, PROP_CURVE_TYPE, "curve-type", "Curve Type", "The curve type", GIMP_TYPE_CURVE_TYPE, GIMP_CURVE_SMOOTH, 0); GIMP_CONFIG_PROP_INT (object_class, PROP_N_POINTS, "n-points", "Number of Points", "The number of points", 17, 17, 17, 0); array_spec = g_param_spec_double ("point", NULL, NULL, -1.0, 1.0, 0.0, GIMP_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_POINTS, gimp_param_spec_value_array ("points", NULL, NULL, array_spec, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_FLAGS)); GIMP_CONFIG_PROP_INT (object_class, PROP_N_SAMPLES, "n-samples", "Number of Samples", "The number of samples", 256, 256, 256, 0); array_spec = g_param_spec_double ("sample", NULL, NULL, 0.0, 1.0, 0.0, GIMP_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_SAMPLES, gimp_param_spec_value_array ("samples", NULL, NULL, array_spec, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_FLAGS)); }