From 0e814da91c8e041897a4c3f7e6e9234bbc7c6f7a Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Tue, 17 Jul 2018 16:37:25 +0300 Subject: Move all files under src/ --- src/ui/FloatingButton.cc | 95 ------------------------------------------------ 1 file changed, 95 deletions(-) delete mode 100644 src/ui/FloatingButton.cc (limited to 'src/ui/FloatingButton.cc') diff --git a/src/ui/FloatingButton.cc b/src/ui/FloatingButton.cc deleted file mode 100644 index 74dcd482..00000000 --- a/src/ui/FloatingButton.cc +++ /dev/null @@ -1,95 +0,0 @@ -#include - -#include "FloatingButton.h" - -FloatingButton::FloatingButton(const QIcon &icon, QWidget *parent) - : RaisedButton(parent) -{ - setFixedSize(DIAMETER, DIAMETER); - setGeometry(buttonGeometry()); - - if (parentWidget()) - parentWidget()->installEventFilter(this); - - setFixedRippleRadius(50); - setIcon(icon); - raise(); -} - -QRect -FloatingButton::buttonGeometry() const -{ - QWidget *parent = parentWidget(); - - if (!parent) - return QRect(); - - return QRect(parent->width() - (OFFSET_X + DIAMETER), - parent->height() - (OFFSET_Y + DIAMETER), - DIAMETER, - DIAMETER); -} - -bool -FloatingButton::event(QEvent *event) -{ - if (!parent()) - return RaisedButton::event(event); - - switch (event->type()) { - case QEvent::ParentChange: { - parent()->installEventFilter(this); - setGeometry(buttonGeometry()); - break; - } - case QEvent::ParentAboutToChange: { - parent()->installEventFilter(this); - break; - } - default: - break; - } - - return RaisedButton::event(event); -} - -bool -FloatingButton::eventFilter(QObject *obj, QEvent *event) -{ - const QEvent::Type type = event->type(); - - if (QEvent::Move == type || QEvent::Resize == type) - setGeometry(buttonGeometry()); - - return RaisedButton::eventFilter(obj, event); -} - -void -FloatingButton::paintEvent(QPaintEvent *event) -{ - Q_UNUSED(event); - - QRect square = QRect(0, 0, DIAMETER, DIAMETER); - square.moveCenter(rect().center()); - - QPainter p(this); - p.setRenderHints(QPainter::Antialiasing); - - QBrush brush; - brush.setStyle(Qt::SolidPattern); - brush.setColor(backgroundColor()); - - p.setBrush(brush); - p.setPen(Qt::NoPen); - p.drawEllipse(square); - - QRect iconGeometry(0, 0, ICON_SIZE, ICON_SIZE); - iconGeometry.moveCenter(square.center()); - - QPixmap pixmap = icon().pixmap(QSize(ICON_SIZE, ICON_SIZE)); - QPainter icon(&pixmap); - icon.setCompositionMode(QPainter::CompositionMode_SourceIn); - icon.fillRect(pixmap.rect(), foregroundColor()); - - p.drawPixmap(iconGeometry, pixmap); -} -- cgit 1.5.1