+void SelectionToggle::setIconOverlay(bool checked)
+{
+ const char* icon = checked ? "list-remove" : "list-add";
+ m_icon = KIconLoader::global()->loadIcon(icon,
+ KIconLoader::NoGroup,
+ KIconLoader::SizeSmall);
+ update();
+}
+
+void SelectionToggle::refreshIcon()
+{
+ setIconOverlay(isChecked());
+}
+
+void SelectionToggle::startFading()
+{
+ Q_ASSERT(m_fadingTimeLine == 0);
+
+ const bool animate = KGlobalSettings::graphicEffectsLevel() & KGlobalSettings::SimpleAnimationEffects;
+ const int duration = animate ? 600 : 1;
+
+ m_fadingTimeLine = new QTimeLine(duration, this);
+ connect(m_fadingTimeLine, SIGNAL(frameChanged(int)),
+ this, SLOT(setFadingValue(int)));
+ m_fadingTimeLine->setFrameRange(0, 255);
+ m_fadingTimeLine->start();
+ m_fadingValue = 0;
+}
+
+void SelectionToggle::stopFading()
+{
+ if (m_fadingTimeLine != 0) {
+ m_fadingTimeLine->stop();
+ delete m_fadingTimeLine;
+ m_fadingTimeLine = 0;
+ }
+ m_fadingValue = 0;
+}
+