app: add GimpLayerModeContext enum
A bitmask, specifying in which contexts a layer mode is applicable. Can be a combination of: - LAYER: usable as a layer mode for actual layers. - GROUP: usable as a layer mode for layer groups. Currently, all modes that specify LAYER also specify GROUP, and vice versa, but the planned pass-through mode will be GROUP only. - PAINT: can be used as a paint mode. - FADE: can be used for fading. Add a 'context' field to _GimpLayerModeInfo, and provide context masks to all the modes. Use the context mask for validation when setting a layer's mode. The next commit will use the mask when populating the layer mode menus.
This commit is contained in:
@ -294,6 +294,41 @@ gimp_layer_mode_group_get_type (void)
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_layer_mode_context_get_type (void)
|
||||
{
|
||||
static const GFlagsValue values[] =
|
||||
{
|
||||
{ GIMP_LAYER_MODE_CONTEXT_LAYER, "GIMP_LAYER_MODE_CONTEXT_LAYER", "layer" },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_GROUP, "GIMP_LAYER_MODE_CONTEXT_GROUP", "group" },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_PAINT, "GIMP_LAYER_MODE_CONTEXT_PAINT", "paint" },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_FADE, "GIMP_LAYER_MODE_CONTEXT_FADE", "fade" },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_ALL, "GIMP_LAYER_MODE_CONTEXT_ALL", "all" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpFlagsDesc descs[] =
|
||||
{
|
||||
{ GIMP_LAYER_MODE_CONTEXT_LAYER, "GIMP_LAYER_MODE_CONTEXT_LAYER", NULL },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_GROUP, "GIMP_LAYER_MODE_CONTEXT_GROUP", NULL },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_PAINT, "GIMP_LAYER_MODE_CONTEXT_PAINT", NULL },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_FADE, "GIMP_LAYER_MODE_CONTEXT_FADE", NULL },
|
||||
{ GIMP_LAYER_MODE_CONTEXT_ALL, "GIMP_LAYER_MODE_CONTEXT_ALL", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (G_UNLIKELY (! type))
|
||||
{
|
||||
type = g_flags_register_static ("GimpLayerModeContext", values);
|
||||
gimp_type_set_translation_context (type, "layer-mode-context");
|
||||
gimp_flags_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
|
||||
/* Generated data ends here */
|
||||
|
||||
|
Reference in New Issue
Block a user