@@ -437,8 +437,11 @@ QIcon createQIconOnOffPNG(const char *iconPNGName, bool withOver) {
437437// -----------------------------------------------------------------------------
438438
439439QIcon createTemporaryIconFromName (const char *commandName) {
440- const int visibleIconSize = 20 ;
441- const int menubarIconSize = 16 ;
440+ const int visibleIconSize = 20 ;
441+ const int menubarIconSize = 16 ;
442+ const qreal normalOpacity = 0.8 ;
443+ const qreal disabledOpacity = 0.15 ;
444+ const qreal onOpacity = 1 ;
442445 QString name (commandName);
443446 QList<QChar> iconChar;
444447
@@ -494,8 +497,18 @@ QIcon createTemporaryIconFromName(const char *commandName) {
494497
495498 icon.addPixmap (transparentPm);
496499 icon.addPixmap (transparentPm, QIcon::Disabled);
497- icon.addPixmap (pixmap);
498- icon.addPixmap (setOpacity (pixmap, 0.15 ), QIcon::Disabled);
500+ icon.addPixmap (compositePixmap (pixmap, normalOpacity, pxSize, pxSize,
501+ pixmap.width (), pixmap.height ()),
502+ QIcon::Normal, QIcon::Off);
503+ icon.addPixmap (compositePixmap (pixmap, onOpacity, pxSize, pxSize,
504+ pixmap.width (), pixmap.height ()),
505+ QIcon::Normal, QIcon::On);
506+ icon.addPixmap (compositePixmap (pixmap, onOpacity, pxSize, pxSize,
507+ pixmap.width (), pixmap.height ()),
508+ QIcon::Active);
509+ icon.addPixmap (compositePixmap (pixmap, disabledOpacity, pxSize, pxSize,
510+ pixmap.width (), pixmap.height ()),
511+ QIcon::Disabled);
499512 }
500513 return icon;
501514}
0 commit comments