summaryrefslogtreecommitdiff
path: root/ui/imgui_extras.h
blob: 8b87b28df1ffeba9e852fcd86cd6964e98e92fad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <imgui.h>
#include <imgui_internal.h>
#include <memory>
#include <ranges>

namespace IltGui {
	// NOLINTBEGIN(readability-identifier-naming)
	bool BeginToolbar(const char * name, ImGuiViewport * viewport, ImGuiDir dir, float axisSize,
			ImGuiWindowFlags windowFlags = 0);
	bool BeginToolbar(const char * name, ImGuiDir dir, float axisSize, ImGuiWindowFlags windowFlags = 0);
	void EndToolbar();

	void
	Text(std::ranges::contiguous_range auto text, ImGuiTextFlags flags = ImGuiTextFlags_None)
		requires requires {
			{ std::to_address(text.begin()) } -> std::convertible_to<const char *>;
			{ std::to_address(text.end()) } -> std::convertible_to<const char *>;
		}
	{
		ImGui::TextEx(std::to_address(text.begin()), std::to_address(text.end()), flags);
	}

	// NOLINTEND(readability-identifier-naming)
}