roviz  0.7
Code Documentation of roviz
trim_impl_dev.h
1 #ifndef TRIM_BASE_DEV_H
2 #define TRIM_BASE_DEV_H
3 
4 #include <string>
5 #include <memory>
6 #include <functional>
7 #include <QMetaObject>
8 #include "core/export_handling.h"
9 #include "core/trim_impl.h"
10 
11 class QLayout;
12 class QSlider;
13 class QLabel;
14 class RovizItemBaseDev;
15 
25 class ROVIZ_EXPORT TrimImplDev : public QObject, public TrimImpl
26 {
27 Q_OBJECT
28 
29 COPY_DELETE(TrimImplDev)
30 MOVE_DELETE(TrimImplDev)
31 
32 public:
33  TrimImplDev() = delete;
34  ~TrimImplDev() = default;
35 
41  TrimImplDev(RovizItemBaseDev *item, std::string name, double default_value, double min, double max, int steps, bool logarithmic, std::function<void (double)> notifier_func = [](double){});
42 
46  QLayout *layout(void) const;
47 
51  double value(void) override;
52 
53 private:
54  RovizItemBaseDev *item;
55  std::string name;
56  double default_value, min, scale_factor;
57  bool logarithmic;
58  std::function<void (double)> notifier_func;
59  double val;
60  QLayout *main_layout;
61  QSlider *slider;
62  QLabel *label_value;
63  QMetaObject::Connection load_conn;
64 
65 private slots:
69  void load(void);
70 
75  void valueChanged(int int_value);
76 };
77 
78 #endif // TRIM_BASE_DEV_H
roviz backend for a Trim
Definition: trim_impl_dev.h:25
The interface of a Trim implementation.
Definition: trim_impl.h:7
virtual double value(void)=0
Get the value of the Trim.
Base class that binds RovizItem to the itemframework/Qt.
Definition: roviz_item_base_dev.h:25