Implement Select All/Deselect All layers (#242)

* Implement select all layers shortcut

* Adjust menu entry for Select All Layers

* Avoid selecting the root of the document when selecting all layers

* Implement deselect all layers

* Fix formatting

* Add extensions.json so VS Code recommends useful extensions

* Add rust-analyzer as the default Rust formatter
This commit is contained in:
Simon Desloges
2021-07-10 20:01:37 -04:00
committed by GitHub
parent faed4c586f
commit c9ef64eb7a
6 changed files with 46 additions and 4 deletions

View File

@@ -119,6 +119,16 @@ const menuEntries: MenuListEntries = [
ref: undefined,
children: [[{ label: "Menu not yet populated" }]],
},
{
label: "Layer",
ref: undefined,
children: [
[
{ label: "Select All", shortcut: ["Ctrl", "A"], action: async () => (await wasm).select_all_layers() },
{ label: "Deselect All", shortcut: ["Ctrl", "Alt", "A"], action: async () => (await wasm).deselect_all_layers() },
],
],
},
{
label: "View",
ref: undefined,

View File

@@ -113,6 +113,20 @@ pub fn undo() -> Result<(), JsValue> {
EDITOR_STATE.with(|editor| editor.borrow_mut().handle_message(DocumentMessage::Undo)).map_err(convert_error)
}
/// Select all layers
#[wasm_bindgen]
pub fn select_all_layers() -> Result<(), JsValue> {
EDITOR_STATE.with(|editor| editor.borrow_mut().handle_message(DocumentMessage::SelectAllLayers)).map_err(convert_error)
}
/// Select all layers
#[wasm_bindgen]
pub fn deselect_all_layers() -> Result<(), JsValue> {
EDITOR_STATE
.with(|editor| editor.borrow_mut().handle_message(DocumentMessage::DeselectAllLayers))
.map_err(convert_error)
}
/// Export the document
#[wasm_bindgen]
pub fn export_document() -> Result<(), JsValue> {