Bug 241847 - Workflow organizing : Possibility to pre-mark images for deletion (Pick Labels feature)
Summary: Workflow organizing : Possibility to pre-mark images for deletion (Pick Label...
Alias: None
Product: digikam
Classification: Applications
Component: Tags-Pick (show other bugs)
Version: 2.0.0
Platform: Unlisted Binaries Linux
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
Depends on:
Reported: 2010-06-15 21:03 UTC by Simon
Modified: 2017-07-30 16:14 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In: 2.0.0


Note You need to log in before you can comment on or make changes to this bug.
Description Simon 2010-06-15 21:03:42 UTC
Version:           0.6.2
OS:                Linux

Wish: Kind of a trashbin symbol for images to mark them and delete them all at once when ready.

Use case: When sorting bad images out I often tag them as «to delete». When I'm done I usually review the images I intend to delete, just to make sure there is no image I unintendedly tagged, perhaps tag some more images. When I feel okay with the images I want to keep I go to the tags view and delete all tagged images.

As this is not a rare scenario (deleting bad images) I propose to add a feature that supports this workflow:
* Pre-mark images for the trashbin
* Highlight the marked images in a special way
* Display all marked images
* Remove mark of marked images
* Delete marked images

Reproducible: Always

OS: Linux (x86_64) release 2.6.34-0.slh.9-sidux-amd64
Compiler: cc
Comment 1 Fri13 2010-06-15 22:12:18 UTC
I can understand the point but I have never liked the idea to tag photos with tag "delete-photo" or similar.

I have found best way to delete bad photos after the rating.
First thing what I do after the import is that I start rating photos. I just simply start from first one and I use space (and shift+space) and CTRL+1 to 5 keys for rating. Ctrl+0 for removing rating (that I have been thinking to be moved to Ctrl+§ key (the one on left of 1) so it would be easier).

The optimal state in photo management is that every photo is at least rated, better if every photo is tagged with even the basic metadata like place or subject (weddings, party, birthday etc). With the date it is easy to find photos and when 0.10 brought better GPS support, it is easy to find location as well (I have mapped Ctrl+G shortcut for it, it is then easy. But not as easy as it will come when you just drop photos to map position).

After I have gone trough all the photos what I just imported, I have photos with different ratings. Example of 700 photos import from the day I would get:

1 rating 300
2 rating 140
3 rating 70
4 rating 35
5 rating 7
0 rating all the rest.

After that I can very easily just right click the rating filter in bottom and select "equals" and when I have no rating set, I only get non-rated photos what are the bad ones.

This way I only get photos what I can actually use some point. The hard part is to learn how to actually give low (1-2) ratings and high (4-5) ratings well. On me, it toke few times to actually learn enough criticism to learn the way. But I keep very basic things in my mind when rating:

1 = subject is sharp or someway it tells something what sharp photos does not

2 = subject is sharp and and photo is good but it has no special happening (people are not smiling, they are not discussing or the "spirit" is is lame) or exposure is littlebit over/under.

3 = subject is sharp, there is somekind action in photos what can be shown to others, exposure is good.

4 = subject is sharp, there is action what is someway special. The composition is good and exposure is correct.

5 = subject is sharp, there is action, the composition is perfect and exposure is perfect.

And after the rating, when the rating filter is set to "equals", you can simply go trough all the ratings from 1 to 5 and check the bottom left corner how many photos did you actually rate with the rating. If there is somekind un-balance like there is 10% rating 1 and 60% rating 5, there is something wrong ;-)

In good management, you get only the 5% of photos with rating 5. They are such what you can show anytime to anyone. With no problems.

The hard part with rating is as well that we can think rating photos just by the case by case. Like every importing session. But even better when we can rate photos keeping mind all the other photos in the collection. So if we select photos from 5 albums where is together the 1500 photos, we get with rating 5 only a 30 photos. That works well if the per-import rating is done with good criticism.

In the end, when you want to show your shots. You can simply set advanced search to pickup only photos of rating 4-5 and then wanted tags/albums/date and you would get very good set of photos what gives you a good start even for editing photos or especially starting a slideshow where the time of the slideshow is about 4-6 minutes. Point is, when the rating is done well, you get rid off the worse photos what you can not use at all. But it works as well the base for all work what later will be done.

The "no-rating" should be tought as the information what says "photo has no merit to exist even on my backups"
Comment 2 Simon 2010-08-21 10:21:31 UTC
Thanks for your answers! I didn't know about Ctrl+Num before yet. This really helped me now. 

Ctrl+§: Would be great, but is it possible to support different keyboard layouts? 

I've rated my photos for some years but then stopped it. I found that it wasn't worth the effort in my case; 1. because I don't diashow my photos and, more important, 2. because I often found myself re-rating pictures because I changed my mind about the importance of the content or just because I became better and didn't like the old pictures anymore.

So I've deleted all pictures with rating 1 (and perhaps soon the ones with 2 as well). And the one-star-rating is my new «not worth keeping» tag.

What I still do is tagging the pictures (or adding a caption) because I can search for text. And delete as many as possible because there are only few I really want to take a look at again later.
Comment 3 caulier.gilles 2011-02-10 20:21:05 UTC
Hi all in this entry.

Following my comment here : 

...i will work on "Pick Label" feature for 2.0.0 release, after to have completed "Color Label" feature.

Gilles Caulier
Comment 4 caulier.gilles 2011-02-10 20:25:26 UTC

For "Pick Label" feature, i plan to do exactly the same thing than for "Color Label", excepted the mark to apply over icon-view. For this, i don't have found the right solution. All suggestions are welcome...

The "Pick Label" is a mark to apply on items to identify which images to reject, to accept, or still in pending validation in the workflow.

Of course, we can use Color Label for this task, but after to have seen a demo of this feature under Aperture, i think it's better to have a dedicated mark for a validation workflow, against Tags, Color Label, or Rating.

Gilles Caulier
Comment 5 Marcel Wiesweg 2011-02-10 20:49:08 UTC
Sounds fine. You are unsure about the graphical representation of this mark in the UI?
Comment 6 caulier.gilles 2011-02-10 22:03:39 UTC

Yes. We need probably another icon view item overlay. But which representation to do do to be explicit...

I will take a look how other program manage this feature in GUI

Comment 7 caulier.gilles 2011-02-11 12:01:36 UTC
Adobe LightRoom "Pick Label" :

From this article : 


...look this screen-shot where "flags" are "Pick Label" :


I don't like this solution to annotate icon-view items, because it's not very visible. A rejected/non-rejected image must be highlighted better.

Gilles Caulier
Comment 8 caulier.gilles 2011-02-11 12:41:16 UTC
Apple Aperture "Pick Label" :

From this article : 


...look this screen-shot where "flags" are also "Pick Label", as LightRoom :


I don't like this solution to annotate icon-view items, which is very similar than LightRoom...

Gilles Caulier
Comment 9 caulier.gilles 2011-02-11 12:45:49 UTC
Apple Aperture "Pick Label" :

From this documentation : 


We can see that Bibble use a similar way than Aperture and Lightroom to apply Pick Label on the left side of rating stars from icon-view.

Again, i don't like this solution : not enough visible...

Gilles Caulier
Comment 10 caulier.gilles 2011-02-14 18:17:42 UTC
Wake up guy... I need you viewpoint here...

I started to implement "Pick Labels" feature. There will 4 pick labels available :

1 Image not tagged with a pick
2 Image rejected (for future deletion)
3 Image in pending validation (typically not yet checked)
4 Image accepted (verified and valided)

On icon view 2/3/4 will show a colored flag (2 => red, 3 => yellow, and 4 => green)

For each value, i need to know the best Keyboard shorcut to use. Here, i need your experience with other photo management programs

Thanks in advance

Gilles Caulier
Comment 11 caulier.gilles 2011-02-15 13:28:45 UTC
Git commit 5bad4b49f67ad9fb8dc3482128737892cb003f5d by Gilles Caulier.
Committed on 15/02/2011 at 13:26.
Pushed by cgilles into branch 'development/2.0'.

register internal pick label tags name
CCBUGS: 241847

M  +22   -2    libs/database/databaseconstants.cpp     
M  +5    -0    libs/database/databaseconstants.h     

Comment 12 caulier.gilles 2011-02-15 13:36:46 UTC
Git commit b95f618ac7e63a24f7e55aa0c6f24893f61580f1 by Gilles Caulier.
Committed on 15/02/2011 at 13:34.
Pushed by cgilles into branch 'development/2.0'.

