Classes | |
struct | CustomStatePluginWindowParameters |
Structure that contains parameters for State plugin window with custom style. More... | |
struct | HistogramGridLine |
helper structure for PlotCustomHistogram describing background grid line and label More... | |
struct | MultiDragRes |
Enumerations | |
enum class | PaletteChanges { None = 0 , Texture = 1 , Ranges = 2 , All = Texture | Ranges } |
enum class | PlaneWidgetFlags { None = 0 , DisableVisibility = 1 } |
Functions | |
bool | Combo (const char *label, int *idx, const std::vector< std::string > &values) |
bool | Combo (const char *label, int *idx, std::function< const char *(int)> getter, int items_count) |
bool | ListBox (const char *label, int *idx, const std::vector< std::string > &values) |
bool | InputText (const char *label, std::string &str, ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL) |
MRVIEWER_API bool | DragFloatValid (const char *label, float *value, float speed=1.0f, float min=std::numeric_limits< float >::lowest(), float max=std::numeric_limits< float >::max(), const char *format="%.3f", ImGuiSliderFlags flags=0) |
MRVIEWER_API bool | DragFloatValidLineWidth (const char *label, float *value) |
similar to ImGui::DragFloatValid but use available line width range | |
MRVIEWER_API MultiDragRes | DragFloatValid2 (const char *label, float v[2], float v_speed=1.0f, float min=std::numeric_limits< float >::lowest(), float max=std::numeric_limits< float >::max(), const char *format="%.3f", ImGuiSliderFlags flags=0, const char *(*tooltips)[2]=nullptr) |
MRVIEWER_API MultiDragRes | DragFloatValid3 (const char *label, float v[3], float v_speed=1.0f, float min=std::numeric_limits< float >::lowest(), float max=std::numeric_limits< float >::max(), const char *format="%.3f", ImGuiSliderFlags flags=0, const char *(*tooltips)[3]=nullptr) |
MRVIEWER_API bool | DragIntValid (const char *label, int *value, float speed=1, int min=std::numeric_limits< int >::lowest(), int max=std::numeric_limits< int >::max(), const char *format="%d") |
MRVIEWER_API MultiDragRes | DragIntValid3 (const char *label, int v[3], float speed=1, int min=std::numeric_limits< int >::lowest(), int max=std::numeric_limits< int >::max(), const char *format="%d", const char *(*tooltips)[3]=nullptr) |
MRVIEWER_API bool | InputIntValid (const char *label, int *value, int min, int max, int step=1, int step_fast=100, ImGuiInputTextFlags flags=0) |
template<typename Getter , typename Setter > | |
bool | Checkbox (const char *label, Getter get, Setter set) |
MRVIEWER_API void | PlotCustomHistogram (const char *str_id, std::function< float(int idx)> values_getter, std::function< void(int idx)> tooltip, std::function< void(int idx)> on_click, int values_count, int values_offset=0, float scale_min=FLT_MAX, float scale_max=FLT_MAX, ImVec2 frame_size=ImVec2(0, 0), int selectedBarId=-1, int hoveredBarId=-1, const std::vector< HistogramGridLine > &gridIndexes={}, const std::vector< HistogramGridLine > &gridValues={}) |
MRVIEWER_API bool | BeginStatePlugin (const char *label, bool *open, float width) |
begin typical state plugin window | |
MRVIEWER_API ImVec2 | GetDownPosition (const float width) |
MRVIEWER_API float | GetTitleBarHeght (float menuScaling) |
MRVIEWER_API bool | BeginCustomStatePlugin (const char *label, bool *open, const CustomStatePluginWindowParameters ¶ms={}) |
MRVIEWER_API void | EndCustomStatePlugin () |
end state plugin window with custom style | |
MRVIEWER_API bool | BeginModalNoAnimation (const char *label, bool *open=nullptr, ImGuiWindowFlags flags=0) |
starts modal window with no animation for background | |
MRVIEWER_API bool | InputIntBitSet (const char *label, int *v, const MR::BitSet &bs, int step=1, int step_fast=100, ImGuiInputTextFlags flags=0) |
same as ImGui::InputInt | |
MRVIEWER_API bool | DragInputInt (const char *label, int *value, float speed=1, int min=std::numeric_limits< int >::lowest(), int max=std::numeric_limits< int >::max(), const char *format="%d", ImGuiSliderFlags flags=ImGuiSliderFlags_None) |
Combine of ImGui::DragInt and ImGui::InputInt. | |
MRVIEWER_API bool | Link (const char *label, uint32_t color=MR::Color(60, 120, 255).getUInt32()) |
Draw text as link, calls callback on click. | |
MRVIEWER_API PaletteChanges | Palette (const char *label, MR::Palette &palette, std::string &presetName, float width, float menuScaling, bool *fixZero=nullptr, float speed=1.0f, float min=std::numeric_limits< float >::lowest(), float max=std::numeric_limits< float >::max()) |
MRVIEWER_API void | Plane (MR::PlaneWidget &planeWidget, float menuScaling, PlaneWidgetFlags flags={}) |
MRVIEWER_API void | Image (const MR::ImGuiImage &image, const ImVec2 &size, const MR::Color &multColor) |
draw image with Y-direction inversed up-down | |
MRVIEWER_API void | Image (const MR::ImGuiImage &image, const ImVec2 &size, const ImVec4 &multColor={ 1, 1, 1, 1 }) |
MRVIEWER_API MR::Vector2i | GetImagePointerCoord (const MR::ImGuiImage &image, const ImVec2 &size, const ImVec2 &imagePos) |
get image coordinates under cursor considering Y-direction flipping | |
MRVIEWER_API void | Spinner (float radius, float scaling) |
draw spinner in given place, radius with respect to scaling | |
MRVIEWER_API bool | ModalBigTitle (const char *title, float scaling) |
draw big title with close cross (i.e. for settings modal popup ) | |
MRVIEWER_API bool | ModalExitButton (float scaling) |
draw exit button with close cross (i.e. for settings modal popup ) | |
float | getExpSpeed (float val, float frac=0.01f, float min=1e-5f) |
get exponential speed for this value | |
|
strong |
return struct of ImGui::Palette
values are bits
Enumerator | |
---|---|
None | |
Texture | |
Ranges | |
All |
|
strong |
MRVIEWER_API bool ImGui::BeginCustomStatePlugin | ( | const char * | label, |
bool * | open, | ||
const CustomStatePluginWindowParameters & | params = {} ) |
begin state plugin window with custom style. if you use this function, you must call EndCustomStatePlugin to close the plugin correctly. the flags ImGuiWindowFlags_NoScrollbar and ImGuiWindow_NoScrollingWithMouse are forced in the function.
MRVIEWER_API bool ImGui::BeginModalNoAnimation | ( | const char * | label, |
bool * | open = nullptr, | ||
ImGuiWindowFlags | flags = 0 ) |
starts modal window with no animation for background
MRVIEWER_API bool ImGui::BeginStatePlugin | ( | const char * | label, |
bool * | open, | ||
float | width ) |
begin typical state plugin window
|
inline |
|
inline |
|
inline |
MRVIEWER_API bool ImGui::DragFloatValid | ( | const char * | label, |
float * | value, | ||
float | speed = 1.0f, | ||
float | min = std::numeric_limits< float >::lowest(), | ||
float | max = std::numeric_limits< float >::max(), | ||
const char * | format = "%.3f", | ||
ImGuiSliderFlags | flags = 0 ) |
similar to ImGui::DragFloat but 1) value on output is forced to be in [min,max] range; 2) tooltip about Shift/Alt is shown when the item is active, and the valid range
MRVIEWER_API MultiDragRes ImGui::DragFloatValid2 | ( | const char * | label, |
float | v[2], | ||
float | v_speed = 1.0f, | ||
float | min = std::numeric_limits< float >::lowest(), | ||
float | max = std::numeric_limits< float >::max(), | ||
const char * | format = "%.3f", | ||
ImGuiSliderFlags | flags = 0, | ||
const char *(*) | tooltips[2] = nullptr ) |
similar to ImGui::DragFloat2 - two drag-float controls in a row, but 1) returns information whether an item was deactivated; 2) calls DragFloatValid inside instead of DragFloat; 3) permits showing tooltip for each item
MRVIEWER_API MultiDragRes ImGui::DragFloatValid3 | ( | const char * | label, |
float | v[3], | ||
float | v_speed = 1.0f, | ||
float | min = std::numeric_limits< float >::lowest(), | ||
float | max = std::numeric_limits< float >::max(), | ||
const char * | format = "%.3f", | ||
ImGuiSliderFlags | flags = 0, | ||
const char *(*) | tooltips[3] = nullptr ) |
similar to ImGui::DragFloat3 - three drag-float controls in a row, but 1) returns information whether an item was deactivated; 2) calls DragFloatValid inside instead of DragFloat; 3) permits showing tooltip for each item
MRVIEWER_API bool ImGui::DragFloatValidLineWidth | ( | const char * | label, |
float * | value ) |
similar to ImGui::DragFloatValid but use available line width range
MRVIEWER_API bool ImGui::DragInputInt | ( | const char * | label, |
int * | value, | ||
float | speed = 1, | ||
int | min = std::numeric_limits< int >::lowest(), | ||
int | max = std::numeric_limits< int >::max(), | ||
const char * | format = "%d", | ||
ImGuiSliderFlags | flags = ImGuiSliderFlags_None ) |
Combine of ImGui::DragInt and ImGui::InputInt.
Value can be changed by drag or "+"/"-" buttons
MRVIEWER_API bool ImGui::DragIntValid | ( | const char * | label, |
int * | value, | ||
float | speed = 1, | ||
int | min = std::numeric_limits< int >::lowest(), | ||
int | max = std::numeric_limits< int >::max(), | ||
const char * | format = "%d" ) |
similar to ImGui::DragInt but 1) value on output is forced to be in [min,max] range; 2) tooltip about Shift/Alt is shown when the item is active, and the valid range
MRVIEWER_API MultiDragRes ImGui::DragIntValid3 | ( | const char * | label, |
int | v[3], | ||
float | speed = 1, | ||
int | min = std::numeric_limits< int >::lowest(), | ||
int | max = std::numeric_limits< int >::max(), | ||
const char * | format = "%d", | ||
const char *(*) | tooltips[3] = nullptr ) |
similar to ImGui::DragInt3 - three drag-int controls in a row, but 1) returns information whether an item was deactivated; 2) calls DragIntValid inside instead of DragInt; 3) permits showing tooltip for each item
MRVIEWER_API void ImGui::EndCustomStatePlugin | ( | ) |
end state plugin window with custom style
MRVIEWER_API ImVec2 ImGui::GetDownPosition | ( | const float | width | ) |
returns the position of the window that will be located at the bottom of the viewport for a value pivot = ( 0.0f, 1.0f )
|
inline |
get exponential speed for this value
MRVIEWER_API MR::Vector2i ImGui::GetImagePointerCoord | ( | const MR::ImGuiImage & | image, |
const ImVec2 & | size, | ||
const ImVec2 & | imagePos ) |
get image coordinates under cursor considering Y-direction flipping
MRVIEWER_API float ImGui::GetTitleBarHeght | ( | float | menuScaling | ) |
MRVIEWER_API void ImGui::Image | ( | const MR::ImGuiImage & | image, |
const ImVec2 & | size, | ||
const ImVec4 & | multColor = { 1, 1, 1, 1 } ) |
MRVIEWER_API void ImGui::Image | ( | const MR::ImGuiImage & | image, |
const ImVec2 & | size, | ||
const MR::Color & | multColor ) |
draw image with Y-direction inversed up-down
MRVIEWER_API bool ImGui::InputIntBitSet | ( | const char * | label, |
int * | v, | ||
const MR::BitSet & | bs, | ||
int | step = 1, | ||
int | step_fast = 100, | ||
ImGuiInputTextFlags | flags = 0 ) |
same as ImGui::InputInt
Input int according valid from BitSet
MRVIEWER_API bool ImGui::InputIntValid | ( | const char * | label, |
int * | value, | ||
int | min, | ||
int | max, | ||
int | step = 1, | ||
int | step_fast = 100, | ||
ImGuiInputTextFlags | flags = 0 ) |
|
inline |
MRVIEWER_API bool ImGui::Link | ( | const char * | label, |
uint32_t | color = MR::Color(60, 120, 255).getUInt32() ) |
Draw text as link, calls callback on click.
Draw text as link, colored with blue, calls callback on click
|
inline |
MRVIEWER_API bool ImGui::ModalBigTitle | ( | const char * | title, |
float | scaling ) |
draw big title with close cross (i.e. for settings modal popup )
MRVIEWER_API bool ImGui::ModalExitButton | ( | float | scaling | ) |
draw exit button with close cross (i.e. for settings modal popup )
MRVIEWER_API PaletteChanges ImGui::Palette | ( | const char * | label, |
MR::Palette & | palette, | ||
std::string & | presetName, | ||
float | width, | ||
float | menuScaling, | ||
bool * | fixZero = nullptr, | ||
float | speed = 1.0f, | ||
float | min = std::numeric_limits< float >::lowest(), | ||
float | max = std::numeric_limits< float >::max() ) |
Helper palette widget, allows to change palette ranges and filter type
can load and save palette preset.
presetName | stores the currently selected palette's preset name or empty string if the palette was edited by user |
fixZero | if present shows checkbox to fix zero symmetrical palette |
MRVIEWER_API void ImGui::Plane | ( | MR::PlaneWidget & | planeWidget, |
float | menuScaling, | ||
PlaneWidgetFlags | flags = {} ) |
Helper plane widget, allows to draw specified plain in the scene
can import plane from the scene, draw it with mouse or adjust with controls planeWidget stores the plane widget params
MRVIEWER_API void ImGui::PlotCustomHistogram | ( | const char * | str_id, |
std::function< float(int idx)> | values_getter, | ||
std::function< void(int idx)> | tooltip, | ||
std::function< void(int idx)> | on_click, | ||
int | values_count, | ||
int | values_offset = 0, | ||
float | scale_min = FLT_MAX, | ||
float | scale_max = FLT_MAX, | ||
ImVec2 | frame_size = ImVec2(0, 0), | ||
int | selectedBarId = -1, | ||
int | hoveredBarId = -1, | ||
const std::vector< HistogramGridLine > & | gridIndexes = {}, | ||
const std::vector< HistogramGridLine > & | gridValues = {} ) |
draws a histogram
selectedBarId | (if not negative) the bar to highlight as selected |
hoveredBarId | (if not negative) the bar to highlight as hovered |
MRVIEWER_API void ImGui::Spinner | ( | float | radius, |
float | scaling ) |
draw spinner in given place, radius with respect to scaling