parent
564560c7dd
commit
a5bea53db2
|
|
@ -300,6 +300,14 @@ impl Document {
|
|||
let children = self.layer_panel(path.as_slice())?;
|
||||
Some(vec![DocumentResponse::DocumentChanged, DocumentResponse::ExpandFolder { path, children }])
|
||||
}
|
||||
Operation::ToggleVisibility { path } => {
|
||||
let _ = self.layer_mut(&path).map(|layer| {
|
||||
layer.visible = !layer.visible;
|
||||
layer.cache_dirty = true;
|
||||
});
|
||||
let children = self.layer_panel(&path.as_slice()[..path.len() - 1])?;
|
||||
Some(vec![DocumentResponse::ExpandFolder { path: vec![], children }])
|
||||
}
|
||||
};
|
||||
Ok(responses)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,4 +68,7 @@ pub enum Operation {
|
|||
DiscardWorkingFolder,
|
||||
ClearWorkingFolder,
|
||||
CommitTransaction,
|
||||
ToggleVisibility {
|
||||
path: Vec<LayerId>,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -37,7 +37,11 @@ impl Dispatcher {
|
|||
editor_state.tool_state.document_tool_data.mouse_state.position = *pos;
|
||||
}
|
||||
Event::ToggleLayerVisibility(path) => {
|
||||
log::debug!("Toggling layer visibility not yet implemented in the Editor Library");
|
||||
let document_responses = self.dispatch_operations(&mut editor_state.document, vec![Operation::ToggleVisibility { path: path.clone() }]);
|
||||
self.dispatch_response(ToolResponse::UpdateCanvas {
|
||||
document: editor_state.document.render_root(),
|
||||
});
|
||||
self.dispatch_responses(document_responses);
|
||||
}
|
||||
Event::KeyUp(_key) => (),
|
||||
Event::KeyDown(key) => {
|
||||
|
|
|
|||
Loading…
Reference in New Issue