0.3.0
Loading...
Searching...
No Matches
NAV::gui::widgets Namespace Reference

Namespaces

namespace  internal
 
namespace  PinIcon
 

Data Structures

struct  DynamicInputPins
 Inputs pins which can be added dynamically. More...
 
struct  PositionWithFrame
 Position with Reference frame, used for GUI input. More...
 
struct  TimeEditFormat
 Time Edit format and system. More...
 

Enumerations

enum  InputWithUnitChange : uint8_t {
  InputWithUnitChange_None ,
  InputWithUnitChange_Input ,
  InputWithUnitChange_Unit
}
 Return value signaling that the input or the unit changed. More...
 
enum class  PositionInputLayout : uint8_t {
  SINGLE_COLUMN ,
  SINGLE_ROW ,
  TWO_ROWS
}
 Layout options for the Position input. More...
 

Functions

bool BeginHelpMarker (const char *symbol="(?)", float textWrapLength=35.0F)
 Begins a Text Help Marker, e.g. '(?)', with custom content.
 
void EndHelpMarker (bool wrapText=true)
 Ends a Text Help Marker with custom content.
 
template<typename T>
bool EnumCombo (const char *label, T &enumeration, size_t startIdx=0)
 Combo representing an enumeration.
 
template<typename T>
bool EnumCombo (const char *label, T &enumeration1, T &enumeration2, const char *previewAppendix="")
 Combo representing two enumerations. Values will be displayed appended and set to the same value.
 
template<typename T>
bool EnumComboAbbreviation (const char *label, T &enumeration, size_t startIdx=0)
 Combo representing an enumeration and use abbreviations to display in the preview.
 
template<typename T>
bool EnumComboWithToolTip (const char *label, T &enumeration, size_t startIdx=0)
 Combo representing an enumeration.
 
bool FileDialogLoad (std::string &path, const char *vName, const char *vFilters, const std::vector< std::string > &extensions, const std::filesystem::path &startPath, size_t id, const std::string &nameId, const char *buttonText="Choose")
 Shows an InputText and a button which opens a file dialog to select a path to load a file to.
 
bool FileDialogSave (std::string &path, const char *vName, const char *vFilters, const std::vector< std::string > &extensions, const std::filesystem::path &startPath, size_t id, const std::string &nameId, const char *buttonText="Choose")
 Shows an InputText and a button which opens a file dialog to select a path to save a file to.
 
void from_json (const json &j, DynamicInputPins &obj, Node *node)
 Converts the provided json object into a node object.
 
void from_json (const json &j, PositionWithFrame &position)
 Converts the provided json object.
 
void from_json (const json &j, PositionWithFrame::ReferenceFrame &refFrame)
 Converts the provided json object.
 
void from_json (const json &j, TimeEditFormat &timeEditFormat)
 Converts the provided json object.
 
void HelpMarker (const char *desc, const char *symbol="(?)")
 Text Help Marker, e.g. '(?)', with Tooltip.
 
