Files
flameshot/src/widgets/capture/capturetoolbutton.h
Dearsh Oberoi de7eeb4d64 Right click to open panel and select tool (#2008)
* Right click to open panel and select tool

* Renamed slots
2021-10-27 10:40:32 +02:00

55 lines
1.2 KiB
C++

// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: 2017-2019 Alejandro Sirgo Rica & Contributors
#pragma once
#include "capturebutton.h"
#include "src/tools/capturetool.h"
#include <QMap>
#include <QVector>
class QWidget;
class QPropertyAnimation;
class CaptureToolButton : public CaptureButton
{
Q_OBJECT
public:
explicit CaptureToolButton(const CaptureTool::Type,
QWidget* parent = nullptr);
~CaptureToolButton();
static const QList<CaptureTool::Type>& getIterableButtonTypes();
static int getPriorityByButton(CaptureTool::Type);
QString name() const;
QString description() const;
QIcon icon() const;
CaptureTool* tool() const;
void setColor(const QColor& c);
void animatedShow();
protected:
void mousePressEvent(QMouseEvent* e) override;
static QList<CaptureTool::Type> iterableButtonTypes;
CaptureTool* m_tool;
signals:
void pressedButtonLeftClick(CaptureToolButton*);
void pressedButtonRightClick(CaptureToolButton*);
private:
CaptureToolButton(QWidget* parent = nullptr);
CaptureTool::Type m_buttonType;
QPropertyAnimation* m_emergeAnimation;
static QColor m_mainColor;
void initButton();
void updateIcon();
};