On Thu, 22 Jun 2006 00:13:13 +0200, Sven Neumann <[EMAIL PROTECTED]> wrote:
> On Wed, 2006-06-21 at 23:53 +0200, Raphaël Quinet wrote:
> > > The file plug-ins would not use these functions via the PDB because they
> > could use the library directly.
> The file plug-ins could as well use the functions via the PDB then.
> What's the benefit of linking to them?
Cleaner code (core/GUI separation, maintainable by different people),
lower overhead (especially when changing many properties) and more
importantly providing the start of a solution for avoiding the
concurrency issues that I mentioned earlier.
> I am somewhat reluctant to see such code in the core, or the core
> linking to it. Simply because experience shows that parsers aren't
> perfect and can crash. I wouldn't want to see the core crash because
> some camera manufacturer made a mistake and the camera creates images
> with corrupt metadata.
I understand your concerns. However, I do not see another way to view
and modify the metadata in real time. Viewing the metadata should be
like viewing any other image properties (info dialog) and doing this in
a plug-in that does not know when the image or its metadata is modified
means that the metadata displayed by the plug-in may not match the
current data: wrong image dimensions, color space, etc. And worse, the
plug-in may override some changes to the metadata if it updates it after
ignoring other changes that happened outside of its control.
With the current plug-in, you may get annoying results such as an image
saved with the wrong thumbnail or with other incorrect metadata, just
because you forgot to close the metadata editor before saving and to
re-open it just after saving. This should not happen in the core.
Besides, I try to have a parser that is as robust as possible. ;-)
Gimp-developer mailing list