kio Library API Documentation

previewjob.h

00001 // -*- c++ -*- 00002 // vim: ts=4 sw=4 et 00003 /* This file is part of the KDE libraries 00004 Copyright (C) 2000 David Faure <faure@kde.org> 00005 2000 Carsten Pfeiffer <pfeiffer@kde.org> 00006 2001 Malte Starostik <malte.starostik@t-online.de> 00007 00008 This library is free software; you can redistribute it and/or 00009 modify it under the terms of the GNU Library General Public 00010 License as published by the Free Software Foundation; either 00011 version 2 of the License, or (at your option) any later version. 00012 00013 This library is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 Library General Public License for more details. 00017 00018 You should have received a copy of the GNU Library General Public License 00019 along with this library; see the file COPYING.LIB. If not, write to 00020 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00021 Boston, MA 02111-1307, USA. 00022 */ 00023 00024 #ifndef __kio_previewjob_h__ 00025 #define __kio_previewjob_h__ 00026 00027 #include <kfileitem.h> 00028 #include <kio/job.h> 00029 00030 class QPixmap; 00031 00032 namespace KIO { 00037 class PreviewJob : public KIO::Job 00038 { 00039 Q_OBJECT 00040 public: 00057 PreviewJob( const KFileItemList &items, int width, int height, 00058 int iconSize, int iconAlpha, bool scale, bool save, 00059 const QStringList *enabledPlugins, bool deleteItems = false ); 00060 virtual ~PreviewJob(); 00061 00068 void removeItem( const KFileItem *item ); 00069 00076 static QStringList availablePlugins(); 00077 00083 static QStringList supportedMimeTypes(); 00084 00085 signals: 00092 void gotPreview( const KFileItem *item, const QPixmap &preview ); 00099 void failed( const KFileItem *item ); 00100 00101 protected: 00102 void getOrCreateThumbnail(); 00103 bool statResultThumbnail(); 00104 void createThumbnail( QString ); 00105 00106 protected slots: 00107 virtual void slotResult( KIO::Job *job ); 00108 00109 private slots: 00110 void startPreview(); 00111 void slotThumbData(KIO::Job *, const QByteArray &); 00112 00113 private: 00114 void determineNextFile(); 00115 void emitPreview(const QImage &thumb); 00116 void emitFailed(const KFileItem *item = 0); 00117 00118 protected: 00119 virtual void virtual_hook( int id, void* data ); 00120 private: 00121 struct PreviewJobPrivate *d; 00122 }; 00123 00144 PreviewJob *filePreview( const KFileItemList &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 ); 00145 00166 PreviewJob *filePreview( const KURL::List &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 ); 00167 } 00168 00169 #endif
KDE Logo
This file is part of the documentation for kio Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Mon Aug 30 22:54:43 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003