ArcdpsExtension
 
Loading...
Searching...
No Matches
Widgets.h File Reference
#include "arcdps_structs.h"
#include "rapidfuzz_amalgamated.hpp"
#include <algorithm>
#include <format>
#include <functional>
#include <imgui/imgui.h>
#include <imgui/imgui_internal.h>
#include <map>
#include <ranges>
Include dependency graph for Widgets.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  ImGuiEx
 

Functions

bool ImGuiEx::Spinner (const char *label, float radius, float thickness, const ImU32 &color)
 
bool ImGuiEx::SpinnerAligned (const char *label, float radius, float thickness, const ImU32 &color, Alignment alignment)
 
void ImGuiEx::AlignedTextColumn (Alignment alignment, const char *text,...)
 
void ImGuiEx::TableHeader (const char *label, bool show_label, ImTextureID texture, Alignment alignment)
 
void ImGuiEx::AlignedProgressBar (float fraction, const ImVec2 &size_arg, const char *overlay, Alignment alignment)
 
bool ImGuiEx::BeginMenu (const char *label, bool enabled, bool &hoveredPar)
 
void ImGuiEx::BeginMenuChild (const char *child_str_id, const char *menu_label, std::function< void()> draw_func)
 
void ImGuiEx::BeginMenu (const char *menu_label, std::function< void()> draw_func)
 
bool ImGuiEx::BeginPopupContextWindow (const char *str_id, ImGuiPopupFlags popup_flags, ImGuiHoveredFlags hovered_flags)
 
void ImGuiEx::MenuItemTableColumnVisibility (ImGuiTable *table, int columnIdx)
 
bool ImGuiEx::TreeNodeEx (const char *label, ImGuiTreeNodeFlags flags, void *icon)
 
bool ImGuiEx::BeginTable (const char *str_id, int columns_count, ImGuiTableFlags flags, const ImVec2 &outer_size, float inner_width, ImGuiWindowFlags child_window_flags)
 
ImRect ImGuiEx::TableGetCurrentRowRect ()
 
bool ImGuiEx::TableIsMouseHoveringCurrentRow ()
 
bool ImGuiEx::WindowReposition (ImGuiWindow *window, Position position, const ImVec2 &cornerVector, CornerPosition cornerPosition, ImGuiID fromWindowID, CornerPosition anchorPanelCornerPosition, CornerPosition selfPanelCornerPosition)
 
template<typename E >
requires std::is_enum_v<E>
bool ImGuiEx::Selectable (E &storage, E value)
 
template<typename E , std::ranges::range R>
requires (std::is_enum_v<E> && std::same_as<std::ranges::range_value_t<R>, E>)
bool ImGuiEx::EnumCombo (const char *label, E &storage, const R &values, const std::map< E, std::function< const std::string &()> > &pPopupText={})
 
template<typename E >
requires (std::is_enum_v<E>)
bool ImGuiEx::EnumCombo (const char *label, E &storage, const std::initializer_list< E > &values, const std::map< E, std::function< const std::string &()> > &pPopupText={})
 
template<typename E >
requires std::is_enum_v<E>
bool ImGuiEx::EnumCombo (const char *label, E &storage, E lastElement, const std::map< uint64_t, std::function< const std::string &()> > &pPopupText={})
 
template<typename E >
requires std::is_enum_v<E>
bool ImGuiEx::EnumRadioButton (int &buttonStorage, E value)
 
template<typename E >
requires std::is_enum_v<E>
bool ImGuiEx::EnumRadioButton (int &buttonStorage, E value, E &storage)
 
template<typename T >
bool ImGuiEx::RadioButton (const char *label, T &v, T v_button)
 
template<class... Args>
void ImGuiEx::TextColored (const ImVec4 &col, const std::string &fmt, Args &&... args)
 
template<std::ranges::viewable_range T, typename ValueType = std::ranges::views::all_t<T>>
bool ImGuiEx::FilteredCombo (const char *pLabel, const T &pContainer, ValueType &pCurrent, bool *pPopupOpen=nullptr)
 
template<std::ranges::common_range T, typename ValueType = std::ranges::range_value_t<T>>
requires (!std::ranges::viewable_range<T>)
bool ImGuiEx::FilteredCombo (const char *pLabel, const T &pContainer, ValueType &pCurrent, bool *pPopupOpen=nullptr)