Maki
Formally verfied low-code orchestration
Loading...
Searching...
No Matches
task_node_menu.h
1#pragma once
2
3#include <QWidget>
4
5#include "../frame.h"
6#include "control_widget.h"
7
8class CanvasView;
9class NodeItem;
10class QTreeWidget;
11class QGraphicsOpacityEffect;
12class QPropertyAnimation;
13
14class NodeActionRow : public StyledFrame
15{
16 Q_OBJECT
17public:
18 NodeActionRow(const QString& svgPath, const QString& labelText, QWidget* parent = nullptr);
19
20signals:
21 void clicked();
22
23protected:
24 void enterEvent(QEnterEvent* event) override;
25 void leaveEvent(QEvent* event) override;
26 void mousePressEvent(QMouseEvent* event) override;
27
28 void paintEvent(QPaintEvent* event) override;
29
30private:
31 bool mHovered;
32 void setHovered(bool hovered);
33};
34
36class TaskNodeMenu : public maki::ControlWidget
37{
38 Q_OBJECT
39
40public:
41 static TaskNodeMenu* create(QWidget* parent = nullptr);
42
43 TaskNodeMenu(QWidget* parent = nullptr);
44
45signals:
46 void openMainFlowRequested();
47 void addFlowRequested();
48 void addSubtaskRequested();
49
50private:
51 QTreeWidget* mTree = nullptr;
52 void hideMenu();
53};
Custom QGraphicsView for a canvas application.
Definition canvas_view.h:15
Represents a graphical node item in a flowchart.
Definition node.h:26
StyledFrame(QWidget *parent=nullptr)
Constructs a StyledFrame with the given parent.
Definition frame.cpp:3