QPixmap KSystemTray::loadIcon(const QString &icon, KInstance *instance) { KConfig *appCfg = kapp->config(); KConfigGroupSaver configSaver(appCfg, "System Tray"); int iconWidth = appCfg->readNumEntry("systrayIconWidth", 22); return instance->iconLoader()->loadIcon(icon, KIcon::Panel, iconWidth); }
void KSysTrayCmd::refresh() { KWin::setSystemTrayWindowFor( winId(), win ? win : winId() ); QToolTip::remove( this ); if ( win ) { KConfig *appCfg = kapp->config(); KConfigGroupSaver configSaver(appCfg, "System Tray"); int iconWidth = appCfg->readNumEntry("systrayIconWidth", 22); // ksystraycmd's icon or app's icon if (ownIcon) { setPixmap( KSystemTray::loadIcon( kapp->iconName() ) ); } else { setPixmap( KWin::icon( win, iconWidth, iconWidth, true ) ); } QToolTip::add( this, KWin::windowInfo( win ).name() ); } else { if ( !tooltip.isEmpty() ) QToolTip::add( this, tooltip ); else if ( !command.isEmpty() ) QToolTip::add( this, command ); else QToolTip::add( this, window ); setPixmap( KSystemTray::loadIcon( kapp->iconName() ) ); } }