Version: 0.8.2-svn (using KDE 3.5.0, Gentoo) Compiler: gcc version 3.3.6 (Gentoo 3.3.6, ssp-3.3.6-1.0, pie-8.7.8) OS: Linux (i686) release 2.6.14-gentoo-r4 Besides basic and full I would like to see an option "selected" in the properties - exif tab for which I can select the shown fields myself. Basic lacks the fields as often needed for photo websites while it has fields which I generally couldn't care less about. Full has everything but makes you search for the info needed. As I realize that everybody's needs are different a page with selectable fields would be great..
Suggestion for this bug: Add a checkbox to each field in "Full" view that defines whether this field is visible in the "Basic" view. Save these settings in digikamrc. I can try and make a patch if Caullier agrees with this. Jens
I'm not agree to use this way becaus it will take space in side bar. We are limited... Also settings must be out of application to be unconfuse with user. This is why we use a setup page for all settings. Also, your solution is not enough. digikam need to follow Exiv2 features, witch drive metadata tags. The list of tags isn't frozen and continue to be discovered (Makernotes). For that, we need a new page in setup dialog, witch display all tags available in Exiv2 (Exif, IPTC, Makernote, and in the future XMP). Using tabs is the right way to optimize space in dialog page. In this setup, Exiv2 need to be called to get the list of tags available in the version installed on the computer. We display a list with check buttons for all items. When the user valid the setup, the config is recorded in digikamrc file. and used by the sidebar 2 new buttons must be added on the top of sidebar : one to call directly this setup page, a second to display only the users configuration of metadata tags. But, JensB, this implementation can be long, and complicated. This is why i have delayed this task later than 0.9.0 final. I recommend you to look in TODO file the tasks to complete to finalize this version before to try to add new features... Choise the most easy task to limit the depencies on the current implementation. I'm sure that there are some easy jobs to do into B.K.O files. We are in 0.9.0-beta1 finalization. Take a care. Thanks in advance for your help Gilles
Looking at 0.9 svn current, the right sidebar IMHO needs to be cleaned up a bit anyway. (I just noticed that you have replied to this already. Just for the record, I'm posting this anyway, maybe for later.) It is great that I can view all this information of a photograph. But the GUI clutter is far too big (IMHO): - The right sidebar is unuseable on displays smaller than 1024x768 - there is simply no space. And it is not possible to make it small enough (it probably has a minimum forced size). Can this minimum size perhaps be taken out? - Now there are *three* (!!) place where the tag tree is shown. It is not easy to see what the purpose of this duplication (triplication) is: a) we want to filter images per tags: select a tag b) we want to assign tags to images : drop images on a tag That way, we only need one list with the tags. The left side tag list already does all of this. - In the "Properties" sidebar tab, what is the difference between "File properties", "Images properties", and "photograph properties"? This is confusing. For example the "date/time" values that digikam shows. For any image, we have a) logical datetime values: (i) when the picture was taken; (ii) when the picture was copied on the computer; (iii) when the picture was (last) modified (from within Digikam?). b) physical datetime values: (1) EXIF:DateTime == DateTimeOriginal == IPTC:Date/TimeCreated (2) EXIF:DateTimeDigitized == IPTC:DigitizationDate/Time (3) file mtime (4) file atime IMHO, (i) == (1), (ii) == (2) and (iii) == (3), and digikam should only care about the first two of these values. For the file mtime: either it should be _always_ kept in sync with the datetime value in the DB, or ignored altogether (then one can use 'exiftool' to sync it with the EXIF datetime). But in digikam we are managing photos, not files. Right? Here follows a proposal for the "Properties" right side tab. The idea is that the first (default) tab shows information that the *user* is interested in, but no technical details that are not related to the actual contents of the photo. ======================================================================= _______Photograph information:___________ Name : (file name) (editable) Date : xx.xx.xxxx xx:xx:xx (editable) [Digitized : xx.xx.xxxx xx:xx:xx] (optional, editable) Rating : [* * * * *] (editable) Tags : xxx, xxx/yyyyyyyyyyyyyy, xxxxxxx/yyy, zzzzzzzzzz Comments: ________________________ | | | | | | |_________________________________| ______Technical details:_____________ Size : xxx.xxx.xxx bytes Type : xxxxxxxxxxx Dimensions: xxxx X xxxx Camera maker Camera model Aperture, Zoom, Flash, Exposure, etc. (and all other EXIF/IPTC info that the user has selected) ======================================================================= The fields marked "editable" should look like text fields but change into an input field when hovering over them with the mouse. That way you don't acidentally change/delete them, and they are easier to read quickly (than a lot of input boxes). Reasoning: - This new arrangement will unify the tabs "Tag filter" and "Comments/Tags" with the "Properties" tab -> less GUI clutter. Only three tabs are left - Properties, Metadata and Colors. - "Folder" is not necessary, because we are working with Albums, not folders. - Instead of "Modified" it should show the DB date/time (== EXIF/IPTC date/time) and (optionally) the date/time of digitization. These fields should be editable (upon click). - "Size" is OK. - "Owner" and "Permissions" is irrelevant for photos, unless you want to offer a photo LAN sharing system like Apple's iPhoto does. But that would require digikam to be network capable first. :-) I would be willing to work / help working on this, but first I'd like to know what you think. Thanks! Jens
Created attachment 16777 [details] proposal side bar Hi, Here is a proposal for the new side bar. It's in KDevelop Designer format and just a quick hack (no resizing etc). But it contains tooltips with explanations what all the fields mean and why I think this arrangement is good. The idea is to provide general non-technical information about the image _contents_ first (what is this picture, who did it, where, when, how good is it, etc). After that, the main technical info (taken from EXIF/IPTC tags) is shown, and these should be user-definable in the settings dialog with good defaults. What do you think? Jens
SVN commit 581825 by cgilles: digiKam from trunk : new Setup album item tooltip section to optimize the informations to show over the picture using the pop-up tool tip window. Each item to show can be set in this new setup dialog tab. CCBUGS: 126086 M +8 -8 digikam.kdevelop M +207 -130 digikam/albumfiletip.cpp M +314 -75 digikam/albumsettings.cpp M +64 -16 digikam/albumsettings.h M +2 -1 utilities/setup/Makefile.am M +15 -5 utilities/setup/setup.cpp M +1 -0 utilities/setup/setup.h M +18 -35 utilities/setup/setupgeneral.cpp A utilities/setup/setuptooltip.cpp [License: GPL] A utilities/setup/setuptooltip.h [License: GPL]
*** Bug 145914 has been marked as a duplicate of this bug. ***
Andreas, How i can get a list of Exif, Iptc, and XMP tags supported by Exiv2 ? Gilles
Andreas, I take a look to KPhotoAlbum source code to see how tags list is contructed from Exiv2. KphotoAlbum has a way to customize tags to show in information dialog. Sound like it's not simple : http://lxr.kde.org/source/extragear/graphics/kphotoalbum/Exif/Info.cpp#102 ... especially with makernotes. I dream to see a method which return a structure with all Exiv2 tags registry database entries, including tags name, tags description, and tags type. Gilles Caulier
Gilles, It's not quite that bad. The KPhotoAlbum people just didn't follow up and update their code. Look here: http://dev.exiv2.org/issues/show/564 Andreas
Ok, now it's clear. For makernote, it will be nice to have only one method to get all markernotes tags at the same time. Problem to provide one method by maker is to follow Exiv2 version and add new makers supported. Anyway, i will take a look to your current API and implement a wrapper in libkexiv2 Gilles
Andreas, Exif, Makernotes, and Iptc methods are implemented in libkexiv2 : http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2exif.cpp?r1=985160&r2=995141 http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2exif.cpp?r1=995141&r2=995145 http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2iptc.cpp?r1=980383&r2=995152 For XMP, it's a little bit complicated, because i need to pass prefix namespace name to get all properties relevant: http://www.exiv2.org/doc/classExiv2_1_1XmpProperties.html#e280a62dd2f58da353cdc4dede298103 and there is not method to know all registered prefix in Exiv2... Right ? Gilles
Andreas, Look my first implementation: http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2_p.cpp?r1=995175&r2=995174&pathrev=995175 http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2xmp.cpp?r1=995175&r2=995174&pathrev=995175 Gilles
SVN commit 997792 by cgilles: new widget to config metadata tags to display on EXIF, IPTC, and XMP view It will be used in setupMetadata panel. CCBUGS: 126086 AM metadataselector.cpp [License: GPL (v2+)] AM metadataselector.h [License: GPL (v2+)] WebSVN link: http://websvn.kde.org/?view=rev&revision=997792
On Thursday 16 July 2009 16:13:12 Gilles Caulier wrote: > new widget to config metadata tags to display on EXIF, IPTC, and XMP view > It will be used in setupMetadata panel. > CCBUGS: 126086 > > > AM metadataselector.cpp [License: GPL (v2+)] > AM metadataselector.h [License: GPL (v2+)] This feature rocks! But: From commits to kdegraphics/kexiv2 looks like it will be only available in trunk which will become 4.4 in January 2010 while digiKam 1.0 is planned for September 2009. And when using URL: svn://anonsvn.kde.org/home/kde/branches/KDE/4.3/kdegraphics + digiKam from trunk I get: In file included from /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:24: /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.h:68: error: expected unqualified-id before '&' token /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.h:68: error: expected ',' or '...' before '&' token /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:82: error: expected unqualified-id before '&' token /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:82: error: expected ',' or '...' before '&' token /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp: In member function 'void Digikam::MetadataSelector::setTagsMap()': /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:90: error: 'Digikam::DMetadata::TagsMap' has not been declared /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:90: error: expected `;' before 'it' /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:90: error: 'it' was not declared in this scope /home/mikolaj/kde/src/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp:90: error: 'map' was not declared in this scope make[2]: *** [digikam/digikam/CMakeFiles/digikamcore.dir/__/libs/widgets/metadata/metadataselector.o] Błąd 1 What are plans regarding releases and this feature? TIA m.
I think Mikolaj is quite right, new features added to libkexiv2 need time to get downstream, next major release is 4.4, and features won't go into KDE4.3.0 anymore. So we need ifdefs around this code.
Yes, i just forget to add conditional compilation rules... I will fix it Gilles
SVN commit 997973 by cgilles: fix broken compilation with old KExiv2 CCBUGS: 126086 M +4 -0 metadataselector.cpp M +6 -0 metadataselector.h WebSVN link: http://websvn.kde.org/?view=rev&revision=997973
SVN commit 998593 by cgilles: Implement metadata tags filter settings and rules for metadata viewer from right side bar. In setup metadata dialog page, a new panel is available to set which metadata tags must be displayed in EXIF, Makernotes, Iptc and XMP viewer. This panel list all tags supported by Exiv2. User can search on whole tags collection supported with a search bar to found easily metadata title to select. Buttons can clear selection, select all, or use Human Readable default list of tags. NOTE: you need libkexiv2 from trunk (KDE4.4) to be able to use this feature. TODO : showfoto need the same config panel. CCBUGS: 126086 M +1 -0 CMakeLists.txt M +1 -0 digikam/digikamview.cpp M +1 -1 libs/imageproperties/imagepropertiescolorstab.cpp M +34 -11 libs/imageproperties/imagepropertiesmetadatatab.cpp M +8 -1 libs/imageproperties/imagepropertiesmetadatatab.h M +5 -0 libs/imageproperties/imagepropertiessidebar.cpp M +2 -0 libs/imageproperties/imagepropertiessidebar.h M +6 -1 libs/imageproperties/imagepropertiessidebarcamgui.cpp M +2 -0 libs/imageproperties/imagepropertiessidebarcamgui.h M +12 -11 libs/widgets/iccprofiles/iccprofilewidget.cpp M +4 -37 libs/widgets/metadata/exifwidget.cpp M +1 -2 libs/widgets/metadata/exifwidget.h M +4 -24 libs/widgets/metadata/iptcwidget.cpp M +1 -2 libs/widgets/metadata/iptcwidget.h M +4 -62 libs/widgets/metadata/makernotewidget.cpp M +1 -2 libs/widgets/metadata/makernotewidget.h M +4 -4 libs/widgets/metadata/metadatalistview.cpp AM libs/widgets/metadata/metadatapanel.cpp [License: GPL (v2+)] AM libs/widgets/metadata/metadatapanel.h [License: GPL (v2+)] M +166 -4 libs/widgets/metadata/metadataselector.cpp M +33 -0 libs/widgets/metadata/metadataselector.h M +16 -3 libs/widgets/metadata/metadatawidget.cpp M +4 -1 libs/widgets/metadata/metadatawidget.h M +4 -25 libs/widgets/metadata/xmpwidget.cpp M +1 -2 libs/widgets/metadata/xmpwidget.h M +1 -0 showfoto/showfoto.cpp M +1 -0 utilities/cameragui/cameraui.cpp M +1 -0 utilities/imageeditor/editor/imagewindow.cpp M +1 -0 utilities/lighttable/lighttablewindow.cpp M +51 -33 utilities/setup/setupmetadata.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=998593
SVN commit 998637 by cgilles: Added Metadata Tags filter support to Showfoto BUGS: 126086 M +1 -0 CMakeLists.txt M +16 -0 showfoto/setup/setup.cpp M +1 -0 showfoto/setup/setup.h M +0 -24 showfoto/setup/setupeditor.cpp AM showfoto/setup/setupmetadata.cpp [License: GPL (v2+)] AM showfoto/setup/setupmetadata.h [License: GPL (v2+)] WebSVN link: http://websvn.kde.org/?view=rev&revision=998637
Some screenshots : http://farm3.static.flickr.com/2574/3732089800_b661c3d99c_o.png http://farm3.static.flickr.com/2566/3731291883_cbd2f4ac16_o.png http://farm3.static.flickr.com/2593/3732089964_864bf9c376_o.png http://farm3.static.flickr.com/2646/3732090158_614e5a9eb0_o.png Gilles Caulier