gimp/app
Ell e7d781ff0e app: future-proof XCF layer blend/composite props
The layer blend space, composite space, and composite mode
properties have a special AUTO value, which may map to different
concrete values based on the layer mode.  Make sure we can change
this mapping in the future, without affecting existing XCFs (saved
after this commit), by encoding these properties as follows:

When saving an XCF, if the property has a concrete (non-AUTO)
value, which is always positive, encode it as is.  If the property
is AUTO, which is always 0, encode it as the negative of the value
it actually maps to at the time of saving (note that in some cases
AUTO may map to AUTO, in which case it's encoded as 0).

When loading an XCF, if the encoded property (stored in the file)
is nonnegative, use it as is.  Otherwise, compare the negative of
the encoded property to the value AUTO maps to at the time of
loading.  If the values are equal, set the property to AUTO;
otherwise, use the concrete value (i.e., the negative of the value
stored in the XCF).

Note that XCFs saved prior to this commit still load fine, it's
simply that if we change the AUTO mapping in the future, all their
AUTO properties will keep being loaded as AUTO, even if the
resulting concrete values will have changed.
2017-05-21 08:44:19 -04:00
..
actions app, menus: rename confusing layers-text-tool and vectors-path-tool. 2017-05-16 00:04:24 +02:00
config enums: generate enum files in source dir 2017-05-06 17:26:16 -04:00
core app, menus: rename confusing layers-text-tool and vectors-path-tool. 2017-05-16 00:04:24 +02:00
dialogs app: set the palette import dialog's "# Colors" scale to logarithmic 2017-05-18 18:21:51 +02:00
display Bug 772667 - instant freeze on rotate 2017-05-14 22:28:51 +02:00
file app, libgimp: allow to register more than one MIME type per procedure 2017-05-04 23:22:37 +02:00
gegl enums: generate enum files in source dir 2017-05-06 17:26:16 -04:00
gui Deprecate stock items for good and change all icon defines to GIMP_ICON_* 2017-03-05 16:01:59 +01:00
menus Bug 750180 - Fix different ways of writing Plug-in Plug-In Plugin. 2017-03-21 17:52:22 +01:00
operations app: add gimp_layer_mode_get_included_region() 2017-05-11 17:44:55 -04:00
paint enums: generate enum files in source dir 2017-05-06 17:26:16 -04:00
pdb app, libgimp: allow to register more than one MIME type per procedure 2017-05-04 23:22:37 +02:00
plug-in enums: generate enum files in source dir 2017-05-06 17:26:16 -04:00
tests *: rename NORMAL to NORMAL_LEGACY and NORMAL_LINEAR to NORMAL 2017-02-26 16:26:34 +01:00
text enums: generate enum files in source dir 2017-05-06 17:26:16 -04:00
tools app: add interpolation, abyss policy, and high quality preview options ... 2017-05-19 18:29:16 -04:00
vectors Bug 769022 - Improve text along path when path is short. 2016-12-21 22:35:17 +01:00
widgets app: derive GimpFgBgEditor from GtkEventBox instead of GtkDrawingArea 2017-05-19 12:02:48 +02:00
xcf app: future-proof XCF layer blend/composite props 2017-05-21 08:44:19 -04:00
.gitignore
Makefile.am app: fix abbreviated commit hashes 2017-03-21 23:05:42 -04:00
about.h Bug 762282 - Link ends with "/." 2016-02-26 17:17:44 +01:00
app.c app: minor tab cleaning. 2017-03-12 16:40:15 +01:00
app.h app: add a "Playground" perfs page and a --show-playground command line option 2014-09-14 01:08:25 +02:00
errors.c app, libgimp: add log handlers for all LibGimp* log domains 2015-05-20 11:05:45 +02:00
errors.h
gimp-debug.c
gimp-debug.h
gimp-intl.h
gimp-log.c app: turned an XCF debug patch I had into proper GIMP_LOG=xcf output 2014-07-09 22:36:55 +02:00
gimp-log.h app: turned an XCF debug patch I had into proper GIMP_LOG=xcf output 2014-07-09 22:36:55 +02:00
gimp-priorities.h app: add gimp-priorities.h and keep the most important priorities there 2014-07-02 04:47:24 +02:00
gimpcore.def app: Add gimp_channel_flood() function 2016-01-25 22:58:28 +01:00
language.c app: language.c contains no translatable strings, remove "gimp-intl.h" 2016-10-21 18:44:39 +02:00
language.h
main.c Bug 750180 - Fix different ways of writing Plug-in Plug-In Plugin. 2017-03-21 17:52:22 +01:00
sanity.c configure.ac: require babl >= 0.1.27 and GEGL >= 0.3.15 2017-05-09 22:49:56 +02:00
sanity.h
signals.c app,libgimp*: fix includes to follow our include policy 2013-10-15 01:58:39 +02:00
signals.h
tests.c app: merge units.[ch] into core/gimp-units.[ch] 2016-09-12 23:51:29 +02:00
tests.h app: forgot a s/const gchar*/GFile*/ in tests.[ch] 2014-08-29 21:36:31 +02:00
unique.c app: indentation fix. 2015-09-29 00:32:24 +02:00
unique.h app: clean out tab indentations. 2016-12-21 04:05:32 +01:00
version.c
version.h