ImGUI wrapper text and combo methods shall accept std::string
in UTF8 format.
This commit is contained in:
parent
dceaf73ff3
commit
bc65827499
2 changed files with 32 additions and 2 deletions
|
@ -239,10 +239,19 @@ bool ImGuiWrapper::checkbox(const wxString &label, bool &value)
|
||||||
return ImGui::Checkbox(label_utf8.c_str(), &value);
|
return ImGui::Checkbox(label_utf8.c_str(), &value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ImGuiWrapper::text(const char *label)
|
||||||
|
{
|
||||||
|
ImGui::Text(label, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImGuiWrapper::text(const std::string &label)
|
||||||
|
{
|
||||||
|
this->text(label.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
void ImGuiWrapper::text(const wxString &label)
|
void ImGuiWrapper::text(const wxString &label)
|
||||||
{
|
{
|
||||||
auto label_utf8 = into_u8(label);
|
this->text(into_u8(label).c_str());
|
||||||
ImGui::Text(label_utf8.c_str(), NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -267,6 +276,24 @@ bool ImGuiWrapper::combo(const wxString& label, const std::vector<wxString>& opt
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool ImGuiWrapper::combo(const wxString& label, const std::vector<std::string>& options, std::string& selection)
|
||||||
|
{
|
||||||
|
// this is to force the label to the left of the widget:
|
||||||
|
text(label);
|
||||||
|
ImGui::SameLine();
|
||||||
|
|
||||||
|
if (ImGui::BeginCombo("", selection.c_str())) {
|
||||||
|
for (const std::string& option : options) {
|
||||||
|
bool is_selected = (selection.empty()) ? false : (option == selection);
|
||||||
|
if (ImGui::Selectable(option.c_str(), is_selected))
|
||||||
|
selection = option;
|
||||||
|
}
|
||||||
|
ImGui::EndCombo();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
void ImGuiWrapper::disabled_begin(bool disabled)
|
void ImGuiWrapper::disabled_begin(bool disabled)
|
||||||
{
|
{
|
||||||
wxCHECK_RET(!m_disabled, "ImGUI: Unbalanced disabled_begin() call");
|
wxCHECK_RET(!m_disabled, "ImGUI: Unbalanced disabled_begin() call");
|
||||||
|
|
|
@ -57,7 +57,10 @@ public:
|
||||||
bool input_double(const std::string &label, const double &value, const std::string &format = "%.3f");
|
bool input_double(const std::string &label, const double &value, const std::string &format = "%.3f");
|
||||||
bool input_vec3(const std::string &label, const Vec3d &value, float width, const std::string &format = "%.3f");
|
bool input_vec3(const std::string &label, const Vec3d &value, float width, const std::string &format = "%.3f");
|
||||||
bool checkbox(const wxString &label, bool &value);
|
bool checkbox(const wxString &label, bool &value);
|
||||||
|
void text(const const char *label);
|
||||||
|
void text(const std::string &label);
|
||||||
void text(const wxString &label);
|
void text(const wxString &label);
|
||||||
|
bool combo(const wxString& label, const std::vector<std::string>& options, std::string& current_selection);
|
||||||
bool combo(const wxString& label, const std::vector<wxString>& options, wxString& current_selection);
|
bool combo(const wxString& label, const std::vector<wxString>& options, wxString& current_selection);
|
||||||
|
|
||||||
void disabled_begin(bool disabled);
|
void disabled_begin(bool disabled);
|
||||||
|
|
Loading…
Reference in a new issue