• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdecore
 

tdecore

kiconloader.h
00001 /* vi: ts=8 sts=4 sw=4
00002  *
00003  * This file is part of the KDE project, module tdecore.
00004  * Copyright (C) 2000 Geert Jansen <jansen@kde.org>
00005  *                    Antonio Larrosa <larrosa@kde.org>
00006  *
00007  * This is free software; it comes under the GNU Library General
00008  * Public License, version 2. See the file "COPYING.LIB" for the
00009  * exact licensing terms.
00010  */
00011 
00012 #ifndef __TDEIconLoader_h_Included__
00013 #define __TDEIconLoader_h_Included__
00014 
00015 #include <tqstring.h>
00016 #include <tqpixmap.h>
00017 #include <tqiconset.h>
00018 
00019 // Grmbl, X headers.....
00020 #ifdef Status
00021 #define TDEIconLoaderXStatus Status
00022 #undef Status
00023 #endif
00024 #include <tqmovie.h>
00025 #ifdef TDEIconLoaderXStatus
00026 #define Status int
00027 #undef TDEIconLoaderXStatus
00028 #endif
00029 
00030 #include <tdeglobal.h>
00031 #include <kinstance.h>
00032 #include <kicontheme.h>
00033 
00034 struct TDEIconGroup;
00035 class TDEIconThemeNode;
00036 class TDEConfig;
00037 struct TDEIconLoaderPrivate;
00038 class TDEStandardDirs;
00039 class TDEIconEffect;
00040 
00041 
00077 class TDECORE_EXPORT TDEIconLoader
00078 {
00079 public:
00080 
00095     TDEIconLoader(const TQString& appname=TQString::null, TDEStandardDirs *dirs = 0);
00096 
00100     ~TDEIconLoader();
00101 
00106     void addAppDir(const TQString& appname);
00107 
00129     TQPixmap loadIcon(const TQString& name, TDEIcon::Group group, int size=0,
00130              int state=TDEIcon::DefaultState, TQString *path_store=0L,
00131              bool canReturnNull=false) const;
00132 
00151     TQIconSet loadIconSet(const TQString& name, TDEIcon::Group group, int size,
00152                          bool canReturnNull, bool immediateExistenceCheck);
00153 
00154     // KDE4 merge as (const TQString&,TDEIcon::Group,int=0,bool=false,bool=true);
00171     TQIconSet loadIconSet(const TQString& name, TDEIcon::Group group, int size,
00172                          bool canReturnNull);
00173 
00174     // KDE4 merge as (const TQString&,TDEIcon::Group,int=0,bool=false,bool=true);
00186     TQIconSet loadIconSet(const TQString& name, TDEIcon::Group group, int size=0);
00187 
00202     TQString iconPath(const TQString& name, int group_or_size,
00203              bool canReturnNull=false) const;
00204 
00213     TQMovie loadMovie(const TQString& name, TDEIcon::Group group, int size=0) const;
00214 
00224     TQString moviePath(const TQString& name, TDEIcon::Group group, int size=0) const;
00225 
00236     TQStringList loadAnimated(const TQString& name, TDEIcon::Group group, int size=0) const;
00237 
00248     TQStringList queryIcons(int group_or_size, TDEIcon::Context context=TDEIcon::Any) const;
00249 
00261     TQStringList queryIconsByContext(int group_or_size,
00262                     TDEIcon::Context context=TDEIcon::Any) const;
00263 
00267     bool hasContext( TDEIcon::Context context ) const;
00268 
00276     TQStringList queryIconsByDir( const TQString& iconsDir ) const;
00277 
00283     int currentSize(TDEIcon::Group group) const;
00284 
00290     TDEIconTheme *theme() const;
00291 
00296     TDEIconEffect *iconEffect() const;
00297 
00304     void reconfigure( const TQString& _appname, TDEStandardDirs *_dirs );
00305 
00311     static TQPixmap unknown();
00312 
00320     bool alphaBlending( TDEIcon::Group group ) const;
00321 
00327     void addExtraDesktopThemes();
00328 
00334     bool extraDesktopThemesAdded() const;
00335 
00355     void enableDelayedIconSetLoading( bool enable );
00356 
00364     bool isDelayedIconSetLoadingEnabled() const;
00365 
00366 
00367  private:
00371     void init( const TQString& _appname, TDEStandardDirs *_dirs );
00372 
00378     TDEIcon findMatchingIcon(const TQString& name, int size) const;
00379 
00384      TQImage *loadOverlay(const TQString& name, int size) const;
00385 
00390     void addAppThemes(const TQString& appname);
00391 
00397     void addBaseThemes(TDEIconThemeNode *node, const TQString &appname);
00398 
00404     TQString unknownIconPath( int size ) const;
00405 
00421     TQString removeIconExtension(const TQString &name) const;
00422 
00432     TQString removeIconExtensionInternal(const TQString &name) const;
00433 
00437     TQIconSet loadIconSetNonDelayed( const TQString& name, TDEIcon::Group group,
00438                                     int size, bool canReturnNull );
00439 
00440     // @internal the data object
00441     TDEIconLoaderPrivate *d;
00442 };
00443 
00448 TDECORE_EXPORT TQPixmap DesktopIcon(const TQString& name, int size=0,
00449             int state=TDEIcon::DefaultState,
00450             TDEInstance *instance=TDEGlobal::instance());
00451 
00456 TDECORE_EXPORT TQPixmap DesktopIcon(const TQString& name, TDEInstance *instance);
00457 
00462 TDECORE_EXPORT TQIconSet DesktopIconSet(const TQString& name, int size=0,
00463             TDEInstance *instance=TDEGlobal::instance());
00464 
00469 TDECORE_EXPORT TQPixmap BarIcon(const TQString& name, int size=0, int state=TDEIcon::DefaultState,
00470     TDEInstance *instance=TDEGlobal::instance());
00471 
00476 TDECORE_EXPORT TQPixmap BarIcon(const TQString& name, TDEInstance *instance);
00477 
00482 TDECORE_EXPORT TQIconSet BarIconSet(const TQString& name, int size=0,
00483             TDEInstance *instance=TDEGlobal::instance());
00484 
00489 TDECORE_EXPORT TQPixmap SmallIcon(const TQString& name, int size=0,
00490           int state=TDEIcon::DefaultState,
00491           TDEInstance *instance=TDEGlobal::instance());
00492 
00497 TDECORE_EXPORT TQPixmap SmallIcon(const TQString& name, TDEInstance *instance);
00498 
00503 TDECORE_EXPORT TQIconSet SmallIconSet(const TQString& name, int size=0,
00504             TDEInstance *instance=TDEGlobal::instance());
00505 
00510 TDECORE_EXPORT TQPixmap MainBarIcon(const TQString& name, int size=0,
00511             int state=TDEIcon::DefaultState,
00512             TDEInstance *instance=TDEGlobal::instance());
00513 
00518 TDECORE_EXPORT TQPixmap MainBarIcon(const TQString& name, TDEInstance *instance);
00519 
00524 TDECORE_EXPORT TQIconSet MainBarIconSet(const TQString& name, int size=0,
00525             TDEInstance *instance=TDEGlobal::instance());
00526 
00531 TDECORE_EXPORT TQPixmap UserIcon(const TQString& name, int state=TDEIcon::DefaultState,
00532     TDEInstance *instance=TDEGlobal::instance());
00533 
00538 TDECORE_EXPORT TQPixmap UserIcon(const TQString& name, TDEInstance *instance);
00539 
00544 TDECORE_EXPORT TQIconSet UserIconSet(const TQString& name,
00545     TDEInstance *instance=TDEGlobal::instance());
00546 
00551 TDECORE_EXPORT int IconSize(TDEIcon::Group group, TDEInstance *instance=TDEGlobal::instance());
00552 
00553 #endif // __TDEIconLoader_h_Included__

tdecore

Skip menu "tdecore"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

tdecore

Skip menu "tdecore"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdecore by doxygen 1.7.6.1
This website is maintained by Timothy Pearson.