Add cut, copy, and paste to the Edit menu (#440)

* Add cut

* Hook up edit dropdown

* Use copy message
This commit is contained in:
0HyperCube
2021-12-30 11:02:57 +00:00
committed by Keavon Chambers
parent 7b5515a66d
commit b87b527566
5 changed files with 29 additions and 3 deletions

View File

@@ -23,6 +23,7 @@ static CLIPBOARD_COUNT: u8 = Clipboard::_ClipboardCount as u8;
#[derive(PartialEq, Clone, Debug, Serialize, Deserialize)]
pub enum DocumentsMessage {
Copy(Clipboard),
Cut(Clipboard),
PasteIntoFolder {
clipboard: Clipboard,
path: Vec<LayerId>,
@@ -352,6 +353,10 @@ impl MessageHandler<DocumentsMessage, &InputPreprocessor> for DocumentsMessageHa
}
}
}
Cut(clipboard) => {
responses.push_back(Copy(clipboard).into());
responses.push_back(DeleteSelectedLayers.into());
}
Paste(clipboard) => {
let document = self.active_document();
let shallowest_common_folder = document
@@ -407,6 +412,7 @@ impl MessageHandler<DocumentsMessage, &InputPreprocessor> for DocumentsMessageHa
if self.active_document().layer_data.values().any(|data| data.selected) {
let select = actions!(DocumentsMessageDiscriminant;
Copy,
Cut,
);
common.extend(select);
}