Implementation Regarding Rejection of Unconfirmed Suggestions

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Implementation Regarding Rejection of Unconfirmed Suggestions

kartikx
Hello everyone,

I would like to discuss about implementation regarding the Assign Name Overlay. The problem is that the Red colored reject button of the Assign Name Widget, currently performs the same function as the Reject Overlay. I discussed in my proposal how it would be better to instead assign the Red Colored Button to "reject" the suggestion, and move the face to Unknown.

Setting aside the connections between the various widgets, I would like to discuss how this rejection of suggestion can actually be carried out. Rejection of suggestion, is essentially a Tag Change operation, where we change the Unconfirmed Property of the Tag to Unknown.

At the top level, DigikamItemView uses FacePipeline (d->editPipeline) to perform Confirm and Reject operation, based on the signal emitted by the Overlay. However Database Writer does not currently support Changing Tag Id, as is mentioned in a comment in DatabaseWriter::process().

I believe writing an implementation in FaceTagsEditor, to perform change in tagID, and then plugging this in DatabaseWriter::process() can be a possible approach.

Please let me know, if this is appropriate.

Regards
Kartik
Reply | Threaded
Open this post in threaded view
|

Re: Implementation Regarding Rejection of Unconfirmed Suggestions

Gilles Caulier-4
Le mer. 6 mai 2020 à 19:00, Kartik Ramesh <[hidden email]> a écrit :

>
> Hello everyone,
>
> I would like to discuss about implementation regarding the Assign Name Overlay. The problem is that the Red colored reject button of the Assign Name Widget, currently performs the same function as the Reject Overlay. I discussed in my proposal how it would be better to instead assign the Red Colored Button to "reject" the suggestion, and move the face to Unknown.
>
> Setting aside the connections between the various widgets, I would like to discuss how this rejection of suggestion can actually be carried out. Rejection of suggestion, is essentially a Tag Change operation, where we change the Unconfirmed Property of the Tag to Unknown.
>
> At the top level, DigikamItemView uses FacePipeline (d->editPipeline) to perform Confirm and Reject operation, based on the signal emitted by the Overlay. However Database Writer does not currently support Changing Tag Id, as is mentioned in a comment in DatabaseWriter::process().
>
> I believe writing an implementation in FaceTagsEditor, to perform change in tagID, and then plugging this in DatabaseWriter::process() can be a possible approach.
>
> Please let me know, if this is appropriate.
>

hi,

yes, the FaceTagsEditor sound the right place to process this kind of
operation on Tag ID changes...

But don't forget the FaceTagIface interface to play with face tags on database :

https://invent.kde.org/kde/digikam/-/blob/master/core/libs/database/tags/facetagsiface.h

Just check if there is no changes to apply on this class too..

Best

Gilles Caulier
Reply | Threaded
Open this post in threaded view
|

Re: Implementation Regarding Rejection of Unconfirmed Suggestions

kartikx
Hello Gilles,

I've been able to write the implementations. It compiles properly, and the Overlay works as expected. I did not have to make any changes to FaceTagsIface however.
Also, I have been provided with a KDE developer account, so please let me know when the GSoC 2020 DigiKam branch has been created.

Thanks
Kartik
Reply | Threaded
Open this post in threaded view
|

Re: Implementation Regarding Rejection of Unconfirmed Suggestions

Gilles Caulier-4
Le jeu. 7 mai 2020 à 09:51, Kartik Ramesh <[hidden email]> a écrit :
>
> Hello Gilles,
>
> I've been able to write the implementations. It compiles properly, and the Overlay works as expected. I did not have to make any changes to FaceTagsIface however.
> Also, I have been provided with a KDE developer account, so please let me know when the GSoC 2020 DigiKam branch has been created.

Thanh will create expected branches for students, based on master.
This will done soon.

Of course branches must be sync in time to still compatible with
master and later the event sync back for beta stages testing in
September...

Sync branch with git is not too much complicated. It's explained in
API doc devel section.

Best
Gilles
Reply | Threaded
Open this post in threaded view
|

Re: Implementation Regarding Rejection of Unconfirmed Suggestions

Thanh Trung Dinh

On Thu, May 7, 2020 at 10:20 AM Gilles Caulier <[hidden email]> wrote:
Le jeu. 7 mai 2020 à 09:51, Kartik Ramesh <[hidden email]> a écrit :
>
> Hello Gilles,
>
> I've been able to write the implementations. It compiles properly, and the Overlay works as expected. I did not have to make any changes to FaceTagsIface however.
> Also, I have been provided with a KDE developer account, so please let me know when the GSoC 2020 DigiKam branch has been created.

Thanh will create expected branches for students, based on master.
This will done soon.

Of course branches must be sync in time to still compatible with
master and later the event sync back for beta stages testing in
September...

Sync branch with git is not too much complicated. It's explained in
API doc devel section.

Best
Gilles


--
Mr. Thanh-Trung Dinh
Université de Technologie de Compiègne (UTC) - France
Tel: +33 7 53 68 20 29