tilde~
Puredata Qt-based GUI
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
UILink.h
Go to the documentation of this file.
1 // (c) 2017 Alex Nadzharov
2 // License: GPL3
3 
4 #ifndef cmo_link_H
5 #define cmo_link_H
6 
7 #include <QPlainTextEdit>
8 
9 #include "Port.h"
10 #include "UIObject.h"
11 
12 #include <QGraphicsView>
13 
14 #include "Preferences.h"
15 
16 #include <QStyleOptionGraphicsItem>
17 
18 #include "UIObjectData.h"
19 
20 namespace tilde {
21 
24 class UILink : public UIObject {
25  Q_OBJECT
26 
27 private:
28  bool _clicked;
29  QString _objectText;
30 
31 public:
32  explicit UILink();
33 
34  static UIObject* createObj(QString data);
35 
36  virtual void paint(QPainter* p, const QStyleOptionGraphicsItem* option, QWidget*);
37 
38  // -------
39 
40  void initProperties();
41 
42  virtual void hoverEnterEvent(QGraphicsSceneHoverEvent*);
43  virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent*);
44 
45  void objectPressEvent(QGraphicsSceneMouseEvent* ev);
46  void objectReleaseEvent(QGraphicsSceneMouseEvent*);
47 
48  void autoResize();
49 
50  // -------
51 
52  void fromQString(QString objData);
53  virtual void updateUI(t_cpd_list* msg);
54 
55  void* pdObject();
56 
57 signals:
58 };
59 }
60 #endif // cmo_text_H
Definition: UIObject.h:44