[Digikam-devel] [Bug 218824] New: Allow state of the tag tree to be saved

DGardner dkde at gardnersworld.org
Tue Dec 15 18:45:15 GMT 2009


https://bugs.kde.org/show_bug.cgi?id=218824

           Summary: Allow state of the tag tree to be saved
           Product: digikam
           Version: unspecified
          Platform: Ubuntu Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: wishlist
          Priority: NOR
         Component: general
        AssignedTo: digikam-devel at kde.org
        ReportedBy: dkde at gardnersworld.org


Version:           1.0.0-rc1 (using KDE 4.3.4)
OS:                Linux
Installed from:    Ubuntu Packages

I'd like to be able to save the expansion state of the tag tree in the
"Captions/Tags" view. I'd like to give the saved state a name for later
retrieval and store as many saved states as I want. The use case is as
follows:

When I upload a set of photographs and begin tagging them, I first expand
the tag tree (where I have about 400 tags) to expose the tags that I am
likely to use for that set of photographs. This would be much easier if
I could expand the tree to one of a number of saved states for photos
with common subject matter.

For example, if I have some photos taken at a family occasion, I would
normally expand the "Places/..." tags to show the places where members
of my family live. I would also expand the "People/Family/..." tags to
show the members of my (slightly extended) family. I want to expand
these tags and then have the option to save this tag tree state under
the name "Family Occasion". If I had been to the zoo, I might want a
different state named "Zoo Visit" where I expand the "Places/..." tags
for the local zoo and also the "Things/Animals/..." tags. Now, when I
upload a new set of images, I can either set the tree state manually,
or just select an option to restore a previously saved state.

It might also be possible to allow tags (or other items) to be omitted
from a state by allowing items to be hidden and to have the hidden
state recorded along with the expansion state. For example, when I
tag photos, I generally don't want to see "Places/Germany" or
"Places/Spain", as I only needed those tags for photos from I took on
holidays and might not have any new photos that need those tags for
quite some time. While I want to see these when filtering or searching
by tags, I do not (usually) want to see them when setting tags. I could
right-click on a tag and select "Hide" or "Hide Children" to remove them
from the tree and also right-click on a tag to "Show Children" or
"Show All" if I want them back. That would allow me to have a nice,
compact tag tree when tagging common sets of images.

To avoid clutter, it might be easiest if the whole thing was managed by
context menus. To avoid cluttering the menus, there would be a single
"View State" (or "Expansion State") option that expands as follows:

  View State ->
     Save As...
     Expand ->
        One
        All
        Children
        Descendants
     Collapse ->
        One
        All
        Children
        Descendants
     Hide ->
        One
        All
        Children
     Show ->
        All
        Children
        Descendants
     ----------
     Family Occasion ->
       Restore
       Save
       Delete
     Zoo Visit ->
       Restore
       Save
       Delete

Selecting "Save As..." would allow a new state name to be entered in a
dialog box. It would then appear in the menu.

Selecting "Expand" or "Collapse" would change the expansion state of
the tree. "One" would change the state of the selected item (the one
on which the RMB was pressed). "All" would change all nodes in the
tree. "Children" would change only the children of the current node.
"Descendants" would change all children and their children, as so on.

The "Hide" option would remove the item from the visible tree (it would
still exist) and the "Show" option would make items visible again. As
a hidden item cannot be selected, there is no "Show -> One" option.
Similarly, I cannot think of a use case for "Hide -> Descendants". A
line could be shown in the tree view to represent the position of hidden
tags, just to remind users that tags are hidden. There might also be an
option to temporarily show all tags, with the hidden ones in a different
colour while this temporary view is active.

Selecting an existing state name (they would be sorted alphabetically)
would open a further menu to allow that state to be restored, saved
(overwritten by the current state) or deleted. The latter two would be
subject to confirmation. The active state could be shown using a tick
mark beside its name. There would be no need to show its name in the
tree view or status bar.

DigiKam has lots of trees for albums, calendars, tag filters, tag
searches, tag setting, etc. The option to save the state of a tree
under a given name for later restoration could be applied to all of
these trees.

How hard can it be?

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the Digikam-devel mailing list