KFile
kfilepreviewgenerator.h
Go to the documentation of this file.
00001 /******************************************************************************* 00002 * Copyright (C) 2008-2009 by Peter Penz <peter.penz@gmx.at> * 00003 * * 00004 * This library is free software; you can redistribute it and/or * 00005 * modify it under the terms of the GNU Library General Public * 00006 * License as published by the Free Software Foundation; either * 00007 * version 2 of the License, or (at your option) any later version. * 00008 * * 00009 * This library is distributed in the hope that it will be useful, * 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00012 * Library General Public License for more details. * 00013 * * 00014 * You should have received a copy of the GNU Library General Public License * 00015 * along with this library; see the file COPYING.LIB. If not, write to * 00016 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * 00017 * Boston, MA 02110-1301, USA. * 00018 *******************************************************************************/ 00019 00020 #ifndef KFILEPREVIEWGENERATOR_H 00021 #define KFILEPREVIEWGENERATOR_H 00022 00023 #include <kfile_export.h> 00024 00025 #include <QtCore/QObject> 00026 00027 class KAbstractViewAdapter; 00028 class KDirModel; 00029 class QAbstractItemView; 00030 class QAbstractProxyModel; 00031 00050 class KFILE_EXPORT KFilePreviewGenerator : public QObject 00051 { 00052 Q_OBJECT 00053 00054 public: 00062 KFilePreviewGenerator(QAbstractItemView* parent); 00063 00065 KFilePreviewGenerator(KAbstractViewAdapter* parent, QAbstractProxyModel* model); 00066 00067 virtual ~KFilePreviewGenerator(); 00068 00076 void setPreviewShown(bool show); 00077 bool isPreviewShown() const; 00078 00082 void updatePreviews(); 00083 00092 void updateIcons(); 00093 00095 void cancelPreviews(); 00096 00109 void setEnabledPlugins(const QStringList& list); 00110 00117 QStringList enabledPlugins() const; 00118 00119 private: 00120 class Private; 00121 Private* const d; 00122 class LayoutBlocker; 00123 class TileSet; 00124 00125 Q_DISABLE_COPY(KFilePreviewGenerator) 00126 00127 Q_PRIVATE_SLOT(d, void updateIcons(const KFileItemList&)) 00128 Q_PRIVATE_SLOT(d, void updateIcons(const QModelIndex&, const QModelIndex&)) 00129 Q_PRIVATE_SLOT(d, void addToPreviewQueue(const KFileItem&, const QPixmap&)) 00130 Q_PRIVATE_SLOT(d, void slotPreviewJobFinished(KJob*)) 00131 Q_PRIVATE_SLOT(d, void updateCutItems()) 00132 Q_PRIVATE_SLOT(d, void dispatchIconUpdateQueue()) 00133 Q_PRIVATE_SLOT(d, void pauseIconUpdates()) 00134 Q_PRIVATE_SLOT(d, void resumeIconUpdates()) 00135 Q_PRIVATE_SLOT(d, void resolveMimeType()) 00136 Q_PRIVATE_SLOT(d, void requestSequenceIcon(const QModelIndex&, int)) 00137 Q_PRIVATE_SLOT(d, void delayedIconUpdate()) 00138 Q_PRIVATE_SLOT(d, void rowsAboutToBeRemoved(const QModelIndex&, int, int)) 00139 }; 00140 00141 #endif
KDE 4.6 API Reference