Add action and callback for adding a group layer (works but is not used yet)

This commit is contained in:
Michael Natterer 2009-08-06 18:37:54 +02:00
parent b1bbbb230d
commit e8bd830f48
3 changed files with 27 additions and 1 deletions

View File

@ -97,6 +97,12 @@ static const GimpActionEntry layers_actions[] =
G_CALLBACK (layers_new_from_visible_cmd_callback),
GIMP_HELP_LAYER_NEW_FROM_VISIBLE },
{ "layers-new-group", GTK_STOCK_DIRECTORY,
NC_("layers-action", "_New Group Layer..."), NULL,
NC_("layers-action", "Create a new group layer and add it to the image"),
G_CALLBACK (layers_new_group_cmd_callback),
GIMP_HELP_LAYER_NEW },
{ "layers-duplicate", GIMP_STOCK_DUPLICATE,
NC_("layers-action", "D_uplicate Layer"), "<control><shift>D",
NC_("layers-action",
@ -544,6 +550,7 @@ layers_actions_update (GimpActionGroup *group,
SET_SENSITIVE ("layers-new", image);
SET_SENSITIVE ("layers-new-last-values", image);
SET_SENSITIVE ("layers-new-from-visible", image);
SET_SENSITIVE ("layers-new-group", image);
SET_SENSITIVE ("layers-duplicate", layer && !fs && !ac);
SET_SENSITIVE ("layers-delete", layer && !ac);

View File

@ -33,12 +33,12 @@
#include "core/gimp.h"
#include "core/gimpchannel-select.h"
#include "core/gimpcontext.h"
#include "core/gimpgrouplayer.h"
#include "core/gimpimage.h"
#include "core/gimpimage-merge.h"
#include "core/gimpimage-undo.h"
#include "core/gimpimage-undo-push.h"
#include "core/gimpitemundo.h"
#include "core/gimplayer.h"
#include "core/gimplayer-floating-sel.h"
#include "core/gimplayermask.h"
#include "core/gimppickable.h"
@ -360,6 +360,22 @@ layers_new_from_visible_cmd_callback (GtkAction *action,
gimp_image_flush (image);
}
void
layers_new_group_cmd_callback (GtkAction *action,
gpointer data)
{
GimpImage *image;
GimpLayer *layer;
return_if_no_image (image, data);
layer = gimp_group_layer_new (image);
gimp_image_add_layer (image, layer,
GIMP_IMAGE_ACTIVE_PARENT, -1, TRUE);
gimp_image_flush (image);
}
void
layers_select_cmd_callback (GtkAction *action,
gint value,

View File

@ -31,6 +31,9 @@ void layers_new_last_vals_cmd_callback (GtkAction *action,
void layers_new_from_visible_cmd_callback (GtkAction *action,
gpointer data);
void layers_new_group_cmd_callback (GtkAction *action,
gpointer data);
void layers_select_cmd_callback (GtkAction *action,
gint value,
gpointer data);