FloatWidgets.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "Basic.h"
4 
6 {
7  template <typename Derived>
8  struct FloatMinMaxMixin : MinMaxMixin<Derived, float>
9  {
10  Derived&
11  steps(int steps)
12  {
13  Derived& this_ = *static_cast<Derived*>(this);
14  this_.widget().steps = steps;
15  return this_;
16  }
17 
18  Derived&
19  steps(std::array<int, 1> v)
20  {
21  return steps(v.at(0));
22  }
23  };
24 
26  public ValueMixin<FloatSpinBox, float, FloatSpinBoxBuilder>,
27  public FloatMinMaxMixin<FloatSpinBoxBuilder>,
28  public ToolTipMixin<FloatSpinBoxBuilder>
29  {
30  using ValueMixin::ValueMixin;
31 
34  {
35  widget().decimals = decimals;
36  return *this;
37  }
38 
40  decimals(std::array<int, 1> d)
41  {
42  return decimals(d.at(0));
43  }
44  };
45 
47  public ValueMixin<FloatSlider, float, FloatSliderBuilder>,
48  public FloatMinMaxMixin<FloatSliderBuilder>,
49  public ToolTipMixin<FloatSliderBuilder>
50  {
51  using ValueMixin::ValueMixin;
52  };
53 } // namespace armarx::RemoteGui::detail
54 
55 namespace armarx::RemoteGui
56 {
58  makeFloatSpinBox(std::string const& name)
59  {
60  return detail::FloatSpinBoxBuilder(name);
61  }
62 
63  inline detail::FloatSliderBuilder
64  makeFloatSlider(std::string const& name)
65  {
66  return detail::FloatSliderBuilder(name);
67  }
68 } // namespace armarx::RemoteGui
Basic.h
armarx::RemoteGui
Definition: LightweightRemoteGuiComponentPlugin.h:30
armarx::RemoteGui::detail
Definition: Basic.h:10
armarx::RemoteGui::detail::MinMaxMixin
Definition: Basic.h:93
armarx::RemoteGui::detail::FloatMinMaxMixin::steps
Derived & steps(std::array< int, 1 > v)
Definition: FloatWidgets.h:19
armarx::RemoteGui::detail::FloatSliderBuilder
Definition: FloatWidgets.h:46
armarx::RemoteGui::detail::WidgetMixin::widget
WidgetT & widget()
Definition: Basic.h:54
armarx::RemoteGui::makeFloatSlider
detail::FloatSliderBuilder makeFloatSlider(std::string const &name)
Definition: FloatWidgets.h:64
armarx::RemoteGui::detail::FloatSpinBoxBuilder::decimals
FloatSpinBoxBuilder & decimals(int decimals)
Definition: FloatWidgets.h:33
armarx::RemoteGui::detail::FloatMinMaxMixin
Definition: FloatWidgets.h:8
armarx::RemoteGui::detail::ToolTipMixin
Definition: Basic.h:225
armarx::RemoteGui::detail::FloatSpinBoxBuilder::decimals
FloatSpinBoxBuilder & decimals(std::array< int, 1 > d)
Definition: FloatWidgets.h:40
armarx::ctrlutil::v
double v(double t, double v0, double a0, double j)
Definition: CtrlUtil.h:39
armarx::RemoteGui::detail::FloatSpinBoxBuilder
Definition: FloatWidgets.h:25
armarx::RemoteGui::makeFloatSpinBox
detail::FloatSpinBoxBuilder makeFloatSpinBox(std::string const &name)
Definition: FloatWidgets.h:58
armarx::RemoteGui::detail::ValueMixin
Definition: Basic.h:73
armarx::RemoteGui::detail::FloatMinMaxMixin::steps
Derived & steps(int steps)
Definition: FloatWidgets.h:11