| 99 | } |
| 100 | |
| 101 | void ToolConfiguration::relative_width_gui(DrawingProgram& drawP, const char* label) { |
| 102 | auto& gui = drawP.world.main.g.gui; |
| 103 | auto& lockedCameraScale = drawP.controls.lockedCameraScale; |
| 104 | GUIStuff::ElementHelpers::slider_scalar_field(gui, "relstrokewidth", label, &get_stroke_size_relative_width_ref(drawP.drawTool->get_type()), 3.0f, 40.0f); |
| 105 | GUIStuff::ElementHelpers::text_button(gui, "lock brush size", lockedCameraScale.has_value() ? "Unlock Size" : "Lock Size to Zoom", { |
| 106 | .wide = true, |
| 107 | .onClick = [&] { |
| 108 | if(lockedCameraScale.has_value()) |
| 109 | lockedCameraScale = std::nullopt; |
| 110 | else |
| 111 | lockedCameraScale = drawP.world.drawData.cam.c.inverseScale; |
| 112 | } |
| 113 | }); |
| 114 | } |
no test coverage detected