mirror of
https://bitbucket.org/smil3y/kdelibs.git
synced 2025-02-24 02:42:48 +00:00
kimgio: take the format as hint only and probe the device if format does not match
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
parent
2ce7ac3843
commit
cd7d01a484
5 changed files with 37 additions and 43 deletions
|
@ -300,17 +300,16 @@ QList<QByteArray> ICOPlugin::mimeTypes() const
|
||||||
|
|
||||||
QImageIOPlugin::Capabilities ICOPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
QImageIOPlugin::Capabilities ICOPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||||
{
|
{
|
||||||
if (format == s_icopluginformat)
|
if (format == s_icopluginformat) {
|
||||||
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
if (!format.isEmpty())
|
}
|
||||||
|
if (!device || !device->isOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
if (!device->isOpen())
|
}
|
||||||
return 0;
|
if (device->isReadable() && ICOHandler::canRead(device)) {
|
||||||
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
QImageIOPlugin::Capabilities cap;
|
}
|
||||||
if (device->isReadable() && ICOHandler::canRead(device))
|
return 0;
|
||||||
cap |= QImageIOPlugin::CanRead;
|
|
||||||
return cap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QImageIOHandler *ICOPlugin::create(QIODevice *device, const QByteArray &format) const
|
QImageIOHandler *ICOPlugin::create(QIODevice *device, const QByteArray &format) const
|
||||||
|
|
|
@ -305,15 +305,16 @@ QList<QByteArray> JP2Plugin::mimeTypes() const
|
||||||
|
|
||||||
QImageIOPlugin::Capabilities JP2Plugin::capabilities(QIODevice *device, const QByteArray &format) const
|
QImageIOPlugin::Capabilities JP2Plugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||||
{
|
{
|
||||||
if (format == s_jp2pluginformat)
|
if (format == s_jp2pluginformat) {
|
||||||
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
if (!device->isOpen())
|
}
|
||||||
|
if (!device || !device->isOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
|
}
|
||||||
QImageIOPlugin::Capabilities cap;
|
if (device->isReadable() && JP2Handler::canRead(device)) {
|
||||||
if (device->isReadable() && JP2Handler::canRead(device))
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
cap |= QImageIOPlugin::CanRead;
|
}
|
||||||
return cap;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
QImageIOHandler *JP2Plugin::create(QIODevice *device, const QByteArray &format) const
|
QImageIOHandler *JP2Plugin::create(QIODevice *device, const QByteArray &format) const
|
||||||
|
|
|
@ -183,17 +183,16 @@ QList<QByteArray> JPEGPlugin::mimeTypes() const
|
||||||
|
|
||||||
QImageIOPlugin::Capabilities JPEGPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
QImageIOPlugin::Capabilities JPEGPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||||
{
|
{
|
||||||
if (format == s_jpegpluginformat)
|
if (format == s_jpegpluginformat) {
|
||||||
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
if (!format.isEmpty())
|
}
|
||||||
|
if (!device || !device->isOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
if (!device->isOpen())
|
}
|
||||||
return 0;
|
if (device->isReadable() && JPEGHandler::canRead(device)) {
|
||||||
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
QImageIOPlugin::Capabilities cap;
|
}
|
||||||
if (device->isReadable() && JPEGHandler::canRead(device))
|
return 0;
|
||||||
cap |= QImageIOPlugin::CanRead;
|
|
||||||
return cap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QImageIOHandler *JPEGPlugin::create(QIODevice *device, const QByteArray &format) const
|
QImageIOHandler *JPEGPlugin::create(QIODevice *device, const QByteArray &format) const
|
||||||
|
|
|
@ -186,17 +186,16 @@ QList<QByteArray> RAWPlugin::mimeTypes() const
|
||||||
|
|
||||||
QImageIOPlugin::Capabilities RAWPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
QImageIOPlugin::Capabilities RAWPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||||
{
|
{
|
||||||
if (format == s_rawpluginformat)
|
if (format == s_rawpluginformat) {
|
||||||
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
if (!format.isEmpty())
|
}
|
||||||
|
if (!device || !device->isOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
if (!device->isOpen())
|
}
|
||||||
return 0;
|
if (device->isReadable() && RAWHandler::canRead(device)) {
|
||||||
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead);
|
||||||
QImageIOPlugin::Capabilities cap;
|
}
|
||||||
if (device->isReadable() && RAWHandler::canRead(device))
|
return 0;
|
||||||
cap |= QImageIOPlugin::CanRead;
|
|
||||||
return cap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QImageIOHandler *RAWPlugin::create(QIODevice *device, const QByteArray &format) const
|
QImageIOHandler *RAWPlugin::create(QIODevice *device, const QByteArray &format) const
|
||||||
|
|
|
@ -203,21 +203,17 @@ QList<QByteArray> WebPPlugin::mimeTypes() const
|
||||||
QImageIOPlugin::Capabilities WebPPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
QImageIOPlugin::Capabilities WebPPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||||
{
|
{
|
||||||
if (format == "webp") {
|
if (format == "webp") {
|
||||||
return Capabilities(CanRead | CanWrite);
|
return QImageIOPlugin::Capabilities(QImageIOPlugin::CanRead | QImageIOPlugin::CanWrite);
|
||||||
}
|
}
|
||||||
if (!format.isEmpty()) {
|
if (!device || !device->isOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (!device->isOpen()) {
|
QImageIOPlugin::Capabilities cap;
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Capabilities cap;
|
|
||||||
if (device->isReadable() && WebPHandler::canRead(device)) {
|
if (device->isReadable() && WebPHandler::canRead(device)) {
|
||||||
cap |= CanRead;
|
cap |= QImageIOPlugin::CanRead;
|
||||||
}
|
}
|
||||||
if (device->isWritable()) {
|
if (device->isWritable()) {
|
||||||
cap |= CanWrite;
|
cap |= QImageIOPlugin::CanWrite;
|
||||||
}
|
}
|
||||||
return cap;
|
return cap;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue