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 current = self.node.labels.entry(key.clone()).or_insert(default);
|
||||
ComboBox::from_label(key)
|
||||
.selected_text(format!("{}", current))
|
||||
.selected_text(current.to_string())
|
||||
.show_ui(ui, |ui| {
|
||||
for choice in choices {
|
||||
ui.selectable_value(current, choice.clone(), choice);
|
||||
@ -332,7 +332,9 @@ impl EditLabelsDialog {
|
||||
self.add_key_dialog.show();
|
||||
}
|
||||
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| {
|
||||
@ -347,7 +349,8 @@ impl EditLabelsDialog {
|
||||
self.add_value_dialog.show();
|
||||
}
|
||||
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) {
|
||||
let node = self.nodes.get_mut(&from).expect("Could not find node");
|
||||
node.edges.insert(to);
|
||||
|
Loading…
Reference in New Issue
Block a user