From e59dcf2bcf7841ebe6f3d85ec3ec03319b261da4 Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Mon, 7 Jul 2025 16:52:28 +0200 Subject: More localization keys, font editor preferences, better new file --- Map/Presentation/Theme/NSFont+theme.swift | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Map/Presentation/Theme/NSFont+theme.swift (limited to 'Map/Presentation/Theme/NSFont+theme.swift') diff --git a/Map/Presentation/Theme/NSFont+theme.swift b/Map/Presentation/Theme/NSFont+theme.swift new file mode 100644 index 0000000..5d8d8dd --- /dev/null +++ b/Map/Presentation/Theme/NSFont+theme.swift @@ -0,0 +1,36 @@ +// Copyright (C) 2024 Rubén Beltrán del Río + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see https://map.tranquil.systems. +import AppKit + +extension NSFont { + public struct Theme { + struct Editor { + static var regular: NSFont { + if UserDefaults.standard.bool(forKey: "useCustomEditorFont"), + let customEditorFontName = UserDefaults.standard.string(forKey: "customEditorFontName"), + !customEditorFontName.isEmpty + { + return NSFontManager.shared.font( + withFamily: customEditorFontName, + traits: NSFontTraitMask(), + weight: 5, + size: Dimensions.FontSize.editor) + ?? .monospacedSystemFont(ofSize: Dimensions.FontSize.editor, weight: .regular) + } + return .monospacedSystemFont(ofSize: Dimensions.FontSize.editor, weight: .regular) + } + } + } +} -- cgit