template<typename U>
InputWithUnitChange InputDouble2LWithUnit (const char *label, float itemWidth, float unitWidth, double v[2], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDouble2WithUnit (const char *label, float itemWidth, float unitWidth, double v[2], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDouble3LWithUnit (const char *label, float itemWidth, float unitWidth, double v[3], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDouble3WithUnit (const char *label, float itemWidth, float unitWidth, double v[3], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDouble4LWithUnit (const char *label, float itemWidth, float unitWidth, double v[4], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDouble4WithUnit (const char *label, float itemWidth, float unitWidth, double v[4], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDoubleLWithUnit (const char *label, float itemWidth, float unitWidth, double *v, double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, double step=0.0, double step_fast=0.0, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputDoubleWithUnit (const char *label, float itemWidth, float unitWidth, double *v, U &combo_current_item, const char *combo_items_separated_by_zeros, double step=0.0, double step_fast=0.0, const char *format="%.6f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat2LWithUnit (const char *label, float itemWidth, float unitWidth, float v[2], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat2WithUnit (const char *label, float itemWidth, float unitWidth, float v[2], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat3LWithUnit (const char *label, float itemWidth, float unitWidth, float v[3], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat3WithUnit (const char *label, float itemWidth, float unitWidth, float v[3], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat4LWithUnit (const char *label, float itemWidth, float unitWidth, float v[4], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloat4WithUnit (const char *label, float itemWidth, float unitWidth, float v[4], U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloatLWithUnit (const char *label, float itemWidth, float unitWidth, float *v, float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, float step=0.0, float step_fast=0.0, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange InputFloatWithUnit (const char *label, float itemWidth, float unitWidth, float *v, U &combo_current_item, const char *combo_items_separated_by_zeros, float step=0.0, float step_fast=0.0, const char *format="%.3f", ImGuiInputTextFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an InputText GUI element to modify the provided value and also set its unit.
 
template<typename Scalar, typename RowKeyType, typename ColKeyType, int Rows, int Cols>
bool InputKeyedMatrix (const char *label, KeyedMatrix< Scalar, RowKeyType, ColKeyType, Rows, Cols > *matrix, float tableHeight=-1.0F, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollX|ImGuiTableFlags_ScrollY, double step=0.0, double step_fast=0.0, const char *format="%.4g", ImGuiInputTextFlags inputTextFlags=ImGuiInputTextFlags_None)
 Shows GUI elements to modify the coefficients of a matrix with.
 
template<typename Scalar, typename ColKeyType, int Cols>
bool InputKeyedRowVector (const char *label, KeyedRowVector< Scalar, ColKeyType, Cols > *matrix, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollX, double step=0.0, double step_fast=0.0, const char *format="%.4g", ImGuiInputTextFlags inputTextFlags=ImGuiInputTextFlags_None)
 Shows GUI elements to modify the coefficients of a matrix with.
 
template<typename Scalar, typename RowKeyType, int Rows>
bool InputKeyedVector (const char *label, KeyedVector< Scalar, RowKeyType, Rows > *matrix, float tableHeight=-1.0F, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollY, double step=0.0, double step_fast=0.0, const char *format="%.4g", ImGuiInputTextFlags inputTextFlags=ImGuiInputTextFlags_None)
 Shows GUI elements to modify the coefficients of a matrix with.
 
template<typename _Scalar, int _Rows, int _Cols>
bool InputMatrix (const char *label, Eigen::Matrix< _Scalar, _Rows, _Cols > *matrix, GuiMatrixViewFlags flags=GuiMatrixViewFlags_None, ImGuiTableFlags tableFlags=ImGuiTableFlags_None, float inputTextWidth=50.0F, double step=0.0, double step_fast=0.0, const char *format="%.6f", ImGuiInputTextFlags inputTextFlags=ImGuiInputTextFlags_None)
 Shows GUI elements to modify the coefficients of a matrix with.
 
template<typename Scalar, typename RowKeyType, typename ColKeyType, int Rows, int Cols>
void KeyedMatrixView (const char *label, const KeyedMatrix< Scalar, RowKeyType, ColKeyType, Rows, Cols > *matrix, float tableHeight=-1.0F, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollX|ImGuiTableFlags_ScrollY)
 Shows GUI elements to display the coefficients of a matrix.
 
template<typename Scalar, typename ColKeyType, int Cols>
void KeyedRowVectorView (const char *label, const KeyedRowVector< Scalar, ColKeyType, Cols > *matrix, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollX)
 Shows GUI elements to display the coefficients of a matrix.
 
template<typename Scalar, typename RowKeyType, int Rows>
void KeyedVectorView (const char *label, const KeyedVector< Scalar, RowKeyType, Rows > *matrix, float tableHeight=-1.0F, ImGuiTableFlags tableFlags=ImGuiTableFlags_Borders|ImGuiTableFlags_NoHostExtendX|ImGuiTableFlags_SizingFixedFit|ImGuiTableFlags_ScrollY)
 Shows GUI elements to display the coefficients of a matrix.
 
template<typename _Scalar, int _Rows, int _Cols>
void MatrixView (const char *label, const Eigen::Matrix< _Scalar, _Rows, _Cols > *matrix, GuiMatrixViewFlags flags=GuiMatrixViewFlags_None, ImGuiTableFlags tableFlags=ImGuiTableFlags_None, const char *format="%.6f")
 Shows GUI elements to display the coefficients of a matrix.
 
bool PositionInput (const char *str, PositionWithFrame &position, PositionInputLayout layout=PositionInputLayout::SINGLE_COLUMN, float itemWidth=140.0F)
 Inputs to edit an Position object.
 
template<typename U>
InputWithUnitChange SliderDouble2WithUnit (const char *label, float itemWidth, float unitWidth, double v[2], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderDouble3WithUnit (const char *label, float itemWidth, float unitWidth, double v[3], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderDouble4WithUnit (const char *label, float itemWidth, float unitWidth, double v[4], double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderDoubleWithUnit (const char *label, float itemWidth, float unitWidth, double *v, double v_min, double v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.6f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderFloat2WithUnit (const char *label, float itemWidth, float unitWidth, float v[2], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderFloat3WithUnit (const char *label, float itemWidth, float unitWidth, float v[3], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderFloat4WithUnit (const char *label, float itemWidth, float unitWidth, float v[4], float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
template<typename U>
InputWithUnitChange SliderFloatWithUnit (const char *label, float itemWidth, float unitWidth, float *v, float v_min, float v_max, U &combo_current_item, const char *combo_items_separated_by_zeros, const char *format="%.3f", ImGuiSliderFlags flags=0, int combo_popup_max_height_in_items=-1)
 Shows an Slider GUI element to modify the provided value and also set its unit.
 
void Spinner (const char *label, const ImU32 &color, float radius, float thickness=1.0F)
 Shows a Spinner to signal that work is done.
 
bool Splitter (const char *str_id, bool split_vertically, float thickness, float *size1, float *size2, float min_size1, float min_size2, float splitter_long_axis_size=-1.0F)
 Vertical or horizontal Screen Divider.
 
bool TimeEdit (const char *str_id, InsTime &insTime, TimeEditFormat &timeEditFormat, float itemWidth=170.0F)
 Inputs to edit an InsTime object.
 
void to_json (json &j, const DynamicInputPins &obj)
 Converts the provided object into json.
 
void to_json (json &j, const PositionWithFrame &position)
 Converts the provided Object into a json object.
 
void to_json (json &j, const PositionWithFrame::ReferenceFrame &refFrame)
 Converts the provided Object into a json object.
 
void to_json (json &j, const TimeEditFormat &timeEditFormat)
 Converts the provided Object into a json object.
 

Enumeration Type Documentation

◆ InputWithUnitChange

Return value signaling that the input or the unit changed.

Enumerator
InputWithUnitChange_None 

Nothing changed.

InputWithUnitChange_Input 

The Input changed.

InputWithUnitChange_Unit 

The Unit changed.

Definition at line 44 of file InputWithUnit.hpp.

◆ PositionInputLayout

enum class NAV::gui::widgets::PositionInputLayout : uint8_t
strong

Layout options for the Position input.

Enumerator
SINGLE_COLUMN 

All elements in a single column.

SINGLE_ROW 

All elements in a single row.

TWO_ROWS 

2 rows

Definition at line 84 of file PositionInput.hpp.

Function Documentation

◆ BeginHelpMarker()

bool NAV::gui::widgets::BeginHelpMarker ( const char * symbol = "(?)",
float textWrapLength = 35.0F )

Begins a Text Help Marker, e.g. '(?)', with custom content.

Parameters
[in]symbolSymbol to display
[in]textWrapLengthLength to wrap symbols after (set to 0.0F to disable)

Definition at line 28 of file HelpMarker.cpp.

◆ EndHelpMarker()

void NAV::gui::widgets::EndHelpMarker ( bool wrapText = true)

Ends a Text Help Marker with custom content.

Parameters
[in]wrapTextWether text was wrapped

Definition at line 44 of file HelpMarker.cpp.

◆ EnumCombo() [1/2]

template<typename T>
bool NAV::gui::widgets::EnumCombo ( const char * label,
T & enumeration,
size_t startIdx = 0 )

Combo representing an enumeration.

Template Parameters
TEnumeration Type
Parameters
[in]labelLabel to show beside the combo box. This has to be a unique id for ImGui.
[in]enumerationReference to the enumeration variable to select
[in]startIdxStart Index in the enum (so skip first items)
Returns
True if the value changed
Attention
The Enum type needs a last element called 'COUNT'

Definition at line 30 of file EnumCombo.hpp.

◆ EnumCombo() [2/2]

template<typename T>
bool NAV::gui::widgets::EnumCombo ( const char * label,
T & enumeration1,
T & enumeration2,
const char * previewAppendix = "" )

Combo representing two enumerations. Values will be displayed appended and set to the same value.

Template Parameters
TEnumeration Type
Parameters
[in]labelLabel to show beside the combo box. This has to be a unique id for ImGui.
[in]enumeration1Reference to the first enumeration variable to select
[in]enumeration2Reference to the second enumeration variable to set to the same value as the first one
[in]previewAppendixAdditional text to show in the combo preview
Returns
True if the value changed
Attention
The Enum type needs a last element called 'COUNT'

Definition at line 65 of file EnumCombo.hpp.

◆ EnumComboAbbreviation()

template<typename T>
bool NAV::gui::widgets::EnumComboAbbreviation ( const char * label,
T & enumeration,
size_t startIdx = 0 )

Combo representing an enumeration and use abbreviations to display in the preview.

Template Parameters
TEnumeration Type
Parameters
[in]labelLabel to show beside the combo box. This has to be a unique id for ImGui.
[in]enumerationReference to the enumeration variable to select
[in]startIdxStart Index in the enum (so skip first items)
Returns
True if the value changed
Attention
The Enum type needs a last element called 'COUNT'

Definition at line 30 of file EnumComboWithAbbreviation.hpp.

◆ EnumComboWithToolTip()

template<typename T>
bool NAV::gui::widgets::EnumComboWithToolTip ( const char * label,
T & enumeration,
size_t startIdx = 0 )

Combo representing an enumeration.

Template Parameters
TEnumeration Type
Parameters
[in]labelLabel to show beside the combo box. This has to be a unique id for ImGui.
[in]enumerationReference to the enumeration variable to select
[in]startIdxStart Index in the enum (so skip first items)
Returns
True if the value changed
Attention
The Enum type needs a last element called 'COUNT'

Definition at line 30 of file EnumComboWithTooltip.hpp.

◆ FileDialogLoad()

bool NAV::gui::widgets::FileDialogLoad ( std::string & path,
const char * vName,
const char * vFilters,
const std::vector< std::string > & extensions,
const std::filesystem::path & startPath,
size_t id,
const std::string & nameId,
const char * buttonText = "Choose" )

Shows an InputText and a button which opens a file dialog to select a path to load a file to.

Parameters
[in,out]pathString to store the path in
[in]vNameWindow title
[in]vFiltersFilter to apply for file names
[in]extensionsExtensions to filter
[in]startPathPath to the directory to display initially
[in]idUnique id for creating the dialog uid
[in]nameIdName of the node triggering the window used for logging
[in]buttonTextText to display on the button
Returns
True if the filepath was changed

Definition at line 68 of file FileDialog.cpp.

◆ FileDialogSave()

bool NAV::gui::widgets::FileDialogSave ( std::string & path,
const char * vName,
const char * vFilters,
const std::vector< std::string > & extensions,
const std::filesystem::path & startPath,
size_t id,
const std::string & nameId,
const char * buttonText = "Choose" )

Shows an InputText and a button which opens a file dialog to select a path to save a file to.

Parameters
[in,out]pathString to store the path in
[in]vNameWindow title
[in]vFiltersFilter to apply for file names
[in]extensionsExtensions to filter
[in]startPathPath to the directory to display initially
[in]idUnique id for creating the dialog uid
[in]nameIdName of the node triggering the window used for logging
[in]buttonTextText to display on the button
Returns
True if the filepath was changed

Definition at line 21 of file FileDialog.cpp.

◆ from_json() [1/4]

void NAV::gui::widgets::from_json ( const json & j,
DynamicInputPins & obj,
Node * node )

Converts the provided json object into a node object.

Parameters
[in]jJson object with the needed values
[out]objObject to fill from the json
[in,out]nodePointer to the node calling this

Definition at line 190 of file DynamicInputPins.cpp.

◆ from_json() [2/4]

void NAV::gui::widgets::from_json ( const json & j,
PositionWithFrame & position )

Converts the provided json object.

Parameters
[in]jJson object with the time system
[out]positionObject to return

Definition at line 171 of file PositionInput.cpp.

◆ from_json() [3/4]

void NAV::gui::widgets::from_json ( const json & j,
PositionWithFrame::ReferenceFrame & refFrame )

Converts the provided json object.

Parameters
[in]jJson object with the time system
[out]refFrameObject to return

Definition at line 151 of file PositionInput.cpp.

◆ from_json() [4/4]

void NAV::gui::widgets::from_json ( const json & j,
TimeEditFormat & timeEditFormat )

Converts the provided json object.

Parameters
[in]jJson object with the time system
[out]timeEditFormatObject to return

Definition at line 151 of file TimeEdit.cpp.

◆ HelpMarker()

void NAV::gui::widgets::HelpMarker ( const char * desc,
const char * symbol = "(?)" )

Text Help Marker, e.g. '(?)', with Tooltip.

Parameters
[in]descText to display as tooltip
[in]symbolSymbol to display

Definition at line 14 of file HelpMarker.cpp.

◆ InputDouble2LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble2LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[2],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 517 of file InputWithUnit.hpp.

◆ InputDouble2WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble2WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[2],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 305 of file InputWithUnit.hpp.

◆ InputDouble3LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble3LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[3],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 547 of file InputWithUnit.hpp.

◆ InputDouble3WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble3WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[3],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 325 of file InputWithUnit.hpp.

◆ InputDouble4LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble4LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[4],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 577 of file InputWithUnit.hpp.

◆ InputDouble4WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDouble4WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[4],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 345 of file InputWithUnit.hpp.

◆ InputDoubleLWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDoubleLWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double * v,
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 490 of file InputWithUnit.hpp.

◆ InputDoubleWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputDoubleWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double * v,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.6f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 285 of file InputWithUnit.hpp.

◆ InputFloat2LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat2LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[2],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 398 of file InputWithUnit.hpp.

◆ InputFloat2WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat2WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[2],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 223 of file InputWithUnit.hpp.

◆ InputFloat3LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat3LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[3],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 428 of file InputWithUnit.hpp.

◆ InputFloat3WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat3WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[3],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 243 of file InputWithUnit.hpp.

◆ InputFloat4LWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat4LWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[4],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 458 of file InputWithUnit.hpp.

◆ InputFloat4WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloat4WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[4],
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 263 of file InputWithUnit.hpp.

◆ InputFloatLWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloatLWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float * v,
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
float step = 0.0,
float step_fast = 0.0,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 371 of file InputWithUnit.hpp.

◆ InputFloatWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::InputFloatWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float * v,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
float step = 0.0,
float step_fast = 0.0,
const char * format = "%.3f",
ImGuiInputTextFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an InputText GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]flagsInputText flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 203 of file InputWithUnit.hpp.

◆ InputKeyedMatrix()

template<typename Scalar, typename RowKeyType, typename ColKeyType, int Rows, int Cols>
bool NAV::gui::widgets::InputKeyedMatrix ( const char * label,
KeyedMatrix< Scalar, RowKeyType, ColKeyType, Rows, Cols > * matrix,
float tableHeight = -1.0F,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollX | ImGuiTableFlags_ScrollY,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.4g",
ImGuiInputTextFlags inputTextFlags = ImGuiInputTextFlags_None )

Shows GUI elements to modify the coefficients of a matrix with.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
RowKeyTypeType of the key used for row lookup
ColKeyTypeType of the key used for col lookup
RowsNumber of rows, or Dynamic
ColsNumber of columns, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in,out]matrixPointer to the matrix to modify
[in]tableHeightHeight of the Table to show scrollbar afterwards (-1 means no scrollbar)
[in]tableFlagsFlags to modify the Table behaviour
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]inputTextFlagsInputText flags to modify the behavior of the input fields
Returns
True if the value was changed

Definition at line 216 of file KeyedMatrix.hpp.

◆ InputKeyedRowVector()

template<typename Scalar, typename ColKeyType, int Cols>
bool NAV::gui::widgets::InputKeyedRowVector ( const char * label,
KeyedRowVector< Scalar, ColKeyType, Cols > * matrix,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollX,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.4g",
ImGuiInputTextFlags inputTextFlags = ImGuiInputTextFlags_None )

Shows GUI elements to modify the coefficients of a matrix with.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
ColKeyTypeType of the key used for col lookup
ColsNumber of columns, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in,out]matrixPointer to the matrix to modify
[in]tableFlagsFlags to modify the Table behaviour
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]inputTextFlagsInputText flags to modify the behavior of the input fields
Returns
True if the value was changed

Definition at line 355 of file KeyedMatrix.hpp.

◆ InputKeyedVector()

template<typename Scalar, typename RowKeyType, int Rows>
bool NAV::gui::widgets::InputKeyedVector ( const char * label,
KeyedVector< Scalar, RowKeyType, Rows > * matrix,
float tableHeight = -1.0F,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollY,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.4g",
ImGuiInputTextFlags inputTextFlags = ImGuiInputTextFlags_None )

Shows GUI elements to modify the coefficients of a matrix with.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
RowKeyTypeType of the key used for row lookup
RowsNumber of rows, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in,out]matrixPointer to the matrix to modify
[in]tableHeightHeight of the Table to show scrollbar afterwards (-1 means no scrollbar)
[in]tableFlagsFlags to modify the Table behaviour
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]inputTextFlagsInputText flags to modify the behavior of the input fields
Returns
True if the value was changed

Definition at line 295 of file KeyedMatrix.hpp.

◆ InputMatrix()

template<typename _Scalar, int _Rows, int _Cols>
bool NAV::gui::widgets::InputMatrix ( const char * label,
Eigen::Matrix< _Scalar, _Rows, _Cols > * matrix,
GuiMatrixViewFlags flags = GuiMatrixViewFlags_None,
ImGuiTableFlags tableFlags = ImGuiTableFlags_None,
float inputTextWidth = 50.0F,
double step = 0.0,
double step_fast = 0.0,
const char * format = "%.6f",
ImGuiInputTextFlags inputTextFlags = ImGuiInputTextFlags_None )

Shows GUI elements to modify the coefficients of a matrix with.

Template Parameters
_ScalarData Type of the matrix
_RowsAmount of rows of the matrix
_ColsAmount of cols of the matrix
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in,out]matrixPointer to the matrix to modify
[in]flagsFlags to modify the behavior of the whole element
[in]tableFlagsFlags to modify the Table behaviour
[in]inputTextWidthWith in px of each InputText
[in]stepStep size of the InputText
[in]step_fastFast step size of the InputText
[in]formatPrintf format to display the value with
[in]inputTextFlagsInputText flags to modify the behavior of the input fields
Returns
True if the value was changed

Definition at line 105 of file Matrix.hpp.

◆ KeyedMatrixView()

template<typename Scalar, typename RowKeyType, typename ColKeyType, int Rows, int Cols>
void NAV::gui::widgets::KeyedMatrixView ( const char * label,
const KeyedMatrix< Scalar, RowKeyType, ColKeyType, Rows, Cols > * matrix,
float tableHeight = -1.0F,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollX | ImGuiTableFlags_ScrollY )

Shows GUI elements to display the coefficients of a matrix.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
RowKeyTypeType of the key used for row lookup
ColKeyTypeType of the key used for col lookup
RowsNumber of rows, or Dynamic
ColsNumber of columns, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in]matrixPointer to the matrix to display
[in]tableHeightHeight of the Table to show scrollbar afterwards (-1 means no scrollbar)
[in]tableFlagsFlags to modify the Table behaviour

Definition at line 34 of file KeyedMatrix.hpp.

◆ KeyedRowVectorView()

template<typename Scalar, typename ColKeyType, int Cols>
void NAV::gui::widgets::KeyedRowVectorView ( const char * label,
const KeyedRowVector< Scalar, ColKeyType, Cols > * matrix,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollX )

Shows GUI elements to display the coefficients of a matrix.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
ColKeyTypeType of the key used for col lookup
ColsNumber of columns, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in]matrixPointer to the matrix to display
[in]tableFlagsFlags to modify the Table behaviour

Definition at line 149 of file KeyedMatrix.hpp.

◆ KeyedVectorView()

template<typename Scalar, typename RowKeyType, int Rows>
void NAV::gui::widgets::KeyedVectorView ( const char * label,
const KeyedVector< Scalar, RowKeyType, Rows > * matrix,
float tableHeight = -1.0F,
ImGuiTableFlags tableFlags = ImGuiTableFlags_Borders | ImGuiTableFlags_NoHostExtendX | ImGuiTableFlags_SizingFixedFit | ImGuiTableFlags_ScrollY )

Shows GUI elements to display the coefficients of a matrix.

Template Parameters
ScalarNumeric type, e.g. float, double, int or std::complex<float>.
RowKeyTypeType of the key used for row lookup
RowsNumber of rows, or Dynamic
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in]matrixPointer to the matrix to display
[in]tableHeightHeight of the Table to show scrollbar afterwards (-1 means no scrollbar)
[in]tableFlagsFlags to modify the Table behaviour

Definition at line 100 of file KeyedMatrix.hpp.

◆ MatrixView()

template<typename _Scalar, int _Rows, int _Cols>
void NAV::gui::widgets::MatrixView ( const char * label,
const Eigen::Matrix< _Scalar, _Rows, _Cols > * matrix,
GuiMatrixViewFlags flags = GuiMatrixViewFlags_None,
ImGuiTableFlags tableFlags = ImGuiTableFlags_None,
const char * format = "%.6f" )

Shows GUI elements to display the coefficients of a matrix.

Template Parameters
_ScalarData Type of the matrix
_RowsAmount of rows of the matrix
_ColsAmount of cols of the matrix
Parameters
[in]labelLabel to display beside. Has to be unique (use # to hide text afterwards to append an uid)
[in]matrixPointer to the matrix to display
[in]flagsFlags to modify the behavior of the whole element
[in]tableFlagsFlags to modify the Table behaviour
[in]formatPrintf format to display the value with

Definition at line 49 of file Matrix.hpp.

◆ PositionInput()

bool NAV::gui::widgets::PositionInput ( const char * str,
PositionWithFrame & position,
PositionInputLayout layout = PositionInputLayout::SINGLE_COLUMN,
float itemWidth = 140.0F )

Inputs to edit an Position object.

Parameters
[in]strText to display near the Frame selection (Unique id for the ImGui elements)
[in,out]positionPosition and reference frame object to modify
[in]layoutLayout to use
[in]itemWidthWidth of the widget items
Returns
True if changes were made to the object

Definition at line 55 of file PositionInput.cpp.

◆ SliderDouble2WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderDouble2WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[2],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 719 of file InputWithUnit.hpp.

◆ SliderDouble3WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderDouble3WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[3],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 741 of file InputWithUnit.hpp.

◆ SliderDouble4WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderDouble4WithUnit ( const char * label,
float itemWidth,
float unitWidth,
double v[4],
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 763 of file InputWithUnit.hpp.

◆ SliderDoubleWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderDoubleWithUnit ( const char * label,
float itemWidth,
float unitWidth,
double * v,
double v_min,
double v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.6f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 697 of file InputWithUnit.hpp.

◆ SliderFloat2WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderFloat2WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[2],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 631 of file InputWithUnit.hpp.

◆ SliderFloat3WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderFloat3WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[3],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 653 of file InputWithUnit.hpp.

◆ SliderFloat4WithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderFloat4WithUnit ( const char * label,
float itemWidth,
float unitWidth,
float v[4],
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 675 of file InputWithUnit.hpp.

◆ SliderFloatWithUnit()

template<typename U>
InputWithUnitChange NAV::gui::widgets::SliderFloatWithUnit ( const char * label,
float itemWidth,
float unitWidth,
float * v,
float v_min,
float v_max,
U & combo_current_item,
const char * combo_items_separated_by_zeros,
const char * format = "%.3f",
ImGuiSliderFlags flags = 0,
int combo_popup_max_height_in_items = -1 )

Shows an Slider GUI element to modify the provided value and also set its unit.

Parameters
[in]labelLabel to display beside the input. Has to be unique (use # to hide text afterwards to append an uid)
[in]itemWidthWidth of the input element(s) + unit combo
[in]unitWidthWidth of the unit combo
[in,out]vPointer to the value to modify
[in]v_minMinimum value allowed
[in]v_maxMaximum value allowed
[in,out]combo_current_itemThe selected item in the unit combo
[in]combo_items_separated_by_zerosItems to display in the unit combo (separated by \0 and ends with \0\0)
[in]formatPrintf format to display the value with
[in]flagsSlider flags to modify the behavior
[in]combo_popup_max_height_in_itemsMaximum height of the combo in number of items
Returns
Returns if the value or unit was changed

Definition at line 609 of file InputWithUnit.hpp.

◆ Spinner()

void NAV::gui::widgets::Spinner ( const char * label,
const ImU32 & color,
float radius,
float thickness = 1.0F )

Shows a Spinner to signal that work is done.

Parameters
[in]labelLabel for the spinner. Is not displayed. Has to be unique (use # to hide text afterwards to append an uid)
[in]colorColor of the spinner
[in]radiusRadius of the spinner
[in]thicknessThickness of the spinner

Definition at line 15 of file Spinner.cpp.

◆ Splitter()

bool NAV::gui::widgets::Splitter ( const char * str_id,
bool split_vertically,
float thickness,
float * size1,
float * size2,
float min_size1,
float min_size2,
float splitter_long_axis_size = -1.0F )

Vertical or horizontal Screen Divider.

Parameters
[in]str_idUnique Id for splitter creation
[in]split_verticallyVertical or horizontal splitter
[in]thicknessThickness in Pixels
[in,out]size1Size left or above the splitter
[in,out]size2Size right or below the splitter
[in]min_size1Minimum size left or above the splitter
[in]min_size2Minimum size right or below the spliter
[in]splitter_long_axis_sizeLength of the splitter
Returns
True when the splitter is moved

Definition at line 16 of file Splitter.cpp.

◆ TimeEdit()

bool NAV::gui::widgets::TimeEdit ( const char * str_id,
InsTime & insTime,
TimeEditFormat & timeEditFormat,
float itemWidth = 170.0F )

Inputs to edit an InsTime object.

Parameters
[in]str_idUnique id for the ImGui elements
[in,out]insTimeTime object to modify
[in,out]timeEditFormatFormat to modify the time in
[in]itemWidthWidth of the widget items
Returns
True if changes were made to the object

Definition at line 52 of file TimeEdit.cpp.

◆ to_json() [1/4]

void NAV::gui::widgets::to_json ( json & j,
const DynamicInputPins & obj )

Converts the provided object into json.

Parameters
[out]jJson object which gets filled with the info
[in]objObject to convert into json

Definition at line 184 of file DynamicInputPins.cpp.

◆ to_json() [2/4]

void NAV::gui::widgets::to_json ( json & j,
const PositionWithFrame & position )

Converts the provided Object into a json object.

Parameters
[out]jReturn Json object
[in]positionObject to convert

Definition at line 157 of file PositionInput.cpp.

◆ to_json() [3/4]

void NAV::gui::widgets::to_json ( json & j,
const PositionWithFrame::ReferenceFrame & refFrame )

Converts the provided Object into a json object.

Parameters
[out]jReturn Json object
[in]refFrameObject to convert

Definition at line 146 of file PositionInput.cpp.

◆ to_json() [4/4]

void NAV::gui::widgets::to_json ( json & j,
const TimeEditFormat & timeEditFormat )

Converts the provided Object into a json object.

Parameters
[out]jReturn Json object
[in]timeEditFormatObject to convert

Definition at line 143 of file TimeEdit.cpp.