aboutsummaryrefslogtreecommitdiff
path: root/src/preferences/models.rs
diff options
context:
space:
mode:
authorRubén Beltrán del Río <jj@r.bdr.sh>2026-01-17 11:22:22 +0100
committerRubén Beltrán del Río <jj@r.bdr.sh>2026-01-17 12:24:45 +0100
commit88d6bf80f5cdbbb90ead197bd41a67eb8c44e50e (patch)
tree401549b24fe8a747ef6739389b1b38f33ef016bb /src/preferences/models.rs
parent17898fbabde35ab346c133114e78614e707c0eca (diff)
Make clippy stricter and fix
Diffstat (limited to 'src/preferences/models.rs')
-rw-r--r--src/preferences/models.rs21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/preferences/models.rs b/src/preferences/models.rs
index dee84e6..81fa4d1 100644
--- a/src/preferences/models.rs
+++ b/src/preferences/models.rs
@@ -17,7 +17,7 @@
use serde::{Deserialize, Serialize};
use uuid::Uuid;
-/// Stage labels for custom stages (matches Swift Stage struct)
+/// Stage labels for custom stages
#[derive(Debug, Clone, Serialize, Deserialize, Default, PartialEq)]
pub struct Stage {
pub i: String,
@@ -26,7 +26,7 @@ pub struct Stage {
pub iv: String,
}
-/// Custom stage definition (matches Swift CustomStage)
+/// Custom stage definition
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct CustomStage {
@@ -73,7 +73,7 @@ impl CustomStage {
}
}
-/// Template for new maps (matches Swift Template)
+/// Template for new maps
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct Template {
@@ -106,7 +106,7 @@ impl Template {
}
}
-/// JSON import/export format (matches Swift UserPreferencesJSON)
+/// JSON import/export format
/// All fields optional to support partial imports
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
@@ -136,6 +136,7 @@ pub struct UserPreferencesJson {
/// Main preferences struct stored in app
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
#[serde(rename_all = "camelCase")]
+#[allow(clippy::struct_excessive_bools)] // These are independent boolean preferences, not a state machine
pub struct UserPreferences {
// Map preferences
pub show_map_background: bool,
@@ -218,10 +219,10 @@ impl UserPreferences {
self.use_custom_font = *v;
}
if let Some(ref v) = json.custom_font_name {
- self.custom_font_name = v.clone();
+ self.custom_font_name.clone_from(v);
}
if let Some(ref v) = json.default_export_format {
- self.default_export_format = v.clone();
+ self.default_export_format.clone_from(v);
}
if let Some(v) = json.use_smart_label_positioning {
self.use_smart_label_positioning = v;
@@ -230,7 +231,7 @@ impl UserPreferences {
self.use_custom_editor_font = *v;
}
if let Some(ref v) = json.custom_editor_font_name {
- self.custom_editor_font_name = v.clone();
+ self.custom_editor_font_name.clone_from(v);
}
if let Some(v) = json.editor_font_size {
self.editor_font_size = v;
@@ -239,13 +240,13 @@ impl UserPreferences {
self.soft_wrap_lines = v;
}
if let Some(ref v) = json.map_templates {
- self.map_templates = v.clone();
+ self.map_templates.clone_from(v);
}
if let Some(ref v) = json.custom_stages {
- self.custom_stages = v.clone();
+ self.custom_stages.clone_from(v);
}
if let Some(ref v) = json.view_style {
- self.view_style = v.clone();
+ self.view_style.clone_from(v);
}
if let Some(v) = json.zoom {
self.zoom = v;