Template Class FormWidget

Page Contents

Class Documentation

template<typename T, typename sfinae = std::true_type>
class FormWidget

A template wrapper class for assisting in the creation of various form widgets.

The partial template specializations are:

  • Inheritance from nanogui::ComboBox for enum types:

    template <typename T>
    class FormWidget<T, typename std::is_enum<T>::type> : public ComboBox
    
  • Inheritance from nanogui::IntBox for integral types:

    template <typename T>
    class FormWidget<T, typename std::is_integral<T>::type> : public IntBox<T>
    
  • Inheritance from nanogui::FloatBox for floating point types:

    template <typename T>
    class FormWidget<T, typename std::is_floating_point<T>::type> : public FloatBox<T>
    

The full template specializations are:

  • Inheritance from nanogui::CheckBox for booleans:

    template <>
    class FormWidget<bool, std::true_type> : public CheckBox
    
  • Inheritance from nanogui::TextBox for strings:

    template <>
    class FormWidget<std::string, std::true_type> : public TextBox
    
  • Inheritance from nanogui::ColorPicker for nanogui::Color types:

    template <>
    class FormWidget<Color, std::true_type> : public ColorPicker
    

Please refer to the bottom of Program Listing for File formhelper.h for the implementation details.