mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 01:13:24 +00:00

Preferences > Image Import and Export tab has various Export Policies, which are mostly for safety reasons. One may want to default at never exporting specific metadata. This got broken and anyway the logic was not good enough. Now these policies are followed in interactive mode, unless an export has already happened for this specific export plug-in on this specific file (in this case, we reuse the last values). We don't want settings to unexpectedly change in such a case. In last-vals and non-interactive run-mode though, we don't follow the Preferences policies, since in the former case, we want to reuse exactly the same settings (e.g. we don't want an Export discarding metadata which explicitly checked in the Export As) and in the latter case, it is the developer's responsibility to set up expected options.
64 lines
3.4 KiB
C
64 lines
3.4 KiB
C
/* LIBGIMP - The GIMP Library
|
|
* Copyright (C) 1995-2003 Peter Mattis and Spencer Kimball
|
|
*
|
|
* gimpprocedureconfig-private.h
|
|
* Copyright (C) 2019 Michael Natterer <mitch@gimp.org>
|
|
*
|
|
* This library is free software: you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 3 of the License, or (at your option) any later version.
|
|
*
|
|
* This library 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
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library. If not, see
|
|
* <https://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef __GIMP_PROCEDURE_CONFIG_PRIVATE_H__
|
|
#define __GIMP_PROCEDURE_CONFIG_PRIVATE_H__
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
|
G_GNUC_INTERNAL void _gimp_procedure_config_get_values (GimpProcedureConfig *config,
|
|
GimpValueArray *values);
|
|
|
|
G_GNUC_INTERNAL void _gimp_procedure_config_begin_run (GimpProcedureConfig *config,
|
|
GimpImage *image,
|
|
GimpRunMode run_mode,
|
|
const GimpValueArray *args,
|
|
gboolean *editable_properties);
|
|
G_GNUC_INTERNAL void _gimp_procedure_config_end_run (GimpProcedureConfig *config,
|
|
GimpPDBStatusType status);
|
|
|
|
G_GNUC_INTERNAL GimpMetadata * _gimp_procedure_config_begin_export (GimpProcedureConfig *config,
|
|
GimpImage *original_image,
|
|
GimpRunMode run_mode,
|
|
const GimpValueArray *args,
|
|
const gchar *mime_type);
|
|
G_GNUC_INTERNAL void _gimp_procedure_config_end_export (GimpProcedureConfig *config,
|
|
GimpImage *exported_image,
|
|
GFile *file,
|
|
GimpPDBStatusType status);
|
|
|
|
|
|
/* These 3 functions are not marked internal because they are used in libgimpui.
|
|
* The headers is not installed so these functions should be considered not
|
|
* existing. Yet they are still exported in the library.
|
|
*/
|
|
gboolean gimp_procedure_config_has_default (GimpProcedureConfig *config);
|
|
|
|
gboolean gimp_procedure_config_load_default (GimpProcedureConfig *config,
|
|
GError **error);
|
|
gboolean gimp_procedure_config_save_default (GimpProcedureConfig *config,
|
|
GError **error);
|
|
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __GIMP_PROCEDURE_CONFIG_PRIVATE_H__ */
|