mirror of https://github.com/GNOME/gimp.git
app: add much more "Show in file manager" menu items
Brushes, patterns, documents, ...
This commit is contained in:
parent
4c7338c097
commit
39db88d0a5
|
@ -67,6 +67,12 @@ static const GimpActionEntry brushes_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_BRUSH_COPY_LOCATION },
|
||||
|
||||
{ "brushes-show-in-file-manager", "gtk-directory",
|
||||
NC_("brushes-action", "Show Brush in _File Manager"), NULL,
|
||||
NC_("brushes-action", "Show the brush file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_BRUSH_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "brushes-delete", "edit-delete",
|
||||
NC_("brushes-action", "_Delete Brush"), NULL,
|
||||
NC_("brushes-action", "Delete this brush"),
|
||||
|
@ -133,9 +139,10 @@ brushes_actions_update (GimpActionGroup *group,
|
|||
gimp_action_group_set_action_sensitive (group, action, (condition) != 0)
|
||||
|
||||
SET_SENSITIVE ("brushes-edit", brush);
|
||||
SET_SENSITIVE ("brushes-open-as-image", brush && file && ! GIMP_IS_BRUSH_GENERATED (brush));
|
||||
SET_SENSITIVE ("brushes-open-as-image", file && ! GIMP_IS_BRUSH_GENERATED (brush));
|
||||
SET_SENSITIVE ("brushes-duplicate", brush && GIMP_DATA_GET_CLASS (data)->duplicate);
|
||||
SET_SENSITIVE ("brushes-copy-location", brush && file);
|
||||
SET_SENSITIVE ("brushes-copy-location", file);
|
||||
SET_SENSITIVE ("brushes-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("brushes-delete", brush && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -184,6 +184,40 @@ data_copy_location_cmd_callback (GtkAction *action,
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
data_show_in_file_manager_cmd_callback (GtkAction *action,
|
||||
gpointer user_data)
|
||||
{
|
||||
GimpDataFactoryView *view = GIMP_DATA_FACTORY_VIEW (user_data);
|
||||
GimpContext *context;
|
||||
GimpData *data;
|
||||
|
||||
context = gimp_container_view_get_context (GIMP_CONTAINER_EDITOR (view)->view);
|
||||
|
||||
data = (GimpData *)
|
||||
gimp_context_get_by_type (context,
|
||||
gimp_data_factory_view_get_children_type (view));
|
||||
|
||||
if (data)
|
||||
{
|
||||
GFile *file = gimp_data_get_file (data);
|
||||
|
||||
if (file)
|
||||
{
|
||||
GError *error = NULL;
|
||||
|
||||
if (! gimp_file_show_in_file_manager (file, &error))
|
||||
{
|
||||
gimp_message (context->gimp, G_OBJECT (view),
|
||||
GIMP_MESSAGE_ERROR,
|
||||
_("Can't show file in file manager: %s"),
|
||||
error->message);
|
||||
g_clear_error (&error);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
data_delete_cmd_callback (GtkAction *action,
|
||||
gpointer user_data)
|
||||
|
|
|
@ -27,6 +27,8 @@ void data_duplicate_cmd_callback (GtkAction *action,
|
|||
gpointer data);
|
||||
void data_copy_location_cmd_callback (GtkAction *action,
|
||||
gpointer user_data);
|
||||
void data_show_in_file_manager_cmd_callback (GtkAction *action,
|
||||
gpointer user_data);
|
||||
void data_delete_cmd_callback (GtkAction *action,
|
||||
gpointer data);
|
||||
void data_refresh_cmd_callback (GtkAction *action,
|
||||
|
|
|
@ -66,6 +66,12 @@ static const GimpActionEntry documents_actions[] =
|
|||
G_CALLBACK (documents_copy_location_cmd_callback),
|
||||
GIMP_HELP_DOCUMENT_COPY_LOCATION },
|
||||
|
||||
{ "documents-show-in-file-manager", "gtk-directory",
|
||||
NC_("documents-action", "Show Image in _File Manager"), NULL,
|
||||
NC_("documents-action", "Show image location in the file manager"),
|
||||
G_CALLBACK (documents_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_DOCUMENT_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "documents-remove", "list-remove",
|
||||
NC_("documents-action", "Remove _Entry"), NULL,
|
||||
NC_("documents-action", "Remove the selected entry"),
|
||||
|
@ -126,6 +132,7 @@ documents_actions_update (GimpActionGroup *group,
|
|||
SET_SENSITIVE ("documents-raise-or-open", imagefile);
|
||||
SET_SENSITIVE ("documents-file-open-dialog", TRUE);
|
||||
SET_SENSITIVE ("documents-copy-location", imagefile);
|
||||
SET_SENSITIVE ("documents-show-in-file-manager", imagefile);
|
||||
SET_SENSITIVE ("documents-remove", imagefile);
|
||||
SET_SENSITIVE ("documents-clear", TRUE);
|
||||
SET_SENSITIVE ("documents-recreate-preview", imagefile);
|
||||
|
|
|
@ -166,6 +166,35 @@ documents_copy_location_cmd_callback (GtkAction *action,
|
|||
gimp_object_get_name (imagefile));
|
||||
}
|
||||
|
||||
void
|
||||
documents_show_in_file_manager_cmd_callback (GtkAction *action,
|
||||
gpointer data)
|
||||
{
|
||||
GimpContainerEditor *editor = GIMP_CONTAINER_EDITOR (data);
|
||||
GimpContext *context;
|
||||
GimpImagefile *imagefile;
|
||||
|
||||
context = gimp_container_view_get_context (editor->view);
|
||||
imagefile = gimp_context_get_imagefile (context);
|
||||
|
||||
if (imagefile)
|
||||
{
|
||||
GFile *file = g_file_new_for_uri (gimp_object_get_name (imagefile));
|
||||
GError *error = NULL;
|
||||
|
||||
if (! gimp_file_show_in_file_manager (file, &error))
|
||||
{
|
||||
gimp_message (context->gimp, G_OBJECT (editor),
|
||||
GIMP_MESSAGE_ERROR,
|
||||
_("Can't show file in file manager: %s"),
|
||||
error->message);
|
||||
g_clear_error (&error);
|
||||
}
|
||||
|
||||
g_object_unref (file);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
documents_remove_cmd_callback (GtkAction *action,
|
||||
gpointer data)
|
||||
|
|
|
@ -27,6 +27,8 @@ void documents_file_open_dialog_cmd_callback (GtkAction *action,
|
|||
gpointer data);
|
||||
void documents_copy_location_cmd_callback (GtkAction *action,
|
||||
gpointer data);
|
||||
void documents_show_in_file_manager_cmd_callback (GtkAction *action,
|
||||
gpointer data);
|
||||
void documents_remove_cmd_callback (GtkAction *action,
|
||||
gpointer data);
|
||||
void documents_clear_cmd_callback (GtkAction *action,
|
||||
|
|
|
@ -61,6 +61,12 @@ static const GimpActionEntry dynamics_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_DYNAMICS_COPY_LOCATION },
|
||||
|
||||
{ "dynamics-show-in-file-manager", "gtk-directory",
|
||||
NC_("dynamics-action", "Show Dynamics in _File Manager"), NULL,
|
||||
NC_("dynamics-action", "Show dynamics file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_DYNAMICS_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "dynamics-delete", "edit-delete",
|
||||
NC_("dynamics-action", "_Delete Dynamics"), NULL,
|
||||
NC_("dynamics-action", "Delete this dynamics"),
|
||||
|
@ -123,7 +129,8 @@ dynamics_actions_update (GimpActionGroup *group,
|
|||
|
||||
SET_SENSITIVE ("dynamics-edit", dynamics);
|
||||
SET_SENSITIVE ("dynamics-duplicate", dynamics && GIMP_DATA_GET_CLASS (data)->duplicate);
|
||||
SET_SENSITIVE ("dynamics-copy-location", dynamics && file);
|
||||
SET_SENSITIVE ("dynamics-copy-location", file);
|
||||
SET_SENSITIVE ("dynamics-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("dynamics-delete", dynamics && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -62,6 +62,12 @@ static const GimpActionEntry gradients_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_GRADIENT_COPY_LOCATION },
|
||||
|
||||
{ "gradients-show-in-file-manager", "gtk-directory",
|
||||
NC_("gradients-action", "Show Gradient in _File Manager"), NULL,
|
||||
NC_("gradients-action", "Show gradient file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_GRADIENT_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "gradients-save-as-pov", "document-save-as",
|
||||
NC_("gradients-action", "Save as _POV-Ray..."), NULL,
|
||||
NC_("gradients-action", "Save gradient as POV-Ray"),
|
||||
|
@ -136,7 +142,8 @@ gradients_actions_update (GimpActionGroup *group,
|
|||
SET_SENSITIVE ("gradients-edit", gradient);
|
||||
SET_SENSITIVE ("gradients-duplicate", gradient);
|
||||
SET_SENSITIVE ("gradients-save-as-pov", gradient);
|
||||
SET_SENSITIVE ("gradients-copy-location", gradient && file);
|
||||
SET_SENSITIVE ("gradients-copy-location", file);
|
||||
SET_SENSITIVE ("gradients-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("gradients-delete", gradient && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -74,6 +74,12 @@ static const GimpActionEntry palettes_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_PALETTE_COPY_LOCATION },
|
||||
|
||||
{ "palettes-show-in-file-manager", "gtk-directory",
|
||||
NC_("palettes-action", "Show Palette in _File Manager"), NULL,
|
||||
NC_("palettes-action", "Show palette file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_PALETTE_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "palettes-delete", "edit-delete",
|
||||
NC_("palettes-action", "_Delete Palette"), NULL,
|
||||
NC_("palettes-action", "Delete this palette"),
|
||||
|
@ -142,7 +148,8 @@ palettes_actions_update (GimpActionGroup *group,
|
|||
SET_SENSITIVE ("palettes-edit", palette);
|
||||
SET_SENSITIVE ("palettes-duplicate", palette && GIMP_DATA_GET_CLASS (data)->duplicate);
|
||||
SET_SENSITIVE ("palettes-merge", FALSE); /* FIXME palette && GIMP_IS_CONTAINER_LIST_VIEW (editor->view)); */
|
||||
SET_SENSITIVE ("palettes-copy-location", palette && file);
|
||||
SET_SENSITIVE ("palettes-copy-location", file);
|
||||
SET_SENSITIVE ("palettes-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("palettes-delete", palette && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -67,6 +67,12 @@ static const GimpActionEntry patterns_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_PATTERN_COPY_LOCATION },
|
||||
|
||||
{ "patterns-show-in-file-manager", "gtk-directory",
|
||||
NC_("patterns-action", "Show Pattern in _File Manager"), NULL,
|
||||
NC_("patterns-action", "Show pattern file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_PATTERN_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "patterns-delete", "edit-delete",
|
||||
NC_("patterns-action", "_Delete Pattern"), NULL,
|
||||
NC_("patterns-action", "Delete this pattern"),
|
||||
|
@ -133,9 +139,10 @@ patterns_actions_update (GimpActionGroup *group,
|
|||
gimp_action_group_set_action_sensitive (group, action, (condition) != 0)
|
||||
|
||||
SET_SENSITIVE ("patterns-edit", pattern && FALSE);
|
||||
SET_SENSITIVE ("patterns-open-as-image", pattern && file);
|
||||
SET_SENSITIVE ("patterns-open-as-image", file);
|
||||
SET_SENSITIVE ("patterns-duplicate", pattern && GIMP_DATA_GET_CLASS (data)->duplicate);
|
||||
SET_SENSITIVE ("patterns-copy-location", pattern && file);
|
||||
SET_SENSITIVE ("patterns-copy-location", file);
|
||||
SET_SENSITIVE ("patterns-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("patterns-delete", pattern && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -63,6 +63,12 @@ static const GimpActionEntry tool_presets_actions[] =
|
|||
G_CALLBACK (data_copy_location_cmd_callback),
|
||||
GIMP_HELP_TOOL_PRESET_COPY_LOCATION },
|
||||
|
||||
{ "tool-presets-show-in-file-manager", "gtk-directory",
|
||||
NC_("tool-presets-action", "Show Tool Preset in _File Manager"), NULL,
|
||||
NC_("tool-presets-action", "Show tool preset file location in the file manager"),
|
||||
G_CALLBACK (data_show_in_file_manager_cmd_callback),
|
||||
GIMP_HELP_TOOL_PRESET_SHOW_IN_FILE_MANAGER },
|
||||
|
||||
{ "tool-presets-delete", "edit-delete",
|
||||
NC_("tool-presets-action", "_Delete Tool Preset"), NULL,
|
||||
NC_("tool-presets-action", "Delete this tool preset"),
|
||||
|
@ -125,7 +131,8 @@ tool_presets_actions_update (GimpActionGroup *group,
|
|||
|
||||
SET_SENSITIVE ("tool-presets-edit", tool_preset);
|
||||
SET_SENSITIVE ("tool-presets-duplicate", tool_preset && GIMP_DATA_GET_CLASS (data)->duplicate);
|
||||
SET_SENSITIVE ("tool-presets-copy-location", tool_preset && file);
|
||||
SET_SENSITIVE ("tool-presets-copy-location", file);
|
||||
SET_SENSITIVE ("tool-presets-show-in-file-manager", file);
|
||||
SET_SENSITIVE ("tool-presets-delete", tool_preset && gimp_data_is_deletable (data));
|
||||
|
||||
#undef SET_SENSITIVE
|
||||
|
|
|
@ -323,6 +323,7 @@
|
|||
#define GIMP_HELP_BRUSH_NEW "gimp-brush-new"
|
||||
#define GIMP_HELP_BRUSH_DUPLICATE "gimp-brush-duplicate"
|
||||
#define GIMP_HELP_BRUSH_COPY_LOCATION "gimp-brush-copy-location"
|
||||
#define GIMP_HELP_BRUSH_SHOW_IN_FILE_MANAGER "gimp-brush-show-in-file-manager"
|
||||
#define GIMP_HELP_BRUSH_DELETE "gimp-brush-delete"
|
||||
#define GIMP_HELP_BRUSH_REFRESH "gimp-brush-refresh"
|
||||
|
||||
|
@ -338,6 +339,7 @@
|
|||
#define GIMP_HELP_DYNAMICS_NEW "gimp-dynamics-new"
|
||||
#define GIMP_HELP_DYNAMICS_DUPLICATE "gimp-dynamics-duplicate"
|
||||
#define GIMP_HELP_DYNAMICS_COPY_LOCATION "gimp-dynamics-copy-location"
|
||||
#define GIMP_HELP_DYNAMICS_SHOW_IN_FILE_MANAGER "gimp-dynamics-show-in-file-manager"
|
||||
#define GIMP_HELP_DYNAMICS_DELETE "gimp-dynamics-delete"
|
||||
#define GIMP_HELP_DYNAMICS_REFRESH "gimp-dynamics-refresh"
|
||||
|
||||
|
@ -347,6 +349,7 @@
|
|||
#define GIMP_HELP_PATTERN_NEW "gimp-pattern-new"
|
||||
#define GIMP_HELP_PATTERN_DUPLICATE "gimp-pattern-duplicate"
|
||||
#define GIMP_HELP_PATTERN_COPY_LOCATION "gimp-pattern-copy-location"
|
||||
#define GIMP_HELP_PATTERN_SHOW_IN_FILE_MANAGER "gimp-pattern-show-in-file-manager"
|
||||
#define GIMP_HELP_PATTERN_DELETE "gimp-pattern-delete"
|
||||
#define GIMP_HELP_PATTERN_REFRESH "gimp-pattern-refresh"
|
||||
|
||||
|
@ -355,6 +358,7 @@
|
|||
#define GIMP_HELP_GRADIENT_NEW "gimp-gradient-new"
|
||||
#define GIMP_HELP_GRADIENT_DUPLICATE "gimp-gradient-duplicate"
|
||||
#define GIMP_HELP_GRADIENT_COPY_LOCATION "gimp-gradient-copy-location"
|
||||
#define GIMP_HELP_GRADIENT_SHOW_IN_FILE_MANAGER "gimp-gradient-show-in-file-manager"
|
||||
#define GIMP_HELP_GRADIENT_DELETE "gimp-gradient-delete"
|
||||
#define GIMP_HELP_GRADIENT_REFRESH "gimp-gradient-refresh"
|
||||
#define GIMP_HELP_GRADIENT_SAVE_AS_POV "gimp-gradient-save-as-pov"
|
||||
|
@ -387,6 +391,7 @@
|
|||
#define GIMP_HELP_PALETTE_NEW "gimp-palette-new"
|
||||
#define GIMP_HELP_PALETTE_DUPLICATE "gimp-palette-duplicate"
|
||||
#define GIMP_HELP_PALETTE_COPY_LOCATION "gimp-palette-copy-location"
|
||||
#define GIMP_HELP_PALETTE_SHOW_IN_FILE_MANAGER "gimp-palette-show-in-file-manager"
|
||||
#define GIMP_HELP_PALETTE_DELETE "gimp-palette-delete"
|
||||
#define GIMP_HELP_PALETTE_REFRESH "gimp-palette-refresh"
|
||||
#define GIMP_HELP_PALETTE_IMPORT "gimp-palette-import"
|
||||
|
@ -417,11 +422,13 @@
|
|||
#define GIMP_HELP_TOOL_PRESET_NEW "gimp-tool-preset-new"
|
||||
#define GIMP_HELP_TOOL_PRESET_DUPLICATE "gimp-tool-preset-duplicate"
|
||||
#define GIMP_HELP_TOOL_PRESET_COPY_LOCATION "gimp-tool-preset-copy-location"
|
||||
#define GIMP_HELP_TOOL_PRESET_SHOW_IN_FILE_MANAGER "gimp-tool-preset-show-in-file-manager"
|
||||
#define GIMP_HELP_TOOL_PRESET_DELETE "gimp-tool-preset-delete"
|
||||
#define GIMP_HELP_TOOL_PRESET_REFRESH "gimp-tool-preset-refresh"
|
||||
|
||||
#define GIMP_HELP_DOCUMENT_CLEAR "gimp-document-clear"
|
||||
#define GIMP_HELP_DOCUMENT_COPY_LOCATION "gimp-document-copy-location"
|
||||
#define GIMP_HELP_DOCUMENT_SHOW_IN_FILE_MANAGER "gimp-document-show-in-file-manager"
|
||||
#define GIMP_HELP_DOCUMENT_DIALOG "gimp-document-dialog"
|
||||
#define GIMP_HELP_DOCUMENT_OPEN "gimp-document-open"
|
||||
#define GIMP_HELP_DOCUMENT_REMOVE "gimp-document-remove"
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
<menuitem action="brushes-new" />
|
||||
<menuitem action="brushes-duplicate" />
|
||||
<menuitem action="brushes-copy-location" />
|
||||
<menuitem action="brushes-show-in-file-manager" />
|
||||
<menuitem action="brushes-delete" />
|
||||
<separator />
|
||||
<menuitem action="brushes-refresh" />
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
<menuitem action="documents-raise-or-open" />
|
||||
<menuitem action="documents-file-open-dialog" />
|
||||
<menuitem action="documents-copy-location" />
|
||||
<menuitem action="documents-show-in-file-manager" />
|
||||
<menuitem action="documents-remove" />
|
||||
<menuitem action="documents-clear" />
|
||||
<separator />
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
<menuitem action="dynamics-new" />
|
||||
<menuitem action="dynamics-duplicate" />
|
||||
<menuitem action="dynamics-copy-location" />
|
||||
<menuitem action="dynamics-show-in-file-manager" />
|
||||
<menuitem action="dynamics-delete" />
|
||||
<separator />
|
||||
<menuitem action="dynamics-refresh" />
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
<menuitem action="gradients-duplicate" />
|
||||
<menuitem action="gradients-save-as-pov" />
|
||||
<menuitem action="gradients-copy-location" />
|
||||
<menuitem action="gradients-show-in-file-manager" />
|
||||
<menuitem action="gradients-delete" />
|
||||
<separator />
|
||||
<menuitem action="gradients-refresh" />
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
<menuitem action="palettes-duplicate" />
|
||||
<menuitem action="palettes-merge" />
|
||||
<menuitem action="palettes-copy-location" />
|
||||
<menuitem action="palettes-show-in-file-manager" />
|
||||
<menuitem action="palettes-delete" />
|
||||
<separator />
|
||||
<menuitem action="palettes-refresh" />
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
-->
|
||||
|
||||
<menuitem action="patterns-copy-location" />
|
||||
<menuitem action="patterns-show-in-file-manager" />
|
||||
<menuitem action="patterns-delete" />
|
||||
<separator />
|
||||
<menuitem action="patterns-refresh" />
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
<menuitem action="tool-presets-new" />
|
||||
<menuitem action="tool-presets-duplicate" />
|
||||
<menuitem action="tool-presets-copy-location" />
|
||||
<menuitem action="tool-presets-show-in-file-manager" />
|
||||
<menuitem action="tool-presets-delete" />
|
||||
<separator />
|
||||
<menuitem action="tool-presets-refresh" />
|
||||
|
|
Loading…
Reference in New Issue