Skip to content

Commit cd1b2d5

Browse files
committed
add ColorEdit4
1 parent 96e12b2 commit cd1b2d5

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

src/python/imgui.cpp

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,31 @@ void define_imgui(py::module_& m) {
5252
imgui_.attr("DockNodeFlags_NoResize") = py::int_(static_cast<int>(ImGuiDockNodeFlags_NoResize));
5353
imgui_.attr("DockNodeFlags_AutoHideTabBar") = py::int_(static_cast<int>(ImGuiDockNodeFlags_AutoHideTabBar));
5454

55+
imgui_.attr("ColorEditFlags_None") = py::int_(static_cast<int>(ImGuiColorEditFlags_None));
56+
imgui_.attr("ColorEditFlags_NoAlpha") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
57+
imgui_.attr("ColorEditFlags_NoPicker") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
58+
imgui_.attr("ColorEditFlags_NoOptions") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
59+
imgui_.attr("ColorEditFlags_NoSmallPreview") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
60+
imgui_.attr("ColorEditFlags_NoInputs") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
61+
imgui_.attr("ColorEditFlags_NoTooltip") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
62+
imgui_.attr("ColorEditFlags_NoLabel") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
63+
imgui_.attr("ColorEditFlags_NoSidePreview") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
64+
imgui_.attr("ColorEditFlags_NoDragDrop") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
65+
imgui_.attr("ColorEditFlags_NoBorder") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
66+
imgui_.attr("ColorEditFlags_AlphaBar") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
67+
imgui_.attr("ColorEditFlags_AlphaPreview") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
68+
imgui_.attr("ColorEditFlags_AlphaPreviewHalf") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
69+
imgui_.attr("ColorEditFlags_HDR") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
70+
imgui_.attr("ColorEditFlags_DisplayRGB") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
71+
imgui_.attr("ColorEditFlags_DisplayHSV") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
72+
imgui_.attr("ColorEditFlags_DisplayHex") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
73+
imgui_.attr("ColorEditFlags_Uint8") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
74+
imgui_.attr("ColorEditFlags_Float") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
75+
imgui_.attr("ColorEditFlags_PickerHueBar") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
76+
imgui_.attr("ColorEditFlags_PickerHueWheel") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
77+
imgui_.attr("ColorEditFlags_InputRGB") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
78+
imgui_.attr("ColorEditFlags_InputHSV") = py::int_(static_cast<int>(ImGuiColorEditFlags_NoAlpha));
79+
5580
// macros
5681
imgui_.def("IM_COL32", [](int r, int g, int b, int a) { return IM_COL32(r, g, b, a); }, py::arg("r"), py::arg("g"), py::arg("b"), py::arg("a"));
5782

@@ -187,6 +212,18 @@ void define_imgui(py::module_& m) {
187212
imgui_.def("end_tab_item", &ImGui::EndTabItem);
188213
imgui_.def("tab_item_button", &ImGui::TabItemButton, py::arg("label"), py::arg("flags") = 0);
189214

215+
// color
216+
imgui_.def(
217+
"color_edit4",
218+
[](const std::string& label, const Eigen::Vector4f& color, int flags) {
219+
Eigen::Vector4f col = color;
220+
const bool changed = ImGui::ColorEdit4(label.c_str(), col.data(), flags);
221+
return std::make_pair(changed, col);
222+
},
223+
py::arg("label"),
224+
py::arg("color"),
225+
py::arg("flags") = 0);
226+
190227
imgui_.def("show_demo_window", [] { ImGui::ShowDemoWindow(); });
191228

192229
// Docking

0 commit comments

Comments
 (0)