Browse Source

Update translations, update UI/UX

Ruben 1 year ago
parent
commit
1861a688b7

+ 9 - 10
src/PicView.Avalonia/CustomControls/FuncTextBox.cs

@@ -1,7 +1,6 @@
 using Avalonia;
 using Avalonia.Controls;
 using Avalonia.Media;
-using Avalonia.Styling;
 using PicView.Core.Localization;
 
 namespace PicView.Avalonia.CustomControls
@@ -10,33 +9,33 @@ namespace PicView.Avalonia.CustomControls
     {
         public FuncTextBox()
         {
-            if (!Application.Current.TryGetResource("MainTextColor", ThemeVariant.Default, out var mainTextColor))
+            if (!Application.Current.TryGetResource("MainTextColor", Application.Current.RequestedThemeVariant, out var mainTextColor))
             {
                 return;
             }
 
             var iconBrush = new SolidColorBrush((Color)(mainTextColor ?? Brushes.White));
-            if (!Application.Current.TryGetResource("CopyGeometry", ThemeVariant.Default, out var copyGeometry))
+            if (!Application.Current.TryGetResource("CopyGeometry", Application.Current.RequestedThemeVariant, out var copyGeometry))
             {
                 return;
             }
 
-            if (!Application.Current.TryGetResource("CutGeometry", ThemeVariant.Default, out var cutGeometry))
+            if (!Application.Current.TryGetResource("CutGeometry", Application.Current.RequestedThemeVariant, out var cutGeometry))
             {
                 return;
             }
 
-            if (!Application.Current.TryGetResource("RecycleGeometry", ThemeVariant.Default, out var recycleGeometry))
+            if (!Application.Current.TryGetResource("RecycleGeometry", Application.Current.RequestedThemeVariant, out var recycleGeometry))
             {
                 return;
             }
 
-            if (!Application.Current.TryGetResource("PasteGeometry", ThemeVariant.Default, out var pasteGeometry))
+            if (!Application.Current.TryGetResource("PasteGeometry", Application.Current.RequestedThemeVariant, out var pasteGeometry))
             {
                 return;
             }
 
-            if (!Application.Current.TryGetResource("CheckboxOutlineImage", ThemeVariant.Default,
+            if (!Application.Current.TryGetResource("CheckboxOutlineImage", Application.Current.RequestedThemeVariant,
                     out var checkboxOutlineImage))
             {
                 return;
@@ -45,7 +44,7 @@ namespace PicView.Avalonia.CustomControls
             var contextMenu = new ContextMenu();
             var selectAllMenuItem = new MenuItem
             {
-                Header = TranslationHelper.GetTranslation("SelectAll"), // TODO: Add localization
+                Header = TranslationHelper.Translation.SelectAll,
                 Icon = new Image
                 {
                     Width = 12,
@@ -58,7 +57,7 @@ namespace PicView.Avalonia.CustomControls
 
             var cutMenuItem = new MenuItem
             {
-                Header = TranslationHelper.GetTranslation("Cut"), // TODO: "Cut file" should be replaced with "Cut"
+                Header = TranslationHelper.Translation.Cut,
                 Icon = new PathIcon
                 {
                     Width = 12,
@@ -87,7 +86,7 @@ namespace PicView.Avalonia.CustomControls
             var pasteMenuItem = new MenuItem
             {
                 Header = TranslationHelper
-                    .GetTranslation("Paste"), // TODO: "Paste file" should be replaced with "Paste"
+                    .GetTranslation("Paste"),
                 Icon = new PathIcon
                 {
                     Width = 12,

File diff suppressed because it is too large
+ 2 - 2
src/PicView.Avalonia/PicViewTheme/Icons.axaml


+ 4 - 0
src/PicView.Avalonia/SettingsManagement/LanguageUpdater.cs

@@ -28,5 +28,9 @@ public static class LanguageUpdater
         vm.GetIsCtrlZoomTranslation = SettingsHelper.Settings.Zoom.CtrlZoom
             ? TranslationHelper.Translation.CtrlToZoom
             : TranslationHelper.Translation.ScrollToZoom;
+        
+        vm.GetIsShowingBottomToolbarTranslation = SettingsHelper.Settings.UIProperties.ShowBottomNavBar
+            ? TranslationHelper.Translation.HideBottomToolbar
+            : TranslationHelper.Translation.ShowBottomToolbar;
     }
 }

+ 2 - 0
src/PicView.Avalonia/UI/HideInterfaceLogic.cs

@@ -102,6 +102,7 @@ public static class HideInterfaceLogic
             vm.IsBottomToolbarShown = false;
             SettingsHelper.Settings.UIProperties.ShowBottomNavBar = false;
             vm.IsBottomToolbarShownSetting = false;
+            vm.GetIsShowingBottomToolbarTranslation = TranslationHelper.Translation.ShowBottomToolbar;
         }
         else
         {
@@ -109,6 +110,7 @@ public static class HideInterfaceLogic
             SettingsHelper.Settings.UIProperties.ShowBottomNavBar = true;
             vm.IsBottomToolbarShownSetting = true;
             vm.BottombarHeight = SizeDefaults.BottombarHeight;
+            vm.GetIsShowingBottomToolbarTranslation = TranslationHelper.Translation.HideBottomToolbar;
         }
         await Dispatcher.UIThread.InvokeAsync(() =>
         {

+ 8 - 0
src/PicView.Avalonia/ViewModels/MainViewModel.cs

@@ -802,6 +802,14 @@ public class MainViewModel : ViewModelBase
         set => this.RaiseAndSetIfChanged(ref _getIsShowingUITranslation, value);
     }
     
+    private string? _getIsShowingBottomToolbarTranslation;
+    
+    public string? GetIsShowingBottomToolbarTranslation
+    {
+        get => _getIsShowingBottomToolbarTranslation;
+        set => this.RaiseAndSetIfChanged(ref _getIsShowingBottomToolbarTranslation, value);
+    }
+    
     private string? _getIsFlipped;
 
     public string? GetIsFlippedTranslation

+ 10 - 1
src/PicView.Avalonia/ViewModels/ViewModelBase.cs

@@ -136,7 +136,7 @@ public class ViewModelBase : ReactiveObject
         ImageTxt = TranslationHelper.Translation.Image;
         CopyImage = TranslationHelper.Translation.CopyImage;
         FileCopyPath = TranslationHelper.Translation.FileCopyPath;
-        FileCut = TranslationHelper.Translation.FileCut;
+        FileCut = TranslationHelper.Translation.Cut;
         CtrlToZoom = TranslationHelper.Translation.CtrlToZoom;
         ScrollToZoom = TranslationHelper.Translation.ScrollToZoom;
         GeneralSettings = TranslationHelper.Translation.GeneralSettings;
@@ -227,10 +227,19 @@ public class ViewModelBase : ReactiveObject
         ChangingThemeRequiresRestart = TranslationHelper.Translation.ChangingThemeRequiresRestart;
         ShowUI = TranslationHelper.Translation.ShowUI;
         HideUI = TranslationHelper.Translation.HideUI;
+        HideBottomToolbar = TranslationHelper.Translation.HideBottomToolbar;
     }
 
     #region Strings
     
+    private string? _hideBottomToolbar;
+    
+    public string? HideBottomToolbar
+    {
+        get => _hideBottomToolbar;
+        set => this.RaiseAndSetIfChanged(ref _hideBottomToolbar, value);
+    }
+    
     private string? _changingThemeRequiresRestart;
     
     public string? ChangingThemeRequiresRestart

+ 1 - 1
src/PicView.Avalonia/Views/AppearanceView.axaml

@@ -216,7 +216,7 @@
                     Margin="0"
                     MaxWidth="240"
                     Padding="0,1,5,0"
-                    Text="{CompiledBinding ShowBottomToolbar,
+                    Text="{CompiledBinding GetIsShowingBottomToolbarTranslation,
                                            Mode=OneWay}" />
             </StackPanel>
         </Button>

+ 2 - 1
src/PicView.Avalonia/Views/UC/EditableTitlebar.axaml

@@ -9,6 +9,7 @@
     x:Class="PicView.Avalonia.Views.UC.EditableTitlebar"
     x:DataType="viewModels:MainViewModel"
     xmlns="https://github.com/avaloniaui"
+    xmlns:customControls="clr-namespace:PicView.Avalonia.CustomControls"
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
     xmlns:viewModels="clr-namespace:PicView.Avalonia.ViewModels"
@@ -34,7 +35,7 @@
             BorderBrush="{DynamicResource AccentColor}"
             BorderThickness="1"
             IsVisible="{CompiledBinding IsEditableTitlebarOpen}">
-            <TextBox
+            <customControls:FuncTextBox
                 FontFamily="avares://PicView.Avalonia/Assets/Fonts/Roboto-Medium.ttf#Roboto"
                 FontSize="13"
                 FontWeight="Medium"

+ 3 - 1
src/PicView.Core/Config/Languages/da.json

@@ -77,6 +77,7 @@
   "CropPicture": "Beskær billede",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Zoom med Ctrl, naviger med musehjulet",
+  "Cut": "Klip",
   "Cyan": "Cyan",
   "DarkTheme": "Mørkt tema",
   "Date": "Dato",
@@ -114,7 +115,6 @@
   "FileCopy": "Fil tilføjet til udklipsholderen",
   "FileCopyPath": "Kopier fil sti",
   "FileCopyPathMessage": "Fil stien tilføjet til udklipsholderen",
-  "FileCut": "Klip fil",
   "FileCutMessage": "Fil tilføjet til flytte udklipsholderen",
   "FileExtension": "Filtypenavn",
   "FileManagement": "Behandling af filer",
@@ -160,6 +160,7 @@
   "Hard": "Hård",
   "Height": "Højde",
   "HideBottomGallery": "Skjul nederste galleri",
+  "HideBottomToolbar": "Skjul bundværktøjslinje",
   "HideUI": "Skjul brugergrænsefladen",
   "High": "Høj",
   "HighQuality": "Høj kvalitet",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "Scrolling slået til",
   "SearchSubdirectory": "Tilføj undermapper til filsøgningen",
   "SecAbbreviation": "Sek.",
+  "SelectAll": "Vælg alle",
   "SelectGalleryThumb": "Vælg galleri billede",
   "SendCurrentImageToRecycleBin": "Send billede til papirkurven",
   "SentFileToRecycleBin": "Sendt fil til papirkurven",

+ 4 - 2
src/PicView.Core/Config/Languages/de.json

@@ -77,6 +77,7 @@
   "CropPicture": "Bild zuschneiden",
   "Ctrl": "Strg",
   "CtrlToZoom": "Strg zum zoomen, Scrollen zum navigieren",
+  "Cut": "Ausschneiden",
   "Cyan": "Zyan",
   "DarkTheme": "Dunkel",
   "Date": "Datum",
@@ -114,7 +115,6 @@
   "FileCopy": "In der Zwischenablage gespeichert",
   "FileCopyPath": "Dateipfad kopieren",
   "FileCopyPathMessage": "Dateipfad zur Zwischenablage hinzugefügt",
-  "FileCut": "Datei ausschneiden",
   "FileCutMessage": "Datei in der Zwischenablage gespeichert",
   "FileExtension": "Dateierweiterung",
   "FileManagement": "Dateiverwaltung",
@@ -160,6 +160,7 @@
   "Hard": "Hart",
   "Height": "Höhe",
   "HideBottomGallery": "Untere Galerie ausblenden",
+  "HideBottomToolbar": "Untere Symbolleiste ausblenden",
   "HideUI": "Benutzeroberfläche ausblenden",
   "High": "Hoch",
   "HighQuality": "Hohe Qualität",
@@ -286,16 +287,17 @@
   "SavingFileFailed": "Speichern der Datei fehlgeschlagen",
   "ScrollAndRotate": "Scrollen und drehen",
   "ScrollDirection": "Scrollrichtung",
-  "ScrollUp": "Nach unten scrollen",
   "ScrollToBottom": "Zum Ende scrollen",
   "ScrollToTop": "Zum Anfang scrollen",
   "ScrollToZoom": "Mit Mausrad zoomen, mit Strg navigieren",
+  "ScrollUp": "Nach unten scrollen",
   "ScrollUp": "Nach oben scrollen",
   "Scrolling": "Scrollen",
   "ScrollingDisabled": "Scrollen deaktiviert",
   "ScrollingEnabled": "Scrollen aktiviert",
   "SearchSubdirectory": "Unterverzeichnisse durchsuchen",
   "SecAbbreviation": "Sek.",
+  "SelectAll": "Alle auswählen",
   "SelectGalleryThumb": "Miniaturansicht der Galerie auswählen",
   "SendCurrentImageToRecycleBin": "Aktives Bild in den Papierkorb verschieben",
   "SentFileToRecycleBin": "Datei in den Papierkorb verschieben",

+ 3 - 1
src/PicView.Core/Config/Languages/en.json

@@ -77,6 +77,7 @@
   "CropPicture": "Crop Picture",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl to zoom, scroll to navigate",
+  "Cut": "Cut",
   "Cyan": "Cyan",
   "DarkTheme": "Dark theme",
   "Date": "Date",
@@ -114,7 +115,6 @@
   "FileCopy": "File added to clipboard",
   "FileCopyPath": "Copy file path",
   "FileCopyPathMessage": "File path added to clipboard",
-  "FileCut": "Cut file",
   "FileCutMessage": "File added to move clipboard",
   "FileExtension": "File extension",
   "FileManagement": "File management",
@@ -160,6 +160,7 @@
   "Hard": "Hard",
   "Height": "Height",
   "HideBottomGallery": "Hide bottom gallery",
+  "HideBottomToolbar": "Hide Bottom Toolbar",
   "HideUI": "Hide interface",
   "High": "High",
   "HighQuality": "High quality",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "Scrolling enabled",
   "SearchSubdirectory": "Search subdirectories",
   "SecAbbreviation": "Sec.",
+  "SelectAll": "Select All",
   "SelectGalleryThumb": "Select gallery thumbnail",
   "SendCurrentImageToRecycleBin": "Send current image to the recycle bin",
   "SentFileToRecycleBin": "Sent file to the recycle bin",

+ 2 - 1
src/PicView.Core/Config/Languages/es.json

@@ -77,6 +77,7 @@
   "CropPicture": "Recortar Imagen",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl para zoom, rueda para navegar",
+  "Cut": "Cortar",
   "Cyan": "Cian",
   "DarkTheme": "Tema oscuro",
   "Date": "Fecha",
@@ -114,7 +115,6 @@
   "FileCopy": "Archivo agregado al portapapeles",
   "FileCopyPath": "Copiar carpeta del archivo",
   "FileCopyPathMessage": "Carpeta del archivo agregada al portapapeles",
-  "FileCut": "Cortar archivo",
   "FileCutMessage": "Archivo agregada para mover al portapapeles",
   "FileExtension": "Extensión de archivo",
   "FileManagement": "Gestión de archivos",
@@ -297,6 +297,7 @@
   "SearchSubdirectory": "Buscar subdirectorios",
   "SecAbbreviation": "Seg.",
   "SelectGalleryThumb": "Seleccionar miniatura de la galería",
+  "SelectAll": "Seleccionar todo",
   "SendCurrentImageToRecycleBin": "Enviar imagen actual a papelera de reciclaje",
   "SentFileToRecycleBin": "Enviar archivo a papelera de reciclaje",
   "SetAs": "Establecer como...",

+ 3 - 1
src/PicView.Core/Config/Languages/fr.json

@@ -77,6 +77,7 @@
   "CropPicture": "Recadrer l'image",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl pour zoomer, défiler pour naviguer",
+  "Cut": "Couper",
   "Cyan": "Cyan",
   "DarkTheme": "Thème sombre",
   "Date": "Date",
@@ -114,7 +115,6 @@
   "FileCopy": "Fichier copié dans le presse-papiers",
   "FileCopyPath": "Copier le chemin du fichier",
   "FileCopyPathMessage": "Chemin du fichier ajouté au presse-papiers",
-  "FileCut": "Couper le fichier",
   "FileCutMessage": "Fichier ajouté pour remplacer dans le presse-papiers",
   "FileExtension": "Extension du fichier",
   "FileManagement": "Gestion des fichiers",
@@ -160,6 +160,7 @@
   "Hard": "Dur",
   "Height": "Hauteur",
   "HideBottomGallery": "Masquer la galerie inférieure",
+  "HideBottomToolbar": "Ocultar barra de herramientas inferior",
   "HideUI": "Masquer l'interface",
   "High": "Élevé",
   "HighQuality": "Haute qualité",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "Défilement activé",
   "SearchSubdirectory": "Chercher les sous-répertoires",
   "SecAbbreviation": "Sec.",
+  "SelectAll": "Tout sélectionner",
   "SelectGalleryThumb": "Sélectionner la vignette de la galerie",
   "SendCurrentImageToRecycleBin": "Envoyer l'image actuelle dans la corbeille",
   "SentFileToRecycleBin": "Fichier envoyé dans la corbeille",

+ 3 - 1
src/PicView.Core/Config/Languages/it.json

@@ -77,6 +77,7 @@
   "CropPicture": "Ritaglia immagine",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl per ingrandire, scorri per navigare",
+  "Cut": "Couper",
   "Cyan": "Ciano",
   "DarkTheme": "Tema scuro",
   "Date": "Data",
@@ -114,7 +115,6 @@
   "FileCopy": "File aggiunto agli appunti",
   "FileCopyPath": "Copia il percorso del file",
   "FileCopyPathMessage": "Percorso del file aggiunto agli appunti",
-  "FileCut": "Taglia il file",
   "FileCutMessage": "Percorso del file aggiunto per spostare gli appunti",
   "FileExtension": "Estensione del file",
   "FileManagement": "Gestione dei file",
@@ -160,6 +160,7 @@
   "Hard": "Duro",
   "Height": "Altezza",
   "HideBottomGallery": "Nascondi galleria inferiore",
+  "HideBottomToolbar": "Masquer la barre d'outils inférieure",
   "HideUI": "Nascondi interfaccia",
   "High": "Alto",
   "HighQuality": "Alta qualità",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "Scorrimento abilitato",
   "SearchSubdirectory": "Cerca sottodirectory",
   "SecAbbreviation": "Sec.",
+  "SelectAll": "Seleziona tutto",
   "SelectGalleryThumb": "Seleziona la miniatura della galleria",
   "SendCurrentImageToRecycleBin": "Invia l'immagine corrente al cestino",
   "SentFileToRecycleBin": "File inviato al cestino",

+ 3 - 1
src/PicView.Core/Config/Languages/ko.json

@@ -77,6 +77,7 @@
   "CropPicture": "사진 자르기",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "확대/축소하려면 Ctrl, 탐색하려면 스크롤",
+  "Cut": "잘라내기",
   "Cyan": "옥색",
   "DarkTheme": "어두운 테마",
   "Date": "날짜",
@@ -114,7 +115,6 @@
   "FileCopy": "클립보드에 파일 추가",
   "FileCopyPath": "파일 경로 복사",
   "FileCopyPathMessage": "클립보드에 파일 경로 추가",
-  "FileCut": "파일 잘라내기",
   "FileCutMessage": "클립보드 이동을 위해 파일 추가",
   "FileExtension": "파일 확장자",
   "FileManagement": "파일 관리",
@@ -160,6 +160,7 @@
   "Hard": "단단함",
   "Height": "높이",
   "HideBottomGallery": "하단 갤러리 숨기기",
+  "HideBottomToolbar": "하단 도구 모음 숨기기",
   "HideUI": "UI 숨기기",
   "High": "높음",
   "HighQuality": "높은 품질",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "스크롤 사용함",
   "SearchSubdirectory": "하위 디렉터리 검색",
   "SecAbbreviation": "초",
+  "SelectAll": "전체 선택",
   "SelectGalleryThumb": "갤러리 썸네일 선택",
   "SendCurrentImageToRecycleBin": "현재 이미지를 휴지통으로 보내기",
   "SentFileToRecycleBin": "파일을 휴지통으로 보냈습니다",

+ 3 - 1
src/PicView.Core/Config/Languages/pl.json

@@ -77,6 +77,7 @@
   "CropPicture": "Przytnij zdjęcie",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Wciśnij Ctrl aby przybliżyć: użyj kółka myszy aby się poruszać",
+  "Cut": "Wytnij",
   "Cyan": "Niebieskozielony",
   "DarkTheme": "Ciemny motyw",
   "Date": "Data",
@@ -113,7 +114,6 @@
   "FileCopy": "Dodano plik do schowka",
   "FileCopyPath": "Kopiuj ścieżkę do pliku",
   "FileCopyPathMessage": "Ścieżka do pliku dodana do schowka",
-  "FileCut": "Wytnij plik",
   "FileCutMessage": "Wycięto plik",
   "FileExtension": "Rozszerzeniu",
   "FileManagement": "Zarządzanie plikami",
@@ -160,6 +160,7 @@
   "Hard": "Twardy",
   "Height": "Wysokość",
   "HideBottomGallery": "Ukryj dolną galerię",
+  "HideBottomToolbar": "Ukryj dolny pasek narzędzi",
   "HideUI": "Ukryj interfejs",
   "High": "Wysoki",
   "HighQuality": "Wysoka jakość",
@@ -295,6 +296,7 @@
   "ScrollingDisabled": "Przewijanie wyłączone",
   "ScrollingEnabled": "Przewijanie włączone",
   "SearchSubdirectory": "Przeszukaj podkatalogi",
+  "SelectAll": "Zaznacz wszystko",
   "SecAbbreviation": "Sek.",
   "SelectGalleryThumb": "Wybierz miniaturę galerii",
   "SendCurrentImageToRecycleBin": "Przenieś obecne zdjęcie do kosza",

+ 4 - 2
src/PicView.Core/Config/Languages/ro.json

@@ -77,6 +77,7 @@
   "CropPicture": "Decupare imagine",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl pentru a transfoca, defilare pentru a naviga",
+  "Cut": "Decupează",
   "Cyan": "Cyan",
   "DarkTheme": "Temă întunecată",
   "Date": "Dată",
@@ -114,7 +115,6 @@
   "FileCopy": "Fișier adăugat în memoria temporară",
   "FileCopyPath": "Copiere cale fișier",
   "FileCopyPathMessage": "Calea fișierului a fost adăugată în memoria temporară",
-  "FileCut": "Tăiere fișier",
   "FileCutMessage": "Fișier adăugat în memoria temporară în vederea mutării",
   "FileExtension": "Extensia fișierului",
   "FileManagement": "Gestionarea fișierelor",
@@ -160,6 +160,8 @@
   "Hard": "Tare",
   "Height": "Înălțime",
   "HideBottomGallery": "Ascunde galeria de jos",
+  "HideBottomToolbar": "Ascunde bara de unelte inferioară",
+  "HideUI": "Ascunde interfața",
   "High": "Înalt",
   "HighQuality": "Calitate înaltă",
   "HighlightColor": "Culoare de evidențiere",
@@ -295,6 +297,7 @@
   "ScrollingEnabled": "Defilare activată",
   "SearchSubdirectory": "Căutare subdirectoare",
   "SecAbbreviation": "Sec.",
+  "SelectAll": "Selectează tot",
   "SelectGalleryThumb": "Selectați miniatura galeriei",
   "SendCurrentImageToRecycleBin": "Trimite imaginea curentă la coșul de reciclare",
   "SentFileToRecycleBin": "Fișier trimis la coșul de reciclare",
@@ -313,7 +316,6 @@
   "ShowBottomToolbar": "Afișează bara de instrumente de jos",
   "ShowButtonsInHiddenUI": "Arată butoanele în interfața ascunsă",
   "ShowFileSavingDialog": "Afișează dialogul de salvare fișier",
-  "HideUI": "Ascunde interfața",
   "ShowImageGallery": "Arată galeria de imagini",
   "ShowImageInfo": "Arată informațiile imaginii",
   "ShowInFolder": "Arată în dosar",

+ 3 - 1
src/PicView.Core/Config/Languages/ru.json

@@ -77,6 +77,7 @@
   "CropPicture": "Кадрирование снимка",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl для увеличения, прокрутка для навигации",
+  "Cut": "Вырезать",
   "Cyan": "Голубой",
   "DarkTheme": "Темная тема",
   "Date": "Дата",
@@ -114,7 +115,6 @@
   "FileCopy": "Файл добавлен в буфер обмена",
   "FileCopyPath": "Копировать путь к файлу",
   "FileCopyPathMessage": "Путь к файлу добавлен в буфер обмена",
-  "FileCut": "Вырезать файл",
   "FileCutMessage": "Файл добавлен в буфер обмена",
   "FileExtension": "Расширению файла",
   "FileManagement": "Управление файлами",
@@ -160,6 +160,7 @@
   "Hard": "Жесткий",
   "Height": "Высота",
   "HideBottomGallery": "Скрыть нижнюю галерею",
+  "HideBottomToolbar": "Скрыть нижнюю панель инструментов",
   "HideUI": "Скрыть интерфейс",
   "High": "Высокий",
   "HighQuality": "Высокое качество",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "Прокрутка включена",
   "SearchSubdirectory": "Искать в подкаталогах",
   "SecAbbreviation": "Sec.",
+  "SelectAll": "Выбрать все",
   "SelectGalleryThumb": "Выбрать миниатюру галереи",
   "SendCurrentImageToRecycleBin": "Отправить текущее изображение в корзину",
   "SentFileToRecycleBin": "Файл отправлен в корзину",

+ 3 - 1
src/PicView.Core/Config/Languages/zh-CN.json

@@ -77,6 +77,7 @@
   "CropPicture": "裁剪图片",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl + 鼠标滚轮缩放,鼠标滚轮导航",
+  "Cut": "剪切",
   "Cyan": "淡蓝色",
   "DarkTheme": "深色主题",
   "Date": "时间",
@@ -114,7 +115,6 @@
   "FileCopy": "文件已复制",
   "FileCopyPath": "复制文件路径",
   "FileCopyPathMessage": "文件路径已复制",
-  "FileCut": "剪切文件",
   "FileCutMessage": "文件已剪切",
   "FileExtension": "文件拓展名",
   "FileManagement": "文件管理",
@@ -160,6 +160,7 @@
   "Hard": "硬",
   "Height": "高度",
   "HideBottomGallery": "收起底部图",
+  "HideBottomToolbar": "隐藏底部工具栏",
   "HideUI": "隐藏界面",
   "High": "高",
   "HighQuality": "高质量",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "已启用滚动",
   "SearchSubdirectory": "包含子目录中的图片",
   "SecAbbreviation": "秒",
+  "SelectAll": "全选",
   "SelectGalleryThumb": "选择画廊缩略图",
   "SendCurrentImageToRecycleBin": "将当前图片移至回收站",
   "SentFileToRecycleBin": "将文件移至回收站",

+ 3 - 1
src/PicView.Core/Config/Languages/zh-TW.json

@@ -77,6 +77,7 @@
   "CropPicture": "裁切圖片",
   "Ctrl": "Ctrl",
   "CtrlToZoom": "Ctrl + 滑鼠滾輪縮放,滑鼠滾輪導航",
+  "Cut": "剪下",
   "Cyan": "青色",
   "DarkTheme": "深色主題",
   "Date": "時間",
@@ -114,7 +115,6 @@
   "FileCopy": "檔案已複製",
   "FileCopyPath": "複製檔案路徑",
   "FileCopyPathMessage": "檔案路徑已複製",
-  "FileCut": "剪下檔案",
   "FileCutMessage": "檔案已剪下",
   "FileExtension": "檔案拓展名",
   "FileManagement": "檔案管理",
@@ -160,6 +160,7 @@
   "Hard": "硬",
   "Height": "高度",
   "HideBottomGallery": "收起底部圖",
+  "HideBottomToolbar": "隱藏底部工具列",
   "HideUI": "隱藏介面",
   "High": "高",
   "HighQuality": "高品質",
@@ -296,6 +297,7 @@
   "ScrollingEnabled": "已啟用滾動",
   "SearchSubdirectory": "包含子目錄中的圖片",
   "SecAbbreviation": "秒",
+  "SelectAll": "全選",
   "SelectGalleryThumb": "選擇畫廊縮略圖",
   "SendCurrentImageToRecycleBin": "將當前圖片移至回收筒",
   "SentFileToRecycleBin": "將檔案移至回收筒",

+ 4 - 1
src/PicView.Core/Localization/LanguageModel.cs

@@ -6,6 +6,9 @@ public record LanguageModel
     public string? NoImage { get; set; }
     public string? Files { get; set; }
     public string? File { get; set; }
+    
+    public string? Cut { get; set; }
+    public string? SelectAll { get; set; }
     public string? PercentComplete { get; set; }
     public string? CropMessage { get; set; }
     public string? ClipboardImage { get; set; }
@@ -108,6 +111,7 @@ public record LanguageModel
     public string? ToggleTaskbarProgress { get; set; }
     public string? ShowFileSavingDialog { get; set; }
     public string? ShowBottomToolbar { get; set; }
+    public string? HideBottomToolbar { get; set; }
     public string? BottomGalleryItemSize { get; set; }
     public string? ExpandedGalleryItemSize { get; set; }
     public string? ShowBottomGalleryWhenUiIsHidden { get; set; }
@@ -202,7 +206,6 @@ public record LanguageModel
     public string? CopiedImage { get; set; }
     public string? CopyImageTooltip { get; set; }
     public string? FilePaste { get; set; }
-    public string? FileCut { get; set; }
     public string? ImageInfo { get; set; }
     public string? Image { get; set; }
     public string? Width { get; set; }

Some files were not shown because too many files changed in this diff