Kimageio removal

Szombathelyi Gy�rgy gyurco at freemail.hu
Sat Jan 14 21:43:38 GMT 2006


I think only If you give him a QIODevice which read from an URI.

------------------------------------
QImageReader r;
r.setFileName("http://www.index.hu/alma.jpg");
qDebug() << r.canRead();

false

r.setFileName("file:///home/gyuri/kepek/becs/dsc03906.jpg");
qDebug() << r.canRead();

false

r.setFileName("/home/gyuri/kepek/becs/dsc03906.jpg");
qDebug() << r.canRead();

true
------------------------------------------------------------------------------------

I invented the following solution:
Add a new service type, called QImageIOPlugins
Create a .desktop file for each image format, with two custom parameters:
X-KDE-ImageFormat
X-KDE-MimeType

These .desktop files contains the mapping between mime-types and image format names. Everything else is in the mime-database already.

Resurrected a very small KImageIO class, which contains only the essential functions for the Imageformat-mimetype conversion:

  static QString pattern(Mode mode = Reading);
  static QStringList typeForMime(const QString& mimeType);
  static QStringList mimeTypes( Mode mode = Writing );
  static bool isSupported( const QString& _mimeType, Mode _mode = Writing );
  ( and maybe QString KImageIO::suffix(const QString& type) )

It's more lightweight than .kimgio files and the old KImageIO class.

P.S: as I see, there are commits which uses only the image format list from QImageReader|Writer, is it enough? Then I dump out my mini-KImageIO.

e.g:
http://websvn.kde.org/trunk/KDE/kdelibs/kio/kfile/kfiledialog.cpp?rev=497896&r1=497724&r2=497896


2006. január 14. 19.43 dátummal Gregory Hayes ezt írta:
> I vote for option 2. I think QImageReader and friends provide us with most
> of what we need. Do you know if the QimageReader::canRead can handle URIs?
>
> Greg
> -
>
> On 1/14/06, Szombathelyi György <gyurco at freemail.hu> wrote:
> > Hi!
> >
> > I removed kimageio from kdelibs trunk yesterday, now I've got a problem
> > of converting some uses in kdebase.
> > Especially KImageIO::pattern() and KImageIO::mimeTypes() are problematic,
> > since there's no such concept in QImageReader and QImageWriter. Qt only
> > knows
> > the "format", which can be e.g "jpg", "png", etc...
> > Now I see 2 options:
> > 1. Restore KImageIO and the .kimgio files, which has the neccessary
> > information, and clean up KImageIO
> > 2. Add the Qt image format name to the mime database, e.g. with
> > X-KDE-imageformat=jpg. Then new convenience function(s) can be added to
> > kmimetype.h, e.g allImageFormats() or sth. else.
> >
> > Option 1 is simplest, but .kimgio files store nearly the same data as the
> > mime
> > files, except the image format name.
> >
> > Any opinions? (or other ideas?)
> >
> > Bye,
> > György
> >
> > ____________________________________________________________________
> > Miert fizetsz az internetert? Korlatlan, ingyenes internet hozzaferes a
> > FreeStarttol
> > Probald ki most! http://www.freestart.hu

____________________________________________________________________
Miert fizetsz az internetert? Korlatlan, ingyenes internet hozzaferes a FreeStarttol
Probald ki most! http://www.freestart.hu

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20060114/102b90c3/attachment.htm>


More information about the kde-core-devel mailing list