PeriDyno 1.0.0
Loading...
Searching...
No Matches
QFieldWidget.h
Go to the documentation of this file.
1
19#pragma once
20//Qt
21#include <QGroupBox>
22#include <QPushButton>
23#include <QSpinBox>
24#include <QDialog>
25#include <QLineEdit>
26#include <QMouseEvent>
27#include <QWheelEvent>
28#include <QLabel>
29#include <QVBoxLayout>
30
31//PeriDyno
32#include "Format.h"
33#include "FCallBackFunc.h"
34#include "QtGUI/Common.h"
35
36//C++
37#include <memory>
38
39namespace dyno
40{
41 class Node;
42 class Module;
43 class FBase;
44
45 class QDoubleSpinner;
46 class QDoubleSlider;
48 class QValueDialog;
49 class QToggleLabel;
50
51 template<typename T>
52 T castMaximum(float v) {
53 T tMax = std::numeric_limits<T>::max();
54 tMax = tMax < v ? tMax : (T)v;
55 return tMax;
56 }
57
58 template<typename T>
59 T castMinimum(float v) {
60 T tMin = std::numeric_limits<T>::min();
61 tMin = tMin > v ? tMin : (T)v;
62 return tMin;
63 }
64
65 class PERIDYNO_QTGUI_API QFieldWidget : public QGroupBox
66 {
67 Q_OBJECT
68 public:
71
72 virtual ~QFieldWidget();
73
74 inline FBase* field() { return mField; }
75
76 public:
77 void clearCallBackFunc();
78
79 signals:
81
82 public slots:
83
84 private:
85 FBase* mField = nullptr;
86
87 private:
88 void syncValueFromField();
89
90 std::shared_ptr<FCallBackFunc> callback = nullptr;
91 };
92
93
94
95
96}
#define PERIDYNO_QTGUI_API
Definition Common.h:9
std::shared_ptr< FCallBackFunc > callback
QFieldWidget(FBase *field)
#define T(t)
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25
T castMaximum(float v)
T castMinimum(float v)