Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 #ifndef QPIXMAPCACHE_H
00043 #define QPIXMAPCACHE_H
00044
00045 #include <QtGui/qpixmap.h>
00046
00047 #ifdef Q_TEST_QPIXMAPCACHE
00048 #include <QtCore/qpair.h>
00049 #endif
00050
00051 QT_BEGIN_HEADER
00052
00053 QT_BEGIN_NAMESPACE
00054
00055 QT_MODULE(Gui)
00056
00057 class Q_GUI_EXPORT QPixmapCache
00058 {
00059 public:
00060 class KeyData;
00061 class Q_GUI_EXPORT Key
00062 {
00063 public:
00064 Key();
00065 Key(const Key &other);
00066 ~Key();
00067 bool operator ==(const Key &key) const;
00068 inline bool operator !=(const Key &key) const
00069 { return !operator==(key); }
00070 Key &operator =(const Key &other);
00071
00072 private:
00073 KeyData *d;
00074 friend class QPMCache;
00075 friend class QPixmapCache;
00076 };
00077
00078 static int cacheLimit();
00079 static void setCacheLimit(int);
00080 static QPixmap *find(const QString &key);
00081 static bool find(const QString &key, QPixmap &pixmap);
00082 static bool find(const QString &key, QPixmap *pixmap);
00083 static bool find(const Key &key, QPixmap *pixmap);
00084 static bool insert(const QString &key, const QPixmap &pixmap);
00085 static Key insert(const QPixmap &pixmap);
00086 static bool replace(const Key &key, const QPixmap &pixmap);
00087 static void remove(const QString &key);
00088 static void remove(const Key &key);
00089 static void clear();
00090
00091 #ifdef Q_TEST_QPIXMAPCACHE
00092 static void flushDetachedPixmaps();
00093 static int totalUsed();
00094 static QList< QPair<QString,QPixmap> > allPixmaps();
00095 #endif
00096 };
00097
00098 QT_END_NAMESPACE
00099
00100 QT_END_HEADER
00101
00102 #endif // QPIXMAPCACHE_H