2 new methods to handle Pick Label information from digiKam XMP namespace
CCBUGS: 241847

M  +55   -0    libs/dmetadata/dmetadata.cpp     
M  +3    -0    libs/dmetadata/dmetadata.h     

Comment 13 caulier.gilles 2011-02-15 14:15:22 UTC
Git commit 2c79ad8156efb20f95cb09b8c003c1ceaa366f92 by Gilles Caulier.
Committed on 15/02/2011 at 14:00.
Pushed by cgilles into branch 'development/2.0'.

register internal Pick Label tags to database
CCBUGS: 241847

M  +34   -10   libs/database/tagscache.cpp     
M  +12   -0    libs/database/tagscache.h     

Comment 14 caulier.gilles 2011-02-15 14:24:22 UTC
Git commit 367a372f720f8a57cee8065275c7db60543a9a1b by Gilles Caulier.
Committed on 15/02/2011 at 14:20.
Pushed by cgilles into branch 'development/2.0'.

manage Pick Label settings from Metadata Config panel

M  +3    -0    libs/dmetadata/metadatasettingscontainer.cpp
M  +1    -0    libs/dmetadata/metadatasettingscontainer.h
M  +10   -0    utilities/setup/setupmetadata.cpp

Comment 15 caulier.gilles 2011-02-15 14:44:13 UTC
Git commit 110e0c0c65478b82983dc6a474ab2f5a8fd4aeae by Gilles Caulier.
Committed on 15/02/2011 at 14:42.
Pushed by cgilles into branch 'development/2.0'.

manage Pick Label into ImageInfo container
CCBUGS: 241847

M  +4    -2    libs/database/databasefields.h     
M  +53   -0    libs/database/imageinfo.cpp     
M  +11   -2    libs/database/imageinfo.h     
M  +6    -0    libs/database/imageinfocache.cpp     
M  +2    -0    libs/database/imageinfodata.h     

Comment 16 caulier.gilles 2011-02-15 15:48:24 UTC
Git commit c75c9eead135cf4fc111c97dd598c808e31abbb4 by Gilles Caulier.
Committed on 15/02/2011 at 15:46.
Pushed by cgilles into branch 'development/2.0'.

show Pick Label icon over icon view items
CCBUGS: 241847

M  +4    -1    digikam/imagedelegate.cpp     
M  +30   -1    libs/widgets/common/itemviewimagedelegate.cpp     
M  +1    -0    libs/widgets/common/itemviewimagedelegate.h     

Comment 17 caulier.gilles 2011-02-15 16:07:31 UTC
Git commit c88a02969316eefd57e7a66bf1cb978fb41cbe5a by Gilles Caulier.
Committed on 15/02/2011 at 16:05.
Pushed by cgilles into branch 'development/2.0'.

metadata hub is able to play with Pick Label info
CCBUGS: 241847

M  +80   -5    digikam/metadatahub.cpp     
M  +20   -3    digikam/metadatahub.h     

Comment 18 caulier.gilles 2011-02-15 16:43:36 UTC
Git commit 8b85b7ccbb1fe362de925efa713362b70ad5494e by Gilles Caulier.
Committed on 15/02/2011 at 16:41.
Pushed by cgilles into branch 'development/2.0'.

Cpation & Tags view is now able to apply Pick Label to items
CCBUGS: 241847

M  +53   -2    libs/imageproperties/imagedescedittab.cpp     
M  +3    -0    libs/imageproperties/imagedescedittab.h     
M  +20   -20   libs/widgets/common/picklabelwidget.cpp     

Comment 19 caulier.gilles 2011-02-15 19:14:46 UTC
Git commit a3b85376c37ffe1c6597ac9b615fcba0d1822674 by Gilles Caulier.
Committed on 15/02/2011 at 19:10.
Pushed by cgilles into branch 'development/2.0'.

Add Pick Label menu entry in all Context menu.
Manage Pick Label Tags Keyboard Shortcuts in manager: Keys are :

ALT+CTRL+0 => No Pick Label Assigned.
ALT+CTRL+1 => Item Rejected.
ALT+CTRL+2 => Item in Pending validation.
ALT+CTRL+3 => Item Accepted and valided.

CCBUGS: 241847

