[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