@@ -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