mirror of
https://bitbucket.org/smil3y/kdelibs.git
synced 2025-02-23 18:32:49 +00:00

because it returns only one (definitive) format type using QStringList as return type makes no sense, also a mode argument is very much required to return correct result - not all image format plugins support writing Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
86 lines
2.7 KiB
C++
86 lines
2.7 KiB
C++
/*
|
|
* kimageio.h -- Declaration of interface to the KDE Image IO library.
|
|
* Copyright (c) 1998 Sirtaj Singh Kang <taj@kde.org>
|
|
*
|
|
* This library is distributed under the conditions of the GNU LGPL.
|
|
*/
|
|
|
|
#ifndef KIMAGEIO_H
|
|
#define KIMAGEIO_H
|
|
|
|
#include <QtCore/QStringList>
|
|
|
|
#include <kdeui_export.h>
|
|
|
|
/**
|
|
* Methods to get information about image format names and
|
|
* the corresponding mime type. Also, you can get information about supported
|
|
* image types without loading all the imageformat plugins.
|
|
*
|
|
* The image processing backends are written as image handlers compatible
|
|
* with the QImageIOHandler format. The backends are Katie imageformat plugins.
|
|
* Each format can be identified by a unique type id string.
|
|
*
|
|
* \b Formats:
|
|
*
|
|
* Currently supported formats include:
|
|
* @li WEBP \<read\> \<write\>
|
|
* @li JPEG \<read\> \<write\>
|
|
* @li ICO \<read\> \<write\>
|
|
* @li JP2 \<read\>
|
|
* @li RAW \<read\>
|
|
* @li TIFF \<read\>
|
|
*/
|
|
namespace KImageIO
|
|
{
|
|
/**
|
|
* Possible image file access modes.
|
|
*
|
|
* Used in various KImageIO static function.
|
|
**/
|
|
enum Mode { Reading, Writing };
|
|
|
|
/**
|
|
* Returns a list of patterns of all KImageIO supported formats.
|
|
*
|
|
* These patterns can be passed to KFileDialog::getOpenFileName() or
|
|
* KFileDialog::getSaveFileName(), for example.
|
|
*
|
|
* @param mode Tells whether to retrieve modes that can be read or written.
|
|
* @return a space-separated list of file globs that describe the supported formats
|
|
*/
|
|
KDEUI_EXPORT QString pattern(Mode mode = Reading);
|
|
|
|
/**
|
|
* Returns the type of a MIME type.
|
|
* @param mimeType the MIME type to search
|
|
* @param mode Tells whether to retrieve type that can be read or written.
|
|
* @return type id of the MIME type or QString() if the MIME type is not supported
|
|
*/
|
|
KDEUI_EXPORT QString typeForMime(const QString &mimeType, Mode mode = Writing);
|
|
/**
|
|
* Returns a list of all KImageIO supported formats.
|
|
*
|
|
* @param mode Tells whether to retrieve modes that can be read or written.
|
|
* @return a list of the type ids
|
|
*/
|
|
KDEUI_EXPORT QStringList types(Mode mode = Writing);
|
|
|
|
/**
|
|
* Returns a list of MIME types for all KImageIO supported formats.
|
|
*
|
|
* @param mode Tells whether to retrieve modes that can be read or written.
|
|
* @return a list if MIME types of the supported formats
|
|
*/
|
|
KDEUI_EXPORT QStringList mimeTypes(Mode mode = Writing);
|
|
|
|
/**
|
|
* Test to see whether a MIME type is supported to reading/writing.
|
|
* @param _mimeType the MIME type to check
|
|
* @param _mode Tells whether to check for reading or writing capabilities
|
|
* @return true if the type is supported
|
|
**/
|
|
KDEUI_EXPORT bool isSupported(const QString &mimeType, Mode mode = Writing);
|
|
}
|
|
|
|
#endif // KIMAGEIO_H
|