diff --git a/editor/src/communication/dispatcher.rs b/editor/src/communication/dispatcher.rs index c41deb31..34f881e5 100644 --- a/editor/src/communication/dispatcher.rs +++ b/editor/src/communication/dispatcher.rs @@ -1,6 +1,6 @@ use crate::message_prelude::*; -pub use crate::document::DocumentsMessageHandler; +pub use crate::document::PortfolioMessageHandler; pub use crate::input::{InputMapper, InputPreprocessor}; pub use crate::tool::ToolMessageHandler; @@ -13,7 +13,7 @@ pub struct Dispatcher { input_mapper: InputMapper, global_message_handler: GlobalMessageHandler, tool_message_handler: ToolMessageHandler, - documents_message_handler: DocumentsMessageHandler, + portfolio_message_handler: PortfolioMessageHandler, messages: VecDeque, pub responses: Vec, } @@ -22,8 +22,8 @@ pub struct Dispatcher { // The last occurrence of the message in the message queue is sufficient to ensure correctness // In addition, these messages do not change any state in the backend (aside from caches) const SIDE_EFFECT_FREE_MESSAGES: &[MessageDiscriminant] = &[ - MessageDiscriminant::Documents(DocumentsMessageDiscriminant::Document(DocumentMessageDiscriminant::RenderDocument)), - MessageDiscriminant::Documents(DocumentsMessageDiscriminant::Document(DocumentMessageDiscriminant::FolderChanged)), + MessageDiscriminant::Portfolio(PortfolioMessageDiscriminant::Document(DocumentMessageDiscriminant::RenderDocument)), + MessageDiscriminant::Portfolio(PortfolioMessageDiscriminant::Document(DocumentMessageDiscriminant::FolderChanged)), MessageDiscriminant::Frontend(FrontendMessageDiscriminant::UpdateLayer), MessageDiscriminant::Frontend(FrontendMessageDiscriminant::DisplayFolderTreeStructure), MessageDiscriminant::Frontend(FrontendMessageDiscriminant::UpdateOpenDocumentsList), @@ -47,11 +47,11 @@ impl Dispatcher { self.log_message(&message); match message { NoOp => (), - Documents(message) => self.documents_message_handler.process_action(message, &self.input_preprocessor, &mut self.messages), + Portfolio(message) => self.portfolio_message_handler.process_action(message, &self.input_preprocessor, &mut self.messages), Global(message) => self.global_message_handler.process_action(message, (), &mut self.messages), Tool(message) => self .tool_message_handler - .process_action(message, (self.documents_message_handler.active_document(), &self.input_preprocessor), &mut self.messages), + .process_action(message, (self.portfolio_message_handler.active_document(), &self.input_preprocessor), &mut self.messages), Frontend(message) => self.responses.push(message), InputPreprocessor(message) => self.input_preprocessor.process_action(message, (), &mut self.messages), InputMapper(message) => { @@ -69,7 +69,7 @@ impl Dispatcher { list.extend(self.input_mapper.actions()); list.extend(self.global_message_handler.actions()); list.extend(self.tool_message_handler.actions()); - list.extend(self.documents_message_handler.actions()); + list.extend(self.portfolio_message_handler.actions()); list } @@ -129,14 +129,14 @@ mod test { init_logger(); let mut editor = create_editor_with_three_layers(); - let document_before_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); - editor.handle_message(DocumentsMessage::Copy(User)); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + let document_before_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); + editor.handle_message(PortfolioMessage::Copy(User)); + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - let document_after_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_after_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let layers_before_copy = document_before_copy.root.as_folder().unwrap().layers(); let layers_after_copy = document_after_copy.root.as_folder().unwrap().layers(); @@ -163,18 +163,18 @@ mod test { init_logger(); let mut editor = create_editor_with_three_layers(); - let document_before_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_before_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let shape_id = document_before_copy.root.as_folder().unwrap().layer_ids[1]; editor.handle_message(DocumentMessage::SetSelectedLayers(vec![vec![shape_id]])); - editor.handle_message(DocumentsMessage::Copy(User)); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + editor.handle_message(PortfolioMessage::Copy(User)); + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - let document_after_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_after_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let layers_before_copy = document_before_copy.root.as_folder().unwrap().layers(); let layers_after_copy = document_after_copy.root.as_folder().unwrap().layers(); @@ -206,7 +206,7 @@ mod test { editor.handle_message(DocumentMessage::CreateEmptyFolder(vec![])); - let document_before_added_shapes = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_before_added_shapes = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let folder_id = document_before_added_shapes.root.as_folder().unwrap().layer_ids[FOLDER_INDEX]; // TODO: This adding of a Line and Pen should be rewritten using the corresponding functions in EditorTestUtils. @@ -228,22 +228,22 @@ mod test { editor.handle_message(DocumentMessage::SetSelectedLayers(vec![vec![folder_id]])); - let document_before_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_before_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); - editor.handle_message(DocumentsMessage::Copy(User)); + editor.handle_message(PortfolioMessage::Copy(User)); editor.handle_message(DocumentMessage::DeleteSelectedLayers); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - let document_after_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_after_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let layers_before_copy = document_before_copy.root.as_folder().unwrap().layers(); let layers_after_copy = document_after_copy.root.as_folder().unwrap().layers(); @@ -294,26 +294,26 @@ mod test { const SHAPE_INDEX: usize = 1; const RECT_INDEX: usize = 0; - let document_before_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_before_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let rect_id = document_before_copy.root.as_folder().unwrap().layer_ids[RECT_INDEX]; let ellipse_id = document_before_copy.root.as_folder().unwrap().layer_ids[ELLIPSE_INDEX]; editor.handle_message(DocumentMessage::SetSelectedLayers(vec![vec![rect_id], vec![ellipse_id]])); - editor.handle_message(DocumentsMessage::Copy(User)); + editor.handle_message(PortfolioMessage::Copy(User)); editor.handle_message(DocumentMessage::DeleteSelectedLayers); editor.draw_rect(0., 800., 12., 200.); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - editor.handle_message(DocumentsMessage::PasteIntoFolder { + editor.handle_message(PortfolioMessage::PasteIntoFolder { clipboard: User, path: vec![], insert_index: -1, }); - let document_after_copy = editor.dispatcher.documents_message_handler.active_document().graphene_document.clone(); + let document_after_copy = editor.dispatcher.portfolio_message_handler.active_document().graphene_document.clone(); let layers_before_copy = document_before_copy.root.as_folder().unwrap().layers(); let layers_after_copy = document_after_copy.root.as_folder().unwrap().layers(); @@ -343,7 +343,7 @@ mod test { fn map_to_vec(paths: Vec<&[LayerId]>) -> Vec> { paths.iter().map(|layer| layer.to_vec()).collect::>() } - let sorted_layers = map_to_vec(editor.dispatcher.documents_message_handler.active_document().all_layers_sorted()); + let sorted_layers = map_to_vec(editor.dispatcher.portfolio_message_handler.active_document().all_layers_sorted()); println!("Sorted layers: {:?}", sorted_layers); let verify_order = |handler: &mut DocumentMessageHandler| { @@ -357,15 +357,15 @@ mod test { editor.handle_message(DocumentMessage::SetSelectedLayers(sorted_layers[..2].to_vec())); editor.handle_message(DocumentMessage::ReorderSelectedLayers(1)); - let (all, non_selected, selected) = verify_order(editor.dispatcher.documents_message_handler.active_document_mut()); + let (all, non_selected, selected) = verify_order(editor.dispatcher.portfolio_message_handler.active_document_mut()); assert_eq!(all, non_selected.into_iter().chain(selected.into_iter()).collect::>()); editor.handle_message(DocumentMessage::ReorderSelectedLayers(-1)); - let (all, non_selected, selected) = verify_order(editor.dispatcher.documents_message_handler.active_document_mut()); + let (all, non_selected, selected) = verify_order(editor.dispatcher.portfolio_message_handler.active_document_mut()); assert_eq!(all, selected.into_iter().chain(non_selected.into_iter()).collect::>()); editor.handle_message(DocumentMessage::ReorderSelectedLayers(i32::MAX)); - let (all, non_selected, selected) = verify_order(editor.dispatcher.documents_message_handler.active_document_mut()); + let (all, non_selected, selected) = verify_order(editor.dispatcher.portfolio_message_handler.active_document_mut()); assert_eq!(all, non_selected.into_iter().chain(selected.into_iter()).collect::>()); } } diff --git a/editor/src/communication/message.rs b/editor/src/communication/message.rs index 6c7d396a..a3193d77 100644 --- a/editor/src/communication/message.rs +++ b/editor/src/communication/message.rs @@ -21,7 +21,7 @@ where pub enum Message { NoOp, #[child] - Documents(DocumentsMessage), + Portfolio(PortfolioMessage), #[child] Global(GlobalMessage), #[child] diff --git a/editor/src/document/document_file.rs b/editor/src/document/document_file.rs index fb3c9b86..c9e99052 100644 --- a/editor/src/document/document_file.rs +++ b/editor/src/document/document_file.rs @@ -113,7 +113,7 @@ impl Default for DocumentMessageHandler { } } -#[impl_message(Message, DocumentsMessage, Document)] +#[impl_message(Message, PortfolioMessage, Document)] #[derive(PartialEq, Clone, Debug, Serialize, Deserialize)] pub enum DocumentMessage { #[child] @@ -436,7 +436,7 @@ impl DocumentMessageHandler { self.document_undo_history.push((self.graphene_document.clone(), self.layer_metadata.clone())); // Push the UpdateOpenDocumentsList message to the bus in order to update the save status of the open documents - responses.push_back(DocumentsMessage::UpdateOpenDocumentsList.into()); + responses.push_back(PortfolioMessage::UpdateOpenDocumentsList.into()); } pub fn rollback(&mut self, responses: &mut VecDeque) -> Result<(), EditorError> { @@ -447,7 +447,7 @@ impl DocumentMessageHandler { pub fn undo(&mut self, responses: &mut VecDeque) -> Result<(), EditorError> { // Push the UpdateOpenDocumentsList message to the bus in order to update the save status of the open documents - responses.push_back(DocumentsMessage::UpdateOpenDocumentsList.into()); + responses.push_back(PortfolioMessage::UpdateOpenDocumentsList.into()); match self.document_undo_history.pop() { Some((document, layer_metadata)) => { @@ -465,7 +465,7 @@ impl DocumentMessageHandler { pub fn redo(&mut self, responses: &mut VecDeque) -> Result<(), EditorError> { // Push the UpdateOpenDocumentsList message to the bus in order to update the save status of the open documents - responses.push_back(DocumentsMessage::UpdateOpenDocumentsList.into()); + responses.push_back(PortfolioMessage::UpdateOpenDocumentsList.into()); match self.document_redo_history.pop() { Some((document, layer_metadata)) => { @@ -611,9 +611,9 @@ impl MessageHandler for DocumentMessageHand } SaveDocument => { self.set_save_state(true); - responses.push_back(DocumentsMessage::AutoSaveActiveDocument.into()); + responses.push_back(PortfolioMessage::AutoSaveActiveDocument.into()); // Update the save status of the just saved document - responses.push_back(DocumentsMessage::UpdateOpenDocumentsList.into()); + responses.push_back(PortfolioMessage::UpdateOpenDocumentsList.into()); let name = match self.name.ends_with(FILE_SAVE_SUFFIX) { true => self.name.clone(), @@ -643,12 +643,12 @@ impl MessageHandler for DocumentMessageHand new_folder_path.push(generate_uuid()); - responses.push_back(DocumentsMessage::Copy(Clipboard::System).into()); + responses.push_back(PortfolioMessage::Copy(Clipboard::System).into()); responses.push_back(DocumentMessage::DeleteSelectedLayers.into()); responses.push_back(DocumentOperation::CreateFolder { path: new_folder_path.clone() }.into()); responses.push_back(DocumentMessage::ToggleLayerExpansion(new_folder_path.clone()).into()); responses.push_back( - DocumentsMessage::PasteIntoFolder { + PortfolioMessage::PasteIntoFolder { clipboard: Clipboard::System, path: new_folder_path.clone(), insert_index: -1, @@ -663,9 +663,9 @@ impl MessageHandler for DocumentMessageHand let message_buffer = [ // Copy them DocumentMessage::SetSelectedLayers(to_select).into(), - DocumentsMessage::Copy(Clipboard::System).into(), + PortfolioMessage::Copy(Clipboard::System).into(), // Paste them into the folder above - DocumentsMessage::PasteIntoFolder { + PortfolioMessage::PasteIntoFolder { clipboard: Clipboard::System, path: folder_path[..folder_path.len() - 1].to_vec(), insert_index: -1, @@ -939,10 +939,10 @@ impl MessageHandler for DocumentMessageHand return; } let insert_index = self.update_insert_index(&layers, &path, insert_index).unwrap(); - responses.push_back(DocumentsMessage::Copy(Clipboard::System).into()); + responses.push_back(PortfolioMessage::Copy(Clipboard::System).into()); responses.push_back(DocumentMessage::DeleteSelectedLayers.into()); responses.push_back( - DocumentsMessage::PasteIntoFolder { + PortfolioMessage::PasteIntoFolder { clipboard: Clipboard::System, path, insert_index, diff --git a/editor/src/document/mod.rs b/editor/src/document/mod.rs index 871ecc00..6dd71247 100644 --- a/editor/src/document/mod.rs +++ b/editor/src/document/mod.rs @@ -17,7 +17,7 @@ pub use movement_handler::{MovementMessage, MovementMessageDiscriminant}; #[doc(inline)] pub use overlay_message_handler::{OverlayMessage, OverlayMessageDiscriminant}; #[doc(inline)] -pub use portfolio_message_handler::{Clipboard, DocumentsMessage, DocumentsMessageDiscriminant, DocumentsMessageHandler}; +pub use portfolio_message_handler::{Clipboard, PortfolioMessage, PortfolioMessageDiscriminant, PortfolioMessageHandler}; #[doc(inline)] pub use artboard_message_handler::{ArtboardMessage, ArtboardMessageDiscriminant}; diff --git a/editor/src/document/portfolio_message_handler.rs b/editor/src/document/portfolio_message_handler.rs index 7a29cb74..598df670 100644 --- a/editor/src/document/portfolio_message_handler.rs +++ b/editor/src/document/portfolio_message_handler.rs @@ -21,9 +21,9 @@ pub enum Clipboard { const CLIPBOARD_COUNT: u8 = Clipboard::_ClipboardCount as u8; -#[impl_message(Message, Documents)] +#[impl_message(Message, Portfolio)] #[derive(PartialEq, Clone, Debug, Serialize, Deserialize)] -pub enum DocumentsMessage { +pub enum PortfolioMessage { Copy(Clipboard), Cut(Clipboard), PasteIntoFolder { @@ -58,7 +58,7 @@ pub enum DocumentsMessage { } #[derive(Debug, Clone)] -pub struct DocumentsMessageHandler { +pub struct PortfolioMessageHandler { documents: HashMap, document_ids: Vec, active_document_id: u64, @@ -71,7 +71,7 @@ pub struct CopyBufferEntry { layer_metadata: LayerMetadata, } -impl DocumentsMessageHandler { +impl PortfolioMessageHandler { pub fn active_document(&self) -> &DocumentMessageHandler { self.documents.get(&self.active_document_id).unwrap() } @@ -107,7 +107,7 @@ impl DocumentsMessageHandler { fn load_document(&mut self, new_document: DocumentMessageHandler, document_id: u64, replace_first_empty: bool, responses: &mut VecDeque) { // Special case when loading a document on an empty page if replace_first_empty && self.active_document().is_unmodified_default() { - responses.push_back(DocumentsMessage::CloseDocument(self.active_document_id).into()); + responses.push_back(PortfolioMessage::CloseDocument(self.active_document_id).into()); let active_document_index = self .document_ids @@ -145,7 +145,7 @@ impl DocumentsMessageHandler { responses.push_back(FrontendMessage::UpdateOpenDocumentsList { open_documents }.into()); - responses.push_back(DocumentsMessage::SelectDocument(document_id).into()); + responses.push_back(PortfolioMessage::SelectDocument(document_id).into()); } // Returns an iterator over the open documents in order @@ -158,7 +158,7 @@ impl DocumentsMessageHandler { } } -impl Default for DocumentsMessageHandler { +impl Default for PortfolioMessageHandler { fn default() -> Self { let mut documents_map: HashMap = HashMap::with_capacity(1); let starting_key = generate_uuid(); @@ -175,10 +175,10 @@ impl Default for DocumentsMessageHandler { } } -impl MessageHandler for DocumentsMessageHandler { - fn process_action(&mut self, message: DocumentsMessage, ipp: &InputPreprocessor, responses: &mut VecDeque) { +impl MessageHandler for PortfolioMessageHandler { + fn process_action(&mut self, message: PortfolioMessage, ipp: &InputPreprocessor, responses: &mut VecDeque) { use DocumentMessage::*; - use DocumentsMessage::*; + use PortfolioMessage::*; match message { RequestAboutGraphiteDialog => { responses.push_back(FrontendMessage::DisplayAboutGraphiteDialog.into()); @@ -187,7 +187,7 @@ impl MessageHandler for DocumentsMessageHa SelectDocument(id) => { let active_document = self.active_document(); if !active_document.is_saved() { - responses.push_back(DocumentsMessage::AutoSaveDocument(self.active_document_id).into()); + responses.push_back(PortfolioMessage::AutoSaveDocument(self.active_document_id).into()); } self.active_document_id = id; responses.push_back(FrontendMessage::SetActiveDocument { document_id: id }.into()); @@ -199,16 +199,16 @@ impl MessageHandler for DocumentsMessageHa responses.push_back(ToolMessage::DocumentIsDirty.into()); } CloseActiveDocumentWithConfirmation => { - responses.push_back(DocumentsMessage::CloseDocumentWithConfirmation(self.active_document_id).into()); + responses.push_back(PortfolioMessage::CloseDocumentWithConfirmation(self.active_document_id).into()); } CloseDocumentWithConfirmation(id) => { let target_document = self.documents.get(&id).unwrap(); if target_document.is_saved() { - responses.push_back(DocumentsMessage::CloseDocument(id).into()); + responses.push_back(PortfolioMessage::CloseDocument(id).into()); } else { responses.push_back(FrontendMessage::DisplayConfirmationToCloseDocument { document_id: id }.into()); // Select the document being closed - responses.push_back(DocumentsMessage::SelectDocument(id).into()); + responses.push_back(PortfolioMessage::SelectDocument(id).into()); } } CloseAllDocumentsWithConfirmation => { @@ -257,7 +257,7 @@ impl MessageHandler for DocumentsMessageHa }) }) .collect::>(); - // Update the list of new documents on the front end, active tab, and ensure that document renders + responses.push_back(FrontendMessage::UpdateOpenDocumentsList { open_documents }.into()); responses.push_back(FrontendMessage::SetActiveDocument { document_id: self.active_document_id }.into()); responses.push_back(FrontendMessage::RemoveAutoSaveDocument { document_id: id }.into()); @@ -279,7 +279,7 @@ impl MessageHandler for DocumentsMessageHa } OpenDocumentFile(document_name, document) => { responses.push_back( - DocumentsMessage::OpenDocumentFileWithId { + PortfolioMessage::OpenDocumentFileWithId { document, document_name, document_id: generate_uuid(), @@ -339,19 +339,19 @@ impl MessageHandler for DocumentsMessageHa .into(), ) } - AutoSaveActiveDocument => responses.push_back(DocumentsMessage::AutoSaveDocument(self.active_document_id).into()), + AutoSaveActiveDocument => responses.push_back(PortfolioMessage::AutoSaveDocument(self.active_document_id).into()), NextDocument => { let current_index = self.document_index(self.active_document_id); let next_index = (current_index + 1) % self.document_ids.len(); let next_id = self.document_ids[next_index]; - responses.push_back(DocumentsMessage::SelectDocument(next_id).into()); + responses.push_back(PortfolioMessage::SelectDocument(next_id).into()); } PrevDocument => { let len = self.document_ids.len(); let current_index = self.document_index(self.active_document_id); let prev_index = (current_index + len - 1) % len; let prev_id = self.document_ids[prev_index]; - responses.push_back(DocumentsMessage::SelectDocument(prev_id).into()); + responses.push_back(PortfolioMessage::SelectDocument(prev_id).into()); } Copy(clipboard) => { // We can't use `self.active_document()` because it counts as an immutable borrow of the entirety of `self` @@ -427,7 +427,7 @@ impl MessageHandler for DocumentsMessageHa } } fn actions(&self) -> ActionList { - let mut common = actions!(DocumentsMessageDiscriminant; + let mut common = actions!(PortfolioMessageDiscriminant; NewDocument, CloseActiveDocumentWithConfirmation, CloseAllDocumentsWithConfirmation, @@ -439,7 +439,7 @@ impl MessageHandler for DocumentsMessageHa ); if self.active_document().layer_metadata.values().any(|data| data.selected) { - let select = actions!(DocumentsMessageDiscriminant; + let select = actions!(PortfolioMessageDiscriminant; Copy, Cut, ); diff --git a/editor/src/input/input_mapper.rs b/editor/src/input/input_mapper.rs index f15425ea..1fc87a8c 100644 --- a/editor/src/input/input_mapper.rs +++ b/editor/src/input/input_mapper.rs @@ -134,7 +134,7 @@ impl Default for Mapping { // it as an available action in the respective message handler file (such as the bottom of `document_message_handler.rs`) let mappings = mapping![ // Higher priority than entries in sections below - entry! {action=DocumentsMessage::Paste(User), key_down=KeyV, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::Paste(User), key_down=KeyV, modifiers=[KeyControl]}, // Transform layers entry! {action=TransformLayerMessage::ApplyOperation, key_down=KeyEnter}, entry! {action=TransformLayerMessage::ApplyOperation, key_down=Lmb}, @@ -221,7 +221,7 @@ impl Default for Mapping { // Editor Actions entry! {action=FrontendMessage::OpenDocumentBrowse, key_down=KeyO, modifiers=[KeyControl]}, // Document Actions - entry! {action=DocumentsMessage::Paste(User), key_down=KeyV, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::Paste(User), key_down=KeyV, modifiers=[KeyControl]}, entry! {action=DocumentMessage::Redo, key_down=KeyZ, modifiers=[KeyControl, KeyShift]}, entry! {action=DocumentMessage::Undo, key_down=KeyZ, modifiers=[KeyControl]}, entry! {action=DocumentMessage::DeselectAllLayers, key_down=KeyA, modifiers=[KeyControl, KeyAlt]}, @@ -260,14 +260,14 @@ impl Default for Mapping { entry! {action=MovementMessage::TranslateCanvasByViewportFraction(DVec2::new(0., 1.)), key_down=KeyPageUp}, entry! {action=MovementMessage::TranslateCanvasByViewportFraction(DVec2::new(0., -1.)), key_down=KeyPageDown}, // Document actions - entry! {action=DocumentsMessage::NewDocument, key_down=KeyN, modifiers=[KeyControl]}, - entry! {action=DocumentsMessage::NextDocument, key_down=KeyTab, modifiers=[KeyControl]}, - entry! {action=DocumentsMessage::PrevDocument, key_down=KeyTab, modifiers=[KeyControl, KeyShift]}, - entry! {action=DocumentsMessage::CloseAllDocumentsWithConfirmation, key_down=KeyW, modifiers=[KeyControl, KeyAlt]}, - entry! {action=DocumentsMessage::CloseActiveDocumentWithConfirmation, key_down=KeyW, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::NewDocument, key_down=KeyN, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::NextDocument, key_down=KeyTab, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::PrevDocument, key_down=KeyTab, modifiers=[KeyControl, KeyShift]}, + entry! {action=PortfolioMessage::CloseAllDocumentsWithConfirmation, key_down=KeyW, modifiers=[KeyControl, KeyAlt]}, + entry! {action=PortfolioMessage::CloseActiveDocumentWithConfirmation, key_down=KeyW, modifiers=[KeyControl]}, entry! {action=DocumentMessage::DuplicateSelectedLayers, key_down=KeyD, modifiers=[KeyControl]}, - entry! {action=DocumentsMessage::Copy(User), key_down=KeyC, modifiers=[KeyControl]}, - entry! {action=DocumentsMessage::Cut(User), key_down=KeyX, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::Copy(User), key_down=KeyC, modifiers=[KeyControl]}, + entry! {action=PortfolioMessage::Cut(User), key_down=KeyX, modifiers=[KeyControl]}, entry! {action=DocumentMessage::GroupSelectedLayers, key_down=KeyG, modifiers=[KeyControl]}, entry! {action=DocumentMessage::UngroupSelectedLayers, key_down=KeyG, modifiers=[KeyControl, KeyShift]}, // Nudging diff --git a/editor/src/lib.rs b/editor/src/lib.rs index a976d379..4ff23362 100644 --- a/editor/src/lib.rs +++ b/editor/src/lib.rs @@ -60,9 +60,9 @@ pub mod message_prelude { pub use crate::document::Clipboard; pub use crate::document::{ArtboardMessage, ArtboardMessageDiscriminant}; pub use crate::document::{DocumentMessage, DocumentMessageDiscriminant}; - pub use crate::document::{DocumentsMessage, DocumentsMessageDiscriminant}; pub use crate::document::{MovementMessage, MovementMessageDiscriminant}; pub use crate::document::{OverlayMessage, OverlayMessageDiscriminant}; + pub use crate::document::{PortfolioMessage, PortfolioMessageDiscriminant}; pub use crate::document::{TransformLayerMessage, TransformLayerMessageDiscriminant}; pub use crate::frontend::{FrontendMessage, FrontendMessageDiscriminant}; pub use crate::global::{GlobalMessage, GlobalMessageDiscriminant}; diff --git a/frontend/wasm/src/api.rs b/frontend/wasm/src/api.rs index 14426984..069d5726 100644 --- a/frontend/wasm/src/api.rs +++ b/frontend/wasm/src/api.rs @@ -143,32 +143,32 @@ impl JsEditorHandle { } pub fn select_document(&self, document_id: u64) { - let message = DocumentsMessage::SelectDocument(document_id); + let message = PortfolioMessage::SelectDocument(document_id); self.dispatch(message); } pub fn get_open_documents_list(&self) { - let message = DocumentsMessage::UpdateOpenDocumentsList; + let message = PortfolioMessage::UpdateOpenDocumentsList; self.dispatch(message); } pub fn new_document(&self) { - let message = DocumentsMessage::NewDocument; + let message = PortfolioMessage::NewDocument; self.dispatch(message); } pub fn open_document(&self) { - let message = DocumentsMessage::OpenDocument; + let message = PortfolioMessage::OpenDocument; self.dispatch(message); } pub fn open_document_file(&self, name: String, content: String) { - let message = DocumentsMessage::OpenDocumentFile(name, content); + let message = PortfolioMessage::OpenDocumentFile(name, content); self.dispatch(message); } pub fn open_auto_saved_document(&self, document_id: u64, document_name: String, document_is_saved: bool, document: String) { - let message = DocumentsMessage::OpenDocumentFileWithId { + let message = PortfolioMessage::OpenDocumentFileWithId { document_id, document_name, document_is_saved, @@ -183,38 +183,38 @@ impl JsEditorHandle { } pub fn trigger_auto_save(&self, document_id: u64) { - let message = DocumentsMessage::AutoSaveDocument(document_id); + let message = PortfolioMessage::AutoSaveDocument(document_id); self.dispatch(message); } pub fn close_document(&self, document_id: u64) { - let message = DocumentsMessage::CloseDocument(document_id); + let message = PortfolioMessage::CloseDocument(document_id); self.dispatch(message); } pub fn close_all_documents(&self) { - let message = DocumentsMessage::CloseAllDocuments; + let message = PortfolioMessage::CloseAllDocuments; self.dispatch(message); } pub fn close_active_document_with_confirmation(&self) { - let message = DocumentsMessage::CloseActiveDocumentWithConfirmation; + let message = PortfolioMessage::CloseActiveDocumentWithConfirmation; self.dispatch(message); } pub fn close_document_with_confirmation(&self, document_id: u64) { - let message = DocumentsMessage::CloseDocumentWithConfirmation(document_id); + let message = PortfolioMessage::CloseDocumentWithConfirmation(document_id); self.dispatch(message); } pub fn close_all_documents_with_confirmation(&self) { - let message = DocumentsMessage::CloseAllDocumentsWithConfirmation; + let message = PortfolioMessage::CloseAllDocumentsWithConfirmation; self.dispatch(message); } #[wasm_bindgen] pub fn request_about_graphite_dialog(&self) { - let message = DocumentsMessage::RequestAboutGraphiteDialog; + let message = PortfolioMessage::RequestAboutGraphiteDialog; self.dispatch(message); } @@ -343,19 +343,19 @@ impl JsEditorHandle { /// Cut selected layers pub fn cut(&self) { - let message = DocumentsMessage::Cut(Clipboard::User); + let message = PortfolioMessage::Cut(Clipboard::User); self.dispatch(message); } /// Copy selected layers pub fn copy(&self) { - let message = DocumentsMessage::Copy(Clipboard::User); + let message = PortfolioMessage::Copy(Clipboard::User); self.dispatch(message); } /// Paste selected layers pub fn paste(&self) { - let message = DocumentsMessage::Paste(Clipboard::User); + let message = PortfolioMessage::Paste(Clipboard::User); self.dispatch(message); }