M  +10   -0    digikam/contextmenuhelper.cpp     
M  +15   -0    digikam/contextmenuhelper.h     
M  +14   -0    digikam/digikamimageview.cpp     
M  +2    -0    digikam/digikamimageview.h     
M  +6    -1    digikam/digikamview.cpp     
M  +1    -0    digikam/digikamview.h     
M  +9    -0    digikam/imagepreviewview.cpp     
M  +1    -0    digikam/imagepreviewview.h     
M  +53   -1    digikam/metadatamanager.cpp     
M  +3    -0    digikam/metadatamanager.h     
M  +6    -0    digikam/metadatamanager_p.h     
M  +63   -0    digikam/tags/tagsactionmngr.cpp     
M  +3    -1    digikam/tags/tagsactionmngr.h     
M  +27   -0    utilities/imageeditor/editor/imagewindow.cpp     
M  +2    -0    utilities/imageeditor/editor/imagewindow.h     
M  +42   -0    utilities/lighttable/lighttablebar.cpp     
M  +2    -0    utilities/lighttable/lighttablebar.h     
M  +16   -0    utilities/lighttable/lighttablepreview.cpp     
M  +1    -0    utilities/lighttable/lighttablepreview.h     
M  +5    -0    utilities/lighttable/lighttablewindow.cpp     
M  +1    -0    utilities/lighttable/lighttablewindow.h     

Comment 20 caulier.gilles 2011-02-15 19:23:30 UTC
Git commit 52a729369dbf16a079b17faed7fc91cff137a0f0 by Gilles Caulier.
Committed on 15/02/2011 at 19:20.
Pushed by cgilles into branch 'development/2.0'.

Assign Pick Label when items are scanned
Write Pick Label to file metadata is right option is turn on into First Run Assistant.
CCBUGS: 241847

M  +20   -1    libs/database/imagescanner.cpp     
M  +1    -0    utilities/firstrun/metadatapage.cpp     

Comment 21 caulier.gilles 2011-02-15 19:34:27 UTC
Emile I CC you for info. Pick Label support start to be implmented, and I need feedback. 

Look my previous posts in this file.

Thanks in advance

Gilles Caulier
Comment 22 caulier.gilles 2011-02-15 19:35:22 UTC

Same for you, please take a look to Pick Label feature and give me a feedback

Gilles Caulier
Comment 23 caulier.gilles 2011-02-16 09:55:11 UTC
Git commit 042fb4b0acc9faf29742202062115f4377ce9a6f by Gilles Caulier.
Committed on 16/02/2011 at 09:53.
Pushed by cgilles into branch 'development/2.0'.

Show Pick Label Information into image properties view
CCBUGS: 241847

M  +1    -0    libs/imageproperties/imagepropertiessidebardb.cpp     
M  +24   -20   libs/imageproperties/imagepropertiestab.cpp     
M  +1    -0    libs/imageproperties/imagepropertiestab.h     

Comment 24 caulier.gilles 2011-02-16 10:34:11 UTC
Git commit 5b018944b75baed21f770d1f41cfedbcd0f687b7 by Gilles Caulier.
Committed on 16/02/2011 at 10:32.
Pushed by cgilles into branch 'development/2.0'.

Show Pick Label in item tooltip.
CCBUGS: 241847

M  +5    -3    digikam/tooltipfiller.cpp     
M  +7    -7    utilities/setup/setuptooltip.cpp     

Comment 25 caulier.gilles 2011-02-16 12:00:06 UTC
Git commit 9bbc1a9755369fa276b7c2c0fdf80e251babb63a by Gilles Caulier.
Committed on 16/02/2011 at 11:57.
Pushed by cgilles into branch 'development/2.0'.

Pick Label icon-biew filter is implemented and fully suitable.

CCBUGS: 241847

M  +5    -0    digikam/albumiconviewfilter.cpp     
M  +2    -2    digikam/digikamview.cpp     
M  +36   -5    digikam/tagfiltersidebarwidget.cpp     
M  +6    -4    digikam/tagfiltersidebarwidget.h     
M  +2    -2    libs/models/imagefiltermodel.cpp     
M  +1    -1    libs/models/imagefiltermodel.h     
M  +35   -5    libs/models/imagefiltersettings.cpp     
M  +5    -2    libs/models/imagefiltersettings.h     

