/usr/include/libmediawiki/queryimageinfo.h is in libmediawiki-dev 1.0~digikam3.5.0-0ubuntu10.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 | /** ===========================================================
* @file
*
* This file is a part of KDE project
* <a href="https://projects.kde.org/projects/extragear/libs/libmediawiki">libmediawiki</a>
*
* @date 2011-03-22
* @brief a MediaWiki C++ interface for KDE
*
* @author Copyright (C) 2011-2012 by Gilles Caulier
* <a href="mailto:caulier dot gilles at gmail dot com">caulier dot gilles at gmail dot com</a>
* @author Copyright (C) 2010 by Ludovic Delfau
* <a href="mailto:ludovicdelfau at gmail dot com">ludovicdelfau at gmail dot com</a>
*
* This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
* Public License as published by the Free Software Foundation;
* either version 2, or (at your option)
* any later version.
*
* This program 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 General Public License for more details.
*
* ============================================================ */
#ifndef MEDIAWIKI_QUERYIMAGEINFO_H
#define MEDIAWIKI_QUERYIMAGEINFO_H
// Qt includes
#include <QtCore/QList>
// Local includes
#include "imageinfo.h"
#include "job.h"
#include "mediawiki_export.h"
namespace mediawiki
{
class MediaWiki;
class QueryImageinfoPrivate;
/**
* @brief Query image info job.
*
* Gets image information for an image.
*/
class MEDIAWIKI_EXPORT QueryImageinfo : public Job
{
Q_OBJECT
Q_DECLARE_PRIVATE(QueryImageinfo)
public:
/**
* @brief Property.
*/
enum Property
{
Timestamp = 0x01,
User = 0x02,
Comment = 0x04,
Url = 0x08,
Size = 0x10,
Sha1 = 0x20,
Mime = 0x40,
Metadata = 0x80
};
Q_DECLARE_FLAGS(Properties, Property)
public:
/**
* @brief Constructs a query image info job.
*
* You can set parameters of the query after.
*
* By default, a single image info is returned.
*
* @param mediawiki the mediawiki concerned by the job
* @param parent the QObject parent
*/
explicit QueryImageinfo(MediaWiki& mediawiki, QObject* const parent = 0);
/**
* @brief Destructs a query image info job.
*/
virtual ~QueryImageinfo();
/**
* @brief Set the title of the image requested.
* @param title the title of the image requested
*/
void setTitle(const QString& title);
/**
* @brief Set which properties to get.
* @param properties properties to get
*/
void setProperties(Properties properties);
/**
* @brief Set how many image info to return per signal.
* @param limit how many image info to return per signal
*/
void setLimit(unsigned int limit);
/**
* @brief If true stop the request to the first signal.
* @param onlyOneSignal if true stop the request to the first signal
*/
void setOnlyOneSignal(bool onlyOneSignal);
/**
* @brief Set timestamp to start listing from.
* @param begin timestamp to start listing from
*/
void setBeginTimestamp(const QDateTime& begin);
/**
* @brief Set timestamp to stop listing at.
* @param end timestamp to stop listing at
*/
void setEndTimestamp(const QDateTime& end);
/**
* @brief Set width scale.
*
* Only for the first image info. The property URL must be set.
*
* @param width width scale
*/
void setWidthScale(unsigned int width);
/**
* @brief Set height scale.
*
* Only for the first image info. The property URL must be set.
*
* @param height height scale
*/
void setHeightScale(unsigned int height);
/**
* @brief Starts the job asynchronously.
*/
virtual void start();
Q_SIGNALS:
/**
* @brief Provides a list of imageinfos.
* @param imageinfos a list of imageinfos
*/
void result(const QList<Imageinfo>& imageinfos);
private Q_SLOTS:
void doWorkSendRequest();
void doWorkProcessReply();
};
Q_DECLARE_OPERATORS_FOR_FLAGS(QueryImageinfo::Properties)
} // namespace mediawiki
#endif // MEDIAWIKI_QUERYIMAGEINFO_H
|