00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
#ifndef __KIconLoader_h_Included__
00015
#define __KIconLoader_h_Included__
00016
00017
#include <qstring.h>
00018
#include <qpixmap.h>
00019
#include <qiconset.h>
00020
00021
00022
#ifdef Status
00023
#define KIconLoaderXStatus Status
00024
#undef Status
00025
#endif
00026
#include <qmovie.h>
00027
#ifdef KIconLoaderXStatus
00028
#define Status int
00029
#undef KIconLoaderXStatus
00030
#endif
00031
00032
#include <kglobal.h>
00033
#include <kinstance.h>
00034
#include <kicontheme.h>
00035
00036
class KIconGroup;
00037
class KIconThemeNode;
00038
class KConfig;
00039
class KIconLoaderPrivate;
00040
class KStandardDirs;
00041
class KIconEffect;
00042
00043
00079 class KIconLoader
00080 {
00081
public:
00082
00097
KIconLoader(
const QString& appname=QString::null,
KStandardDirs *dirs = 0);
00098
00102
~KIconLoader();
00103
00108
void addAppDir(
const QString& appname);
00109
00131
QPixmap loadIcon(
const QString& name, KIcon::Group group,
int size=0,
00132
int state=KIcon::DefaultState,
QString *path_store=0L,
00133
bool canReturnNull=
false)
const;
00134
00151
QIconSet loadIconSet(
const QString& name, KIcon::Group group,
int size,
00152
bool canReturnNull);
00153
00154
00166
QIconSet loadIconSet(
const QString& name, KIcon::Group group,
int size=0);
00167
00182
QString iconPath(
const QString& name,
int group_or_size,
00183
bool canReturnNull=
false)
const;
00184
00193
QMovie loadMovie(
const QString& name, KIcon::Group group,
int size=0)
const;
00194
00204
QString moviePath(
const QString& name, KIcon::Group group,
int size=0)
const;
00205
00216
QStringList loadAnimated(
const QString& name, KIcon::Group group,
int size=0)
const;
00217
00228
QStringList queryIcons(
int group_or_size, KIcon::Context context=KIcon::Any)
const;
00229
00241
QStringList queryIconsByContext(
int group_or_size,
00242 KIcon::Context context=KIcon::Any)
const;
00243
00251
QStringList queryIconsByDir(
const QString& iconsDir )
const;
00252
00258
int currentSize(KIcon::Group group)
const;
00259
00265
KIconTheme *
theme()
const;
00266
00271
KIconEffect *
iconEffect()
const;
00272
00279
void reconfigure(
const QString& _appname,
KStandardDirs *_dirs );
00280
00286
static QPixmap unknown();
00287
00295
bool alphaBlending( KIcon::Group group )
const;
00296
00302
void addExtraDesktopThemes();
00303
00309
bool extraDesktopThemesAdded()
const;
00310
00330
void enableDelayedIconSetLoading(
bool enable );
00331
00339
bool isDelayedIconSetLoadingEnabled()
const;
00340
00341
00342
private:
00346
void init(
const QString& _appname,
KStandardDirs *_dirs );
00347
00353
KIcon findMatchingIcon(
const QString& name,
int size)
const;
00354
00359
QImage *loadOverlay(
const QString& name,
int size)
const;
00360
00365
void addAppThemes(
const QString& appname);
00366
00372
void addBaseThemes(KIconThemeNode *node,
const QString &appname);
00373
00379
QString unknownIconPath(
int size )
const;
00380
00386
QString removeIconExtension(
const QString &name)
const;
00387
00391
QIconSet loadIconSetNonDelayed(
const QString& name, KIcon::Group group,
00392
int size,
bool canReturnNull );
00393
00394
00395 KIconLoaderPrivate *d;
00396 };
00397
00402
QPixmap DesktopIcon(
const QString& name,
int size=0,
00403
int state=KIcon::DefaultState,
00404
KInstance *instance=KGlobal::instance());
00405
00410
QPixmap DesktopIcon(
const QString& name,
KInstance *instance);
00411
00416
QIconSet DesktopIconSet(
const QString& name,
int size=0,
00417
KInstance *instance=KGlobal::instance());
00418
00423
QPixmap BarIcon(
const QString& name,
int size=0,
int state=KIcon::DefaultState,
00424
KInstance *instance=KGlobal::instance());
00425
00430
QPixmap BarIcon(
const QString& name,
KInstance *instance);
00431
00436
QIconSet BarIconSet(
const QString& name,
int size=0,
00437
KInstance *instance=KGlobal::instance());
00438
00443
QPixmap SmallIcon(
const QString& name,
int size=0,
00444
int state=KIcon::DefaultState,
00445
KInstance *instance=KGlobal::instance());
00446
00451
QPixmap SmallIcon(
const QString& name,
KInstance *instance);
00452
00457
QIconSet SmallIconSet(
const QString& name,
int size=0,
00458
KInstance *instance=KGlobal::instance());
00459
00464
QPixmap MainBarIcon(
const QString& name,
int size=0,
00465
int state=KIcon::DefaultState,
00466
KInstance *instance=KGlobal::instance());
00467
00472
QPixmap MainBarIcon(
const QString& name,
KInstance *instance);
00473
00478
QIconSet MainBarIconSet(
const QString& name,
int size=0,
00479
KInstance *instance=KGlobal::instance());
00480
00485
QPixmap UserIcon(
const QString& name,
int state=KIcon::DefaultState,
00486
KInstance *instance=KGlobal::instance());
00487
00492
QPixmap UserIcon(
const QString& name,
KInstance *instance);
00493
00498
QIconSet UserIconSet(
const QString& name,
00499
KInstance *instance=KGlobal::instance());
00500
00505
int IconSize(KIcon::Group group,
KInstance *instance=KGlobal::instance());
00506
00507
#endif // __KIconLoader_h_Included__