Part of batch commit to enable true tasktray resize support for Trinity applications

git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1124756 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 14 years ago
parent 139dd5b8c4
commit be5389144b

@ -29,9 +29,9 @@
#include "kaboutdata.h"
#ifdef Q_WS_X11
#include <kwin.h>
#include <kwinmodule.h>
#include <qxembed.h>
#include <kwin.h>
#include <kwinmodule.h>
#include <qxembed.h>
#endif
#include <kiconloader.h>
@ -62,7 +62,7 @@ KSystemTray::KSystemTray( QWidget* parent, const char* name )
#ifdef Q_WS_X11
QXEmbed::initialize();
#endif
d = new KSystemTrayPrivate;
d->actionCollection = new KActionCollection(this);
@ -95,6 +95,9 @@ KSystemTray::KSystemTray( QWidget* parent, const char* name )
}
setCaption( KGlobal::instance()->aboutData()->programName());
setAlignment( alignment() | Qt::AlignVCenter | Qt::AlignHCenter );
// Handle the possibility that the requested system tray size is something other than 22x22 pixels, per the Free Desktop specifications
setScaledContents(true);
}
KSystemTray::~KSystemTray()
@ -306,7 +309,7 @@ KActionCollection* KSystemTray::actionCollection()
{
return d->actionCollection;
}
QPixmap KSystemTray::loadIcon( const QString &icon, KInstance *instance )
{
KConfig *appCfg = kapp->config();
@ -315,6 +318,11 @@ QPixmap KSystemTray::loadIcon( const QString &icon, KInstance *instance )
return instance->iconLoader()->loadIcon( icon, KIcon::Panel, iconWidth );
}
QPixmap KSystemTray::loadSizedIcon( const QString &icon, int iconWidth, KInstance *instance )
{
return instance->iconLoader()->loadIcon( icon, KIcon::Panel, iconWidth );
}
void KSystemTray::setPixmap( const QPixmap& p )
{
QLabel::setPixmap( p );

@ -108,7 +108,7 @@ public:
* configuration dialog). The default value is KAboutData::programName().
*/
virtual void setCaption( const QString& title );
/**
* Loads an icon @p icon using the icon loader class of the given instance @p instance.
* The icon is applied the panel effect as it should only be used to be shown in the
@ -119,6 +119,17 @@ public:
*/
static QPixmap loadIcon( const QString &icon, KInstance *instance=KGlobal::instance() );
/**
* Loads an icon @p icon using the icon loader class of the given instance @p instance.
* The icon is applied the panel effect as it should only be used to be shown in the
* system tray.
* It's commonly used in the form : systray->setPixmap( systray->loadIcon( "mysystray", iconWidth ) );
* This is essentially the same as loadIcon(), but with a forced icon size
*
* @since 3.5.12
*/
static QPixmap loadSizedIcon( const QString &icon, int iconWidth, KInstance *instance=KGlobal::instance() );
signals:
/**
* Emitted when quit is selected in the menu. If you want to perform any other

Loading…
Cancel
Save