Comment 26 caulier.gilles 2011-02-16 12:00:06 UTC
Git commit 2c8cc82feff3324c4efdffc8b6c07697da96c820 by Gilles Caulier.
Committed on 16/02/2011 at 11:19.
Pushed by cgilles into branch 'development/2.0'.

add new widget to filter by Pick Label
CCBUGS: 241847

M  +5    -2    CMakeLists.txt     
A  +81   -0    digikam/tags/picklabelfilter.cpp         [License: GPL (v2+)]
A  +65   -0    digikam/tags/picklabelfilter.h         [License: GPL (v2+)]

Comment 27 caulier.gilles 2011-02-16 12:59:09 UTC
Git commit 91a71c0e48780b572ea0c8320c96af6d1a9e8f90 by Gilles Caulier.
Committed on 16/02/2011 at 12:49.
Pushed by cgilles into branch 'development/2.0'.

Move Rating filter from statusbar to Tags Filter view from right sidebar.
As Rating is considerated as a Labels (like Pick or Color), it need to be moved near Pick/Color Label filters.

Note that i plan to move all filters from status bar to right Sidebar and rename "Tag Filters" as "Filters", and to add
2 buttons on status bar :
"Reset" to clean all active filters
"Settings" (or something like that) to switch on "Filters" panel from right sidebar.

The advantage to use "Filters" panel from right side bar is to be able to host more filters in the future.
Status bar is limited in space to host more settings. There are a lots of whishes about this subject in bugzilla.

CCBUGS: 241847

M  +6    -32   digikam/albumiconviewfilter.cpp     
M  +2    -5    digikam/albumiconviewfilter.h     
M  +0    -6    digikam/digikamapp.cpp     
M  +5    -5    digikam/digikamview.cpp     
M  +18   -2    digikam/tagfiltersidebarwidget.cpp     
M  +5    -2    digikam/tagfiltersidebarwidget.h     
M  +1    -0    digikam/tags/colorlabelfilter.cpp     
M  +1    -0    digikam/tags/picklabelfilter.cpp     
M  +7    -7    libs/imageproperties/imagedescedittab.cpp     
M  +12   -2    libs/models/imagefiltersettings.cpp     
M  +3    -1    libs/models/imagefiltersettings.h     

Comment 28 caulier.gilles 2011-02-16 14:52:49 UTC
Git commit 3b5292497bb81a7e6b7153d5c8c046791bce54c8 by Gilles Caulier.
Committed on 16/02/2011 at 14:49.
Pushed by cgilles into branch 'development/2.0'.

Implement fully suitable Pick Labels Search option in Advanced Search tool.
Marcel, look my comment into SearchFieldAlbum::read() method about to ignore internal tags with Tags search widget.
BUGS: 241847

M  +4    -2    digikam/tagfiltersidebarwidget.cpp     
M  +6    -6    libs/database/tagscache.cpp     
M  +4    -4    libs/database/tagscache.h     
M  +58   -24   utilities/searchwindow/searchfields.cpp     
M  +4    -2    utilities/searchwindow/searchfields.h     
M  +1    -1    utilities/searchwindow/searchgroup.cpp     

Comment 29 Julien Narboux 2011-02-18 13:13:12 UTC

Sorry for not giving feedback earlier I am very busy these days and I have digikam git version only on one of my computers.
Your implementation of color labels and pick labels is very nice. I like the choice of the colors and the icons. I think the widget to assign labels and to filter labels are very nice. I like the fact that you can easily see the shortcuts for color labels and pick labels in the context menu.

Small bugs:

1/The shortcuts for stars are missing in the context menu.

2/In preview mode, using the context menu if you try to assign a pick label you get a color label instead. If you use the context menu of the thumbnail view or the sidebar it works fine.

3/In the context menu, in the recently assigned tags menu you can see the color labels and pick labels; I think it should not be the case.

Comment 30 caulier.gilles 2011-02-18 13:30:47 UTC
Thanks Julien to review my code...

1/ The shortcuts appears when you click on start. Yes it's a little bit different than color/Pick Labels behavior...

2/ fixed with commit 

3/ Right. It must ignore internal DB tags.

Please take a look to:

1/ album icon view Filters where Pick and Color Labels have been added.
2/ Advanced Search tool where Pick and Color Labels have been added.

Gilles Caulier
Comment 31 caulier.gilles 2011-02-18 14:04:37 UTC

3/ is fixed with this commit :

Gilles Caulier