egui_charts/ui/drawing_toolbar/utilities/
lock.rs1use crate::icons::icons;
7use crate::ui::drawing_toolbar::DrawingToolbarAction;
8use crate::ui::drawing_toolbar::components::draw_tool_button;
9use egui::Ui;
10
11pub struct LockButton;
13
14impl LockButton {
15 pub fn show(ui: &mut Ui, is_active: bool) -> Option<DrawingToolbarAction> {
18 let (icon, tooltip) = if is_active {
19 (&icons::LOCK, "Unlock all drawings")
20 } else {
21 (&icons::UNLOCK, "Lock all drawings")
22 };
23 let response = draw_tool_button(ui, icon, tooltip, is_active);
24
25 if response.clicked() {
26 log::info!("Lock all drawings clicked");
27 Some(DrawingToolbarAction::LockAllDrawings)
28 } else {
29 None
30 }
31 }
32}