Your IP : 216.73.216.48
| Current Path : /usr/include/nepomuk2/ |
|
|
| Current File : //usr/include/nepomuk2/filemetadatawidget.h |
/*
<one line to give the library's name and an idea of what it does.>
Copyright (C) 2012 Vishesh Handa <me@vhanda.in>
Adapated from KFileMetadataWidget
Copyright (C) 2008 by Sebastian Trueg <trueg@kde.org>
Copyright (C) 2009-2010 by Peter Penz <peter.penz@gmx.at>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef _NEPOMUK2_FILE_METADATAWIDGET_H
#define _NEPOMUK2_FILE_METADATAWIDGET_H
#include <QWidget>
#include <KFileItem>
#include <KUrl>
#include "nepomukwidgets_export.h"
namespace Nepomuk2 {
class NEPOMUKWIDGETS_EXPORT FileMetaDataWidget : public QWidget
{
Q_OBJECT
Q_PROPERTY(bool readOnly READ isReadOnly WRITE setReadOnly)
public:
explicit FileMetaDataWidget(QWidget* parent = 0);
virtual ~FileMetaDataWidget();
/**
* Sets the items for which the meta data should be shown.
* The signal metaDataRequestFinished() will be emitted,
* as soon as the meta data for the items has been received.
*/
void setItems(const KFileItemList& items);
KFileItemList items() const;
/**
* If set to true, data such as the comment, tag or rating cannot be
* changed by the user. Per default read-only is disabled.
*/
void setReadOnly(bool readOnly);
bool isReadOnly() const;
/** @see QWidget::sizeHint() */
virtual QSize sizeHint() const;
Q_SIGNALS:
/**
* Is emitted, if a meta data represents an URL that has
* been clicked by the user.
*/
void urlActivated(const KUrl& url);
/**
* Is emitted after the meta data has been received for the items
* set by KFileMetaDataWidget::setItems().
* @since 4.6
*/
void metaDataRequestFinished(const KFileItemList& items);
private:
class Private;
Private* d;
Q_PRIVATE_SLOT(d, void slotLoadingFinished())
Q_PRIVATE_SLOT(d, void slotLinkActivated(QString))
Q_PRIVATE_SLOT(d, void slotDataChangeStarted())
Q_PRIVATE_SLOT(d, void slotDataChangeFinished())
};
}
#endif // _NEPOMUK2_FILE_METADATAWIDGET_H