Standardize FrontendMessage message names

This commit is contained in:
Keavon Chambers
2022-01-12 14:16:13 -08:00
parent ae829c63b4
commit 6c639270ae
17 changed files with 154 additions and 152 deletions
+21 -19
View File
@@ -15,28 +15,30 @@ pub struct FrontendDocumentDetails {
#[impl_message(Message, Frontend)]
#[derive(PartialEq, Clone, Deserialize, Serialize, Debug)]
pub enum FrontendMessage {
DisplayFolderTreeStructure { data_buffer: RawBuffer },
SetActiveTool { tool_name: String, tool_options: Option<ToolOptions> },
SetActiveDocument { document_id: u64 },
// Display prefix: make the frontend show something, like a dialog
// Update prefix: give the frontend a new value or state for it to use
// Trigger prefix: cause a browser API to do something
DisplayDocumentLayerTreeStructure { data_buffer: RawBuffer },
UpdateActiveTool { tool_name: String, tool_options: Option<ToolOptions> },
UpdateActiveDocument { document_id: u64 },
UpdateOpenDocumentsList { open_documents: Vec<FrontendDocumentDetails> },
UpdateInputHints { hint_data: HintData },
DisplayError { title: String, description: String },
DisplayPanic { panic_info: String, title: String, description: String },
DisplayDialogError { title: String, description: String },
DisplayDialogPanic { panic_info: String, title: String, description: String },
DisplayConfirmationToCloseDocument { document_id: u64 },
DisplayConfirmationToCloseAllDocuments,
DisplayAboutGraphiteDialog,
UpdateLayer { data: LayerPanelEntry },
UpdateArtwork { svg: String },
UpdateOverlays { svg: String },
UpdateArtboards { svg: String },
UpdateScrollbars { position: (f64, f64), size: (f64, f64), multiplier: (f64, f64) },
UpdateRulers { origin: (f64, f64), spacing: f64, interval: f64 },
ExportDocument { document: String, name: String },
SaveDocument { document: String, name: String },
AutoSaveDocument { document: String, details: FrontendDocumentDetails, version: String },
RemoveAutoSaveDocument { document_id: u64 },
OpenDocumentBrowse,
DisplayDialogAboutGraphite,
UpdateDocumentLayer { data: LayerPanelEntry },
UpdateDocumentArtwork { svg: String },
UpdateDocumentOverlays { svg: String },
UpdateDocumentArtboards { svg: String },
UpdateDocumentScrollbars { position: (f64, f64), size: (f64, f64), multiplier: (f64, f64) },
UpdateDocumentRulers { origin: (f64, f64), spacing: f64, interval: f64 },
TriggerFileUpload,
TriggerFileDownload { document: String, name: String },
TriggerIndexedDbWriteDocument { document: String, details: FrontendDocumentDetails, version: String },
TriggerIndexedDbRemoveDocument { document_id: u64 },
UpdateWorkingColors { primary: Color, secondary: Color },
SetCanvasZoom { new_zoom: f64 },
SetCanvasRotation { new_radians: f64 },
UpdateCanvasZoom { factor: f64 },
UpdateCanvasRotation { angle_radians: f64 },
}