PeriDyno 1.0.0
Loading...
Searching...
No Matches
WIntegerFieldWidget.h
Go to the documentation of this file.
1#pragma once
2#include <Wt/WContainerWidget.h>
3#include <Wt/WSpinBox.h>
4
6
7template<typename T>
8T castMaximum(float v) {
9 T tMax = std::numeric_limits<T>::max();
10 tMax = tMax < v ? tMax : (T)v;
11 return tMax;
12}
13
14template<typename T>
15T castMinimum(float v) {
16 T tMin = std::numeric_limits<T>::min();
17 tMin = tMin > v ? tMin : (T)v;
18 return tMin;
19}
20
21class WIntegerFieldWidget : public Wt::WContainerWidget
22{
23public:
26
27 static Wt::WContainerWidget* WIntegerFieldWidgetConstructor(dyno::FBase* field)
28 {
29 return new WIntegerFieldWidget(field);
30 };
31
32 void setValue(dyno::FBase*);
33
34 //Called when the widget is updated
35 void updateField();
36 Wt::Signal<int>& changeValue()
37 {
38 return changeValue_;
39 }
40
41private:
43 Wt::WHBoxLayout* layout;
44 Wt::WSpinBox* mData;
45 Wt::Signal<int> changeValue_;
46};
47
48class WUIntegerFieldWidget : public Wt::WContainerWidget
49{
50public:
53
54 static Wt::WContainerWidget* WUIntegerFieldWidgetConstructor(dyno::FBase* field)
55 {
56 return new WUIntegerFieldWidget(field);
57 };
58
59 void setValue(dyno::FBase*);
60
61 //Called when the widget is updated
62 void updateField();
63 Wt::Signal<int>& changeValue()
64 {
65 return changeValue_;
66 }
67
68private:
70 Wt::WHBoxLayout* layout;
71 Wt::WSpinBox* mData;
72 Wt::Signal<int> changeValue_;
73};
T castMaximum(float v)
T castMinimum(float v)
Wt::WHBoxLayout * layout
Wt::Signal< int > changeValue_
static Wt::WContainerWidget * WIntegerFieldWidgetConstructor(dyno::FBase *field)
WIntegerFieldWidget(dyno::FBase *)
Wt::Signal< int > & changeValue()
void setValue(dyno::FBase *)
Wt::WHBoxLayout * layout
static Wt::WContainerWidget * WUIntegerFieldWidgetConstructor(dyno::FBase *field)
Wt::Signal< int > & changeValue()
Wt::Signal< int > changeValue_
void setValue(dyno::FBase *)
WUIntegerFieldWidget(dyno::FBase *)
#define T(t)