[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: Review Request: Add KMetaDataWidget,
From: "Peter Penz" <peter.penz () gmx ! at>
Date: 2010-03-22 22:24:39
Message-ID: 20100322222439.19745.66355 () localhost
[Download RAW message or body]
> On 2010-03-21 16:29:31, Aurélien Gâteau wrote:
> > I didn't look at individual lines closely as others have already did so. I think there was \
> > a misunderstanding regarding my suggestion on the initial request (as far as I remember \
> > what I suggested...). I think i suggested it would be more useful to have a widget to \
> > display a set of properties, but what I meant was that these properties do not have to be \
> > properties of a file. One could imagine for example a calendar showing the properties of a \
> > meeting. Since KMetaDataWidget is tied to files, I agree KMetaDataModel can be made \
> > private, at least for now. I must confess I also agree with Christopher about the name \
> > being a bit confusing. Even if, as Peter says "Qt has no ownership on the MVC pattern", I \
> > think Qt users have come to expect that classes suffixed with "Model" inherits from \
> > QAbstractItemModel or a subclass of it, in the same way that classes suffixed with "Widget" \
> > are expected to inherit from QWidget.
> > One question though: I don't see the connection between KMetaDataWidget and \
> > KMetaDataConfigurationDialog. When does one create such a dialog? How does one link it to \
> > KMetaDataWidget?
>
> Peter Penz wrote:
> As KMetaDataModel is a private API now, it won't be a problem to rename it. I'm open for any \
> suggestions, I somehow would like the name KMetaDataProvider as Christoph said... What do you \
> think?
> Regarding KMetaDataWidget and KMetaDataConfigurationDialog: You can take Dolphin as example. \
> If you right click on the Information Panel and select "Configure...", you can configure \
> which of the meta data for the currently shown file type should be shown at all. IMO this \
> should not be possible only within Dolphin, but also in other applications that might use \
> this widget.
>
>
> Aurélien Gâteau wrote:
> KMetaDataProvider sounds good.
>
> About the dialog: what I was wondering was how was the developer supposed to "link" the \
> dialog and the widget. Looking at the code I realized they communicate via the "Nepomuk \
> KMetaDataConfigDialog" configuration group. Should the group be hardcoded? I don't really \
> know. Are there other places in kdelibs with hardcoded config groups like this?
> Sebastian Trueg wrote:
> I think I have to agree with Aurelien as far as the widget is concerned. Why don't we call it \
> KFileMetaDataWidget to keep the possibility open to add a generic KMetaDataWidget later which \
> could then internally be used by the former.
> About the dialog: I don't think a dialog is the best way to go. Other apps might want to \
> embed the config in some other place. So ideally at some point we would have a data model and \
> a filter model which has configuration methods to hide/show specific information bits. Since \
> the model is not public yet I also vote to hide the dialog/config for now. Then we figure out \
> how to configure the model. I know that this is taking the easy way out but as this is \
> already the second attempt at getting the class into kdelibs it could make sense to do it \
> step by step.
> Peter Penz wrote:
> OK, I'll rename the widget to KFileMetaDataWidget. Regarding the dialog: The only thing I can \
> do is adding a @internal to the complete class, but it is not possible for me to move the \
> dialog from kdelibs to Dolphin, as the meta data model from kdelibs is private. Would this (= \
> adding an @internal to the class) be acceptable?
> If possible it would be great having an answer until today 0:00, so that I don't have to wait \
> another week for the commit. Thanks!
> Aurélien Gâteau wrote:
> About the dialog: maybe you can turn it into a widget? This way applications can embed it in \
> a configuration dialog.
Good idea :-) I just committed the patch and turned the configuration dialog into a widget -> \
the interface is now very minimal and might be a good base to get a public API later.
- Peter
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/3277/#review4590
-----------------------------------------------------------
On 2010-03-22 18:02:40, Peter Penz wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/3277/
> -----------------------------------------------------------
>
> (Updated 2010-03-22 18:02:40)
>
>
> Review request for kdelibs, Sebastian Trueg, David Faure, and Aurélien Gâteau.
>
>
> Summary
> -------
>
> The patch adds KMetaDataWidget, KMetaDataModel and KMetaDataConfigurationDialog as public \
> classes to kdelibs/kfile. The KMetaDataWidget allows an application in an easy way to show \
> meta data of a file (or several files). The widget also allows to change meta data like tags, \
> comments and rating (see http://enzosworld.gmxhome.de/temp/metadatawidget.png or attached \
> screenshot). KMetaDataConfigurationDialog allows to configure which meta tags should be \
> hidden/shown. The classes also work without Nepomuk (and show only very basic meta data like \
> size, permissions, ...). It is possible for applications to add custom meta data if wanted \
> (including widgets to manipulate this meta data).
> The classes have been used by Dolphin internally until now and have originally been written \
> by Sebastian Trüg. After the request from Tom Albers and Oliver Heidbüchel to integrate the \
> widget also in Mailody/Okular I've adjusted the classes to get them ready for a \
> kdelibs-integration. I'd also like to to adjust KPropertiesDialog later to use this widget.
> I'd ask mainly to look at the files kfile/kmetadatawidget.h, kfile/kmetadatamodel.h and \
> kfile/kmetadataconfigurationdialog.h, the other APIs are internal.
> Thanks!
>
>
> Diffs
> -----
>
> trunk/KDE/kdelibs/CMakeLists.txt 1106199
> trunk/KDE/kdelibs/config-nepomuk.h.cmake PRE-CREATION
> trunk/KDE/kdelibs/kfile/CMakeLists.txt 1106199
> trunk/KDE/kdelibs/kfile/kcommentwidget.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kcommentwidget_p.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/kedittagsdialog.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kedittagsdialog_p.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadataconfigurationdialog.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadataconfigurationdialog.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadataprovider.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadataprovider_p.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadatawidget.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/kfilemetadatawidget.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kloadfilemetadatathread.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/kloadfilemetadatathread_p.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/knfotranslator.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/knfotranslator_p.h PRE-CREATION
> trunk/KDE/kdelibs/kfile/ktaggingwidget.cpp PRE-CREATION
> trunk/KDE/kdelibs/kfile/ktaggingwidget_p.h PRE-CREATION
> trunk/KDE/kdelibs/nepomuk/core/ui/CMakeLists.txt 1106199
> trunk/KDE/kdelibs/nepomuk/core/ui/nepomukmassupdatejob.h 1106199
> trunk/KDE/kdelibs/nepomuk/core/ui/nepomukmassupdatejob.cpp 1106199
>
> Diff: http://reviewboard.kde.org/r/3277/diff
>
>
> Testing
> -------
>
> Tested in Dolphin. An early version has been tested also in Mailody and Okular.
>
>
> Screenshots
> -----------
>
> KMetaDataWidget
> http://reviewboard.kde.org/r/3277/s/330/
>
>
> Thanks,
>
> Peter
>
>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic