Delete label keys and values
This commit is contained in:
parent
6940d46d85
commit
079c4c9004
@ -274,7 +274,7 @@ impl EditNodeDialog {
|
|||||||
let default = choices.iter().next().unwrap().clone();
|
let default = choices.iter().next().unwrap().clone();
|
||||||
let current = self.node.labels.entry(key.clone()).or_insert(default);
|
let current = self.node.labels.entry(key.clone()).or_insert(default);
|
||||||
ComboBox::from_label(key)
|
ComboBox::from_label(key)
|
||||||
.selected_text(format!("{}", current))
|
.selected_text(current.to_string())
|
||||||
.show_ui(ui, |ui| {
|
.show_ui(ui, |ui| {
|
||||||
for choice in choices {
|
for choice in choices {
|
||||||
ui.selectable_value(current, choice.clone(), choice);
|
ui.selectable_value(current, choice.clone(), choice);
|
||||||
@ -332,7 +332,9 @@ impl EditLabelsDialog {
|
|||||||
self.add_key_dialog.show();
|
self.add_key_dialog.show();
|
||||||
}
|
}
|
||||||
if ui.button("-").clicked() {
|
if ui.button("-").clicked() {
|
||||||
todo!();
|
board.remove_label_key(selected_label_key);
|
||||||
|
*selected_label_key = String::new();
|
||||||
|
*selected_label_value = String::new();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
col[1].group(|ui| {
|
col[1].group(|ui| {
|
||||||
@ -347,7 +349,8 @@ impl EditLabelsDialog {
|
|||||||
self.add_value_dialog.show();
|
self.add_value_dialog.show();
|
||||||
}
|
}
|
||||||
if ui.button("-").clicked() {
|
if ui.button("-").clicked() {
|
||||||
todo!();
|
board.remove_label_value(selected_label_key, selected_label_value);
|
||||||
|
*selected_label_value = String::new();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
10
src/lib.rs
10
src/lib.rs
@ -43,6 +43,16 @@ impl Board {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn remove_label_key(&mut self, key: &str) {
|
||||||
|
self.labels.remove(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn remove_label_value(&mut self, key: &str, value: &str) {
|
||||||
|
if let Some(l) = self.labels.get_mut(key) {
|
||||||
|
l.remove(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn add_edge(&mut self, from: usize, to: usize) {
|
pub fn add_edge(&mut self, from: usize, to: usize) {
|
||||||
let node = self.nodes.get_mut(&from).expect("Could not find node");
|
let node = self.nodes.get_mut(&from).expect("Could not find node");
|
||||||
node.edges.insert(to);
|
node.edges.insert(to);
|
||||||
|
Loading…
Reference in New Issue
Block a user