ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::visualization::gui::NumberEdit Class Reference

#include <NumberEdit.h>

Inheritance diagram for cloudViewer::visualization::gui::NumberEdit:
Collaboration diagram for cloudViewer::visualization::gui::NumberEdit:

Classes

struct  Impl
 

Public Types

enum  Type { INT , DOUBLE }
 
- Public Types inherited from cloudViewer::visualization::gui::Widget
enum class  DrawResult { NONE , REDRAW , RELAYOUT }
 
enum class  EventResult { IGNORED , CONSUMED , DISCARD }
 

Public Member Functions

 NumberEdit (Type type)
 
 ~NumberEdit ()
 
int GetIntValue () const
 
double GetDoubleValue () const
 
void SetValue (double val)
 
double GetMinimumValue () const
 
double GetMaximumValue () const
 
void SetLimits (double min_value, double max_value)
 
int GetDecimalPrecision ()
 
void SetDecimalPrecision (int num_digits)
 
void SetPreferredWidth (int width)
 
void SetOnValueChanged (std::function< void(double)> on_changed)
 
Size CalcPreferredSize (const LayoutContext &context, const Constraints &constraints) const override
 
Widget::DrawResult Draw (const DrawContext &context) override
 
- Public Member Functions inherited from cloudViewer::visualization::gui::Widget
 Widget ()
 
 Widget (const std::vector< std::shared_ptr< Widget >> &children)
 
virtual ~Widget ()
 
virtual void AddChild (std::shared_ptr< Widget > child)
 
virtual const std::vector< std::shared_ptr< Widget > > GetChildren () const
 
virtual const RectGetFrame () const
 Returns the frame size in pixels. More...
 
virtual void SetFrame (const Rect &f)
 
virtual const ColorGetBackgroundColor () const
 
virtual bool IsDefaultBackgroundColor () const
 
virtual void SetBackgroundColor (const Color &color)
 
virtual bool IsVisible () const
 
virtual void SetVisible (bool vis)
 
virtual bool IsEnabled () const
 
virtual void SetEnabled (bool enabled)
 
virtual void SetTooltip (const char *text)
 
virtual const char * GetTooltip () const
 
virtual Size CalcMinimumSize (const LayoutContext &context) const
 
virtual void Layout (const LayoutContext &context)
 
virtual EventResult Mouse (const MouseEvent &e)
 
virtual EventResult Key (const KeyEvent &e)
 
virtual DrawResult Tick (const TickEvent &e)
 

Additional Inherited Members

- Static Public Attributes inherited from cloudViewer::visualization::gui::Widget
static constexpr int DIM_GROW = 10000
 
- Protected Member Functions inherited from cloudViewer::visualization::gui::Widget
void DrawImGuiPushEnabledState ()
 
void DrawImGuiPopEnabledState ()
 
void DrawImGuiTooltip ()
 

Detailed Description

Definition at line 18 of file NumberEdit.h.

Member Enumeration Documentation

◆ Type

Enumerator
INT 
DOUBLE 

Definition at line 22 of file NumberEdit.h.

Constructor & Destructor Documentation

◆ NumberEdit()

cloudViewer::visualization::gui::NumberEdit::NumberEdit ( Type  type)
explicit

Definition at line 42 of file NumberEdit.cpp.

References patch::to_string(), and type.

◆ ~NumberEdit()

cloudViewer::visualization::gui::NumberEdit::~NumberEdit ( )

Definition at line 47 of file NumberEdit.cpp.

Member Function Documentation

◆ CalcPreferredSize()

Size cloudViewer::visualization::gui::NumberEdit::CalcPreferredSize ( const LayoutContext context,
const Constraints constraints 
) const
overridevirtual

Reimplemented from cloudViewer::visualization::gui::Widget.

Definition at line 90 of file NumberEdit.cpp.

References abs(), cloudViewer::utility::ceil(), context, height, INT, max(), and width.

◆ Draw()

Widget::DrawResult cloudViewer::visualization::gui::NumberEdit::Draw ( const DrawContext context)
overridevirtual

Draws the widget. If this is a Dear ImGUI widget, this is where the actual event processing happens. Return NONE if no action needs to be taken, REDRAW if the widget needs to be redrawn (e.g. its value changed), and RELAYOUT if the widget wishes to change size.

Reimplemented from cloudViewer::visualization::gui::Widget.

Definition at line 117 of file NumberEdit.cpp.

References cloudViewer::visualization::gui::colorToImgui(), context, cloudViewer::visualization::gui::Widget::DrawImGuiPopEnabledState(), cloudViewer::visualization::gui::Widget::DrawImGuiPushEnabledState(), cloudViewer::visualization::gui::Widget::DrawImGuiTooltip(), frame, cloudViewer::visualization::gui::Widget::GetFrame(), INT, cloudViewer::visualization::gui::Widget::NONE, cloudViewer::visualization::gui::Widget::REDRAW, result, SetValue(), and width.

◆ GetDecimalPrecision()

int cloudViewer::visualization::gui::NumberEdit::GetDecimalPrecision ( )

Definition at line 76 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ GetDoubleValue()

double cloudViewer::visualization::gui::NumberEdit::GetDoubleValue ( ) const

Definition at line 51 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ GetIntValue()

int cloudViewer::visualization::gui::NumberEdit::GetIntValue ( ) const

Definition at line 49 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ GetMaximumValue()

double cloudViewer::visualization::gui::NumberEdit::GetMaximumValue ( ) const

Definition at line 63 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ GetMinimumValue()

double cloudViewer::visualization::gui::NumberEdit::GetMinimumValue ( ) const

Definition at line 61 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ SetDecimalPrecision()

void cloudViewer::visualization::gui::NumberEdit::SetDecimalPrecision ( int  num_digits)

Definition at line 78 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ SetLimits()

void cloudViewer::visualization::gui::NumberEdit::SetLimits ( double  min_value,
double  max_value 
)

Definition at line 65 of file NumberEdit.cpp.

References INT, max(), and min().

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ SetOnValueChanged()

void cloudViewer::visualization::gui::NumberEdit::SetOnValueChanged ( std::function< void(double)>  on_changed)

Definition at line 86 of file NumberEdit.cpp.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ SetPreferredWidth()

void cloudViewer::visualization::gui::NumberEdit::SetPreferredWidth ( int  width)

Definition at line 82 of file NumberEdit.cpp.

References width.

Referenced by cloudViewer::visualization::gui::pybind_gui_classes().

◆ SetValue()

void cloudViewer::visualization::gui::NumberEdit::SetValue ( double  val)

Definition at line 53 of file NumberEdit.cpp.

References INT.

Referenced by Draw(), and cloudViewer::visualization::gui::pybind_gui_classes().


The documentation for this class was generated from the following files: