24 #include <QHBoxLayout> 
   26 #include <QPropertyAnimation> 
   32     setContentsMargins(0, 0, 0, 0);
 
   34     animation = 
new QPropertyAnimation(
this, QByteArrayLiteral(
"flyoutPercent"), 
this);
 
   68     setMask(QRegion(0, 0, 
self.width() * progress + 1, 
self.height()));
 
   70     setVisible(progress != 0);
 
   80     return (
animation->state() == QAbstractAnimation::Running);
 
   93     if (
animation->state() != QAbstractAnimation::Running)
 
  101     if (
animation->state() != QAbstractAnimation::Running)
 
  109     bool hide = (
animation->direction() == QAbstractAnimation::Backward);
 
  113         QTimer::singleShot(50, 
this, SIGNAL(
hidden()));
 
  118     setAttribute(Qt::WA_TransparentForMouseEvents, !forward);
 
  119     animation->setDirection(forward ? QAbstractAnimation::Forward : QAbstractAnimation::Backward);