[Digikam-devel] How to apply changes in digikams IPTC settings to all tagged photos?

Marcel Wiesweg marcel.wiesweg at gmx.de
Tue Jan 23 17:58:26 CET 2007

> > So, this is not a "real synchronisation", because there still remain
> > differences between database contents and metadata...
> The sync depend of Metadata settings from digiKam config pannel. This
> problem can be a bug or uncomplete code in new MetadataHub class from
> Marcel. Need to investiguate.
> > I think these are very complicated tasks, and this is why I still really,
> > really think, that the "advanced metadata handling" should be swapped out
> > completely from the sidebar options, so that they can be left simple and
> > easy and usable by "everybody", while the complicated stuff will be in a
> > independend tool. Then this tool can be developped further without
> > changing the behaviour of digiKam itself. It would also make it much
> > easier to achieve and maintain a consistent behaviour thruout the
> > sidebars because added functionalities in the "advanced tool" don't have
> > to be in the sidebars too and they can be left untouched even if
> > fantastic new options are added to the "advanced tools" in future.
> >
> > - - - - - - -
> >
> > For the sync tool, I would suggest some options that the user can choose
> > from before starting it:
> >
> > - overwrite Metadata with the values, that are set in digiKam settings
> > (like Copyright etc.)
> > - OR leave these Metadata unchanged
> >
> > - overwrite keywords in Metadata with tags from database (which also
> > means, keywords will be removed/overwritten with empty space when there
> > are no tags) -- OR add tags to existing keywords (as it does now)
> >
> > Then, when choosing "overwrite mode" for both options there will be a
> > complete, real synchronisation between database and metadata. On the
> > other hand the user can decide to leave some inconsistency if this better
> > suits his/her needs.
> Hum, Marcel give me your viewpoint... Personally, I prefer a simple tool
> where picture metadata are exactly the same than DB content, following
> setup of course.

See my other mail

> > - eventually: only to selected images
> yes. the code is ready to be used.
> Marcel, you just need to call the new class :
> BatchSyncMetadata(QWidget* parent, const ImageInfoList& list)
> ... with the current selected images list from album, and the dialog will
> appear. I think than this dialog is mandatory if more than one image is
> selected to be synced because it can take a while. Without the dialog, the
> user don't have any progress feedback...

Yes I will add that if more than one, two?, five? images are selected

> > - - - - - - -
> >
> > during these tests I also (re-)found some other stuff, don't know if
> > already mentioned in bugs/wishes:
> >
> > - when a file is copied into an album folder and that file contains
> > Metadata keywords that do not exist as tags yet, then digiKam creates
> > tags for these keywords, but the tags are not checked

Confirmed, I need to investigate

> > - if you then check those tags, the keywords get duplicated
> > (this also happens with the new sync tool, because it adds tags to the
> > Metadata even if they same tags already exist as keywords - could be
> > solved with the "overwrite"-option suggested above)
> For these one, this can be a bug in KIO-Slave. Right Marcel ?

The duplicate keywords:
For DMetadata::setImageKeywords, all tags contained in newKeywords should 
probably be included in oldKeywords as well, so that they are removed first, 
and there are no duplicates?
One line of code, but where, in DMetadata or in the code that calls 

> > - when Metadata is changed by applying/removing a tag in the
> > Comments/Tags sidebar and you then open the Metadata sidebar you still
> > see the old, unchanged Metadata. The Metadata display is only updated
> > after clicking in another image and back again. This is confusing,
> > because actually the Metadata *has* been changed, but when you look at
> > it, you think it remained unchanged.
> A signal is missing to handle the gui.

Hm, MetadataHub::write(QString) call the ImageAttributesWatch, and the signal 
is received by ImagePropertiesSidebarDB.

It seems to me the problem is different: The changes are not applied at all: 
1) Select an image
2) Change anything: comment, tags
3) move to another tab (say, Metadata)
4) Select another image
The changes from (2) are lost.

Yes, sure, because slotChangedTab only takes care for the currently selected 
But why could this slip our attention, am I missing something?
Attention: Trying this will cause crashes, see #140417

> > - When deleting a tag in the Comments/Tags sidebar the sidebar gets
> > greyed out and remains greyed out even if you click into it. You have to
> > click in the album preview again (like select the already selected
> > picture again).
> probably the same than previous one.

Confirmed, need to investigate.

> Gilles
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel

More information about the Digikam-devel mailing list