TranslationViewModel.cs 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888
  1. using PicView.Core.Extensions;
  2. using PicView.Core.Localization;
  3. using R3;
  4. namespace PicView.Core.ViewModels;
  5. public class TranslationViewModel : IDisposable
  6. {
  7. public void Dispose()
  8. {
  9. Disposable.Dispose(File, SelectFile, OpenLastFile);
  10. }
  11. public void UpdateLanguage()
  12. {
  13. var t = TranslationManager.Translation;
  14. File.Value = string.Concat(t.File[0].ToString().ToUpper(), t.File.AsSpan(1));
  15. SelectFile .Value = t.OpenFileDialog;
  16. OpenLastFile .Value = t.OpenLastFile;
  17. Paste .Value = t.FilePaste;
  18. Copy .Value = t.Copy;
  19. Reload .Value = t.Reload;
  20. Print .Value = t.Print;
  21. DeleteFile .Value = t.DeleteFile;
  22. PermanentlyDelete .Value = t.PermanentlyDelete;
  23. Save .Value = t.Save;
  24. CopyFile .Value = t.CopyFile;
  25. NewWindow .Value = t.NewWindow;
  26. Close .Value = t.Close;
  27. CloseGallery .Value = t.CloseGallery;
  28. Open .Value = t.Open;
  29. OpenFileDialog .Value = t.OpenFileDialog;
  30. ShowInFolder .Value = t.ShowInFolder;
  31. OpenWith .Value = t.OpenWith;
  32. RenameFile .Value = t.RenameFile;
  33. DuplicateFile .Value = t.DuplicateFile;
  34. RotateLeft .Value = t.RotateLeft;
  35. RotateRight .Value = t.RotateRight;
  36. Flip .Value = t.Flip;
  37. UnFlip .Value = t.Unflip;
  38. ShowBottomGallery .Value = t.ShowBottomGallery;
  39. HideBottomGallery .Value = t.HideBottomGallery;
  40. AutoFitWindow .Value = t.AutoFitWindow;
  41. Stretch .Value = t.Stretch;
  42. Crop .Value = t.Crop;
  43. ResizeImage .Value = t.ResizeImage;
  44. GoToImageAtSpecifiedIndex .Value = t.GoToImageAtSpecifiedIndex;
  45. ToggleScroll .Value = t.ToggleScroll;
  46. ScrollEnabled .Value = t.ScrollingEnabled;
  47. ScrollDisabled .Value = t.ScrollingDisabled;
  48. ScrollDirection .Value = t.ScrollDirection;
  49. Reverse .Value = t.Reverse;
  50. Forward .Value = t.Forward;
  51. Slideshow .Value = t.Slideshow;
  52. Settings .Value = t.Settings;
  53. AboutWindow .Value = t.InfoWindow;
  54. ImageInfo .Value = t.ImageInfo;
  55. About .Value = t.About;
  56. ShowAllSettingsWindow .Value = t.ShowAllSettingsWindow;
  57. StayTopMost .Value = t.StayTopMost;
  58. SearchSubdirectory .Value = t.SearchSubdirectory;
  59. ToggleLooping .Value = t.ToggleLooping;
  60. ApplicationShortcuts .Value = t.ApplicationShortcuts;
  61. BatchResize .Value = t.BatchResize;
  62. Effects .Value = t.Effects;
  63. EffectsTooltip .Value = t.EffectsTooltip;
  64. FileProperties .Value = t.FileProperties;
  65. OptimizeImage .Value = t.OptimizeImage;
  66. ImageInfo .Value = t.ImageInfo;
  67. FileName .Value = t.FileName;
  68. FileSize .Value = t.FileSize;
  69. Folder .Value = t.Folder;
  70. FullPath .Value = t.FullPath;
  71. Created .Value = t.Created;
  72. Modified .Value = t.Modified;
  73. LastAccessTime .Value = t.LastAccessTime;
  74. ConvertTo .Value = t.ConvertTo;
  75. NoConversion .Value = t.NoConversion;
  76. Resize .Value = t.Resize;
  77. NoResize .Value = t.NoResize;
  78. Apply .Value = t.Apply;
  79. Cancel .Value = t.Cancel;
  80. BitDepth .Value = t.BitDepth;
  81. ReadAbleAspectRatio .Value = t.AspectRatio;
  82. Width .Value = t.Width;
  83. Height .Value = t.Height;
  84. SizeMp .Value = t.SizeMp;
  85. Resolution .Value = t.Resolution;
  86. PrintSizeIn .Value = t.PrintSizeIn;
  87. PrintSizeCm .Value = t.PrintSizeCm;
  88. Centimeters .Value = t.Centimeters;
  89. Inches .Value = t.Inches;
  90. SizeTooltip .Value = t.SizeTooltip;
  91. Latitude .Value = t.Latitude;
  92. Longitude .Value = t.Longitude;
  93. Altitude .Value = t.Altitude;
  94. Authors .Value = t.Authors;
  95. DateTaken .Value = t.DateTaken;
  96. Copyright .Value = t.Copyright;
  97. ResolutionUnit .Value = t.ResolutionUnit;
  98. ColorRepresentation .Value = t.ColorRepresentation;
  99. CompressedBitsPixel .Value = t.CompressedBitsPixel;
  100. Compression .Value = t.Compression;
  101. ExposureTime .Value = t.ExposureTime;
  102. Title .Value = t.Title;
  103. Subject .Value = t.Subject;
  104. Software .Value = t.Software;
  105. CameraMaker .Value = t.CameraMaker;
  106. CameraModel .Value = t.CameraModel;
  107. FocalLength .Value = t.FocalLength;
  108. Fnumber .Value = t.FNumber;
  109. Fstop .Value = t.Fstop;
  110. MaxAperture .Value = t.MaxAperture;
  111. ExposureBias .Value = t.ExposureBias;
  112. ExposureProgram .Value = t.ExposureProgram;
  113. DigitalZoom .Value = t.DigitalZoom;
  114. ISOSpeed .Value = t.ISOSpeed;
  115. FocalLength35mm .Value = t.FocalLength35mm;
  116. MeteringMode .Value = t.MeteringMode;
  117. Contrast .Value = t.Contrast;
  118. Saturation .Value = t.Saturation;
  119. Sharpness .Value = t.Sharpness;
  120. WhiteBalance .Value = t.WhiteBalance;
  121. FlashEnergy .Value = t.FlashEnergy;
  122. FlashMode .Value = t.FlashMode;
  123. LightSource .Value = t.LightSource;
  124. Brightness .Value = t.Brightness;
  125. PhotometricInterpretation .Value = t.PhotometricInterpretation;
  126. Orientation .Value = t.Orientation;
  127. ExifVersion .Value = t.ExifVersion;
  128. LensMaker .Value = t.LensMaker;
  129. LensModel .Value = t.LensModel;
  130. SortFilesBy .Value = t.SortFilesBy;
  131. FileExtension .Value = t.FileExtension;
  132. CreationTime .Value = t.CreationTime;
  133. Random .Value = t.Random;
  134. Ascending .Value = t.Ascending;
  135. Descending .Value = t.Descending;
  136. RecentFiles .Value = t.RecentFiles;
  137. SetAsWallpaper .Value = t.SetAsWallpaper;
  138. SetAsLockScreenImage .Value = t.SetAsLockScreenImage;
  139. Image .Value = t.Image;
  140. CopyImage .Value = t.CopyImage;
  141. FileCopyPath .Value = t.FileCopyPath;
  142. FileCut .Value = t.Cut;
  143. CtrlToZoom .Value = t.CtrlToZoom;
  144. ScrollToZoom .Value = t.ScrollToZoom;
  145. GeneralSettings .Value = t.GeneralSettings;
  146. Appearance .Value = t.Appearance;
  147. Language .Value = t.Language;
  148. MouseWheel .Value = t.MouseWheel;
  149. MiscSettings .Value = t.MiscSettings;
  150. StayCentered .Value = t.StayCentered;
  151. ShowFileSavingDialog .Value = t.ShowFileSavingDialog;
  152. OpenInSameWindow .Value = t.OpenInSameWindow;
  153. ApplicationStartup .Value = t.ApplicationStartup;
  154. None .Value = t.None;
  155. AdjustTimingForSlideshow .Value = t.AdjustTimingForSlideshow;
  156. AdjustTimingForZoom .Value = t.AdjustTimingForZoom;
  157. AdjustNavSpeed .Value = t.AdjustNavSpeed;
  158. SecAbbreviation .Value = t.SecAbbreviation;
  159. ResetButtonText .Value = t.ResetButtonText;
  160. ShowBottomToolbar .Value = t.ShowBottomToolbar;
  161. ShowBottomGalleryWhenUiIsHidden .Value = t.ShowBottomGalleryWhenUiIsHidden;
  162. ChangeKeybindingTooltip .Value = t.ChangeKeybindingTooltip;
  163. ToggleTaskbarProgress .Value = t.ToggleTaskbarProgress;
  164. ChangeKeybindingText .Value = t.ChangeKeybindingText;
  165. Navigation .Value = t.Navigation;
  166. NextImage .Value = t.NextImage;
  167. PrevImage .Value = t.PrevImage;
  168. LastImage .Value = t.LastImage;
  169. FirstImage .Value = t.FirstImage;
  170. NextFolder .Value = t.NextFolder;
  171. PrevFolder .Value = t.PrevFolder;
  172. SelectGalleryThumb .Value = t.SelectGalleryThumb;
  173. ScrollAndRotate .Value = t.ScrollAndRotate;
  174. ScrollUp .Value = t.ScrollUp;
  175. ScrollDown .Value = t.ScrollDown;
  176. ScrollToTop .Value = t.ScrollToTop;
  177. ScrollToBottom .Value = t.ScrollToBottom;
  178. Zoom .Value = t.Zoom;
  179. ZoomIn .Value = t.ZoomIn;
  180. ZoomOut .Value = t.ZoomOut;
  181. Pan .Value = t.Pan;
  182. ResetZoom .Value = t.ResetZoom;
  183. ImageControl .Value = t.ImageControl;
  184. ChangeBackground .Value = t.ChangeBackground;
  185. InterfaceConfiguration .Value = t.InterfaceConfiguration;
  186. FileManagement .Value = t.FileManagement;
  187. ToggleFullscreen .Value = t.ToggleFullscreen;
  188. Fullscreen .Value = t.Fullscreen;
  189. ShowImageGallery .Value = t.ShowImageGallery;
  190. WindowManagement .Value = t.WindowManagement;
  191. CenterWindow .Value = t.CenterWindow;
  192. WindowScaling .Value = t.WindowScaling;
  193. NormalWindow .Value = t.NormalWindow;
  194. SetStarRating .Value = t.SetStarRating;
  195. _1Star .Value = t._1Star;
  196. _2Star .Value = t._2Star;
  197. _3Star .Value = t._3Star;
  198. _4Star .Value = t._4Star;
  199. _5Star .Value = t._5Star;
  200. RemoveStarRating .Value = t.RemoveStarRating;
  201. Theme .Value = t.Theme;
  202. DarkTheme .Value = t.DarkTheme;
  203. LightTheme .Value = t.LightTheme;
  204. MouseDrag .Value = t.MouseDrag;
  205. DoubleClick .Value = t.DoubleClick;
  206. MoveWindow .Value = t.MoveWindow;
  207. GithubRepo .Value = t.GithubRepo;
  208. Version .Value = t.Version;
  209. ViewLicenseFile .Value = t.ViewLicenseFile;
  210. CheckForUpdates .Value = t.CheckForUpdates;
  211. Credits .Value = t.Credits;
  212. ColorPickerTool .Value = t.ColorPickerTool;
  213. ColorPickerToolTooltip .Value = t.ColorPickerToolTooltip;
  214. ExpandedGalleryItemSize .Value = t.ExpandedGalleryItemSize;
  215. BottomGalleryItemSize .Value = t.BottomGalleryItemSize;
  216. Square .Value = t.Square;
  217. Uniform .Value = t.Uniform;
  218. UniformToFill .Value = t.UniformToFill;
  219. FillSquare .Value = t.FillSquare;
  220. Fill .Value = t.Fill;
  221. GallerySettings .Value = t.GallerySettings;
  222. GalleryThumbnailStretch .Value = t.GalleryThumbnailStretch;
  223. BottomGalleryThumbnailStretch .Value = t.BottomGalleryThumbnailStretch;
  224. RestoreDown .Value = t.RestoreDown;
  225. SideBySide .Value = t.SideBySide;
  226. SideBySideTooltip .Value = t.SideBySideTooltip;
  227. HighlightColor .Value = t.HighlightColor;
  228. AllowZoomOut .Value = t.AllowZoomOut;
  229. GlassTheme .Value = t.GlassTheme;
  230. ChangingThemeRequiresRestart .Value = t.ChangingThemeRequiresRestart;
  231. ShowUI .Value = t.ShowUI;
  232. HideUI .Value = t.HideUI;
  233. HideBottomToolbar .Value = t.HideBottomToolbar;
  234. Center .Value = t.Center;
  235. Tile .Value = t.Tile;
  236. Fit .Value = t.Fit;
  237. Pixels .Value = t.Pixels;
  238. Percentage .Value = t.Percentage;
  239. Quality .Value = t.Quality;
  240. SaveAs .Value = t.SaveAs;
  241. Reset .Value = t.Reset;
  242. AdvanceBy10Images .Value = t.AdvanceBy10Images;
  243. AdvanceBy100Images .Value = t.AdvanceBy100Images;
  244. GoBackBy10Images .Value = t.GoBackBy10Images;
  245. GoBackBy100Images .Value = t.GoBackBy100Images;
  246. ShowFadeInButtonsOnHover .Value = t.ShowFadeInButtonsOnHover;
  247. DisableFadeInButtonsOnHover .Value = t.DisableFadeInButtonsOnHover;
  248. UsingTouchpad .Value = t.UsingTouchpad;
  249. UsingMouse .Value = t.UsingMouse;
  250. SourceFolder .Value = t.SourceFolder;
  251. OutputFolder .Value = t.OutputFolder;
  252. GenerateThumbnails .Value = t.GenerateThumbnails;
  253. Lossless .Value = t.Lossless;
  254. Lossy .Value = t.Lossy;
  255. Start .Value = t.Start;
  256. Thumbnail .Value = t.Thumbnail;
  257. WidthAndHeight .Value = t.WidthAndHeight;
  258. CloseWindowPrompt .Value = t.CloseWindowPrompt;
  259. ShowConfirmationOnEsc .Value = t.ShowConfirmationOnEsc;
  260. ImageAliasing .Value = t.ImageAliasing;
  261. HighQuality .Value = t.HighQuality;
  262. Lighting .Value = t.Lighting;
  263. BlackAndWhite .Value = t.BlackAndWhite;
  264. NegativeColors .Value = t.NegativeColors;
  265. Blur .Value = t.Blur;
  266. PencilSketch .Value = t.PencilSketch;
  267. OldMovie .Value = t.OldMovie;
  268. Posterize .Value = t.Posterize;
  269. ClearEffects .Value = t.ClearEffects;
  270. Solarize .Value = t.Solarize;
  271. Maximize .Value = t.Maximize;
  272. SelectAll .Value = t.SelectAll;
  273. Normal .Value = t.Normal;
  274. FileAssociations .Value = t.FileAssociations;
  275. SelectFileTypesToAssociate .Value = t.SelectFileTypesToAssociate;
  276. Filter .Value = t.Filter;
  277. UnselectAll .Value = t.UnselectAll;
  278. Unassociate .Value = t.Unassociate;
  279. ShowConfirmationDialogWhenMovingFileToRecycleBin .Value = t.ShowConfirmationDialogWhenMovingFileToRecycleBin;
  280. MoveToRecycleBin .Value = t.MoveToRecycleBin;
  281. ShowConfirmationDialogWhenPermanentlyDeletingFile .Value = t.ShowConfirmationDialogWhenPermanentlyDeletingFile;
  282. Downloading .Value = t.Downloading;
  283. Pinned .Value = t.Pinned;
  284. Unpin .Value = t.Unpin;
  285. Pin .Value = t.Pin;
  286. Clear .Value = t.Clear;
  287. OpenFileHistory .Value = t.OpenFileHistory;
  288. ConstrainBackgroundToImage .Value = t.ConstrainBackgroundToImage;
  289. Window .Value = t.Window;
  290. WindowMargin .Value = t.WindowMargin;
  291. Mouse .Value = t.Mouse;
  292. MouseSideButtons .Value = t.MouseSideButtons;
  293. NavigateFileHistory .Value = t.NavigateFileHistory;
  294. NavigateBetweenDirectories .Value = t.NavigateBetweenDirectories;
  295. Comment .Value = t.Comment;
  296. }
  297. #region Static Translation Strings
  298. public BindableReactiveProperty<string?> _1Star { get; } = new();
  299. public BindableReactiveProperty<string?> _2Star { get; } = new();
  300. public BindableReactiveProperty<string?> _3Star { get; } = new();
  301. public BindableReactiveProperty<string?> _4Star { get; } = new();
  302. public BindableReactiveProperty<string?> _5Star { get; } = new();
  303. public BindableReactiveProperty<string?> About { get; } = new();
  304. public BindableReactiveProperty<string?> AboutWindow { get; } = new();
  305. public BindableReactiveProperty<string?> AdjustNavSpeed { get; } = new();
  306. public BindableReactiveProperty<string?> AdjustTimingForSlideshow { get; } = new();
  307. public BindableReactiveProperty<string?> AdjustTimingForZoom { get; } = new();
  308. public BindableReactiveProperty<string?> AdvanceBy100Images { get; } = new();
  309. public BindableReactiveProperty<string?> AdvanceBy10Images { get; } = new();
  310. public BindableReactiveProperty<string?> AllowZoomOut { get; } = new();
  311. public BindableReactiveProperty<string?> Altitude { get; } = new();
  312. public BindableReactiveProperty<string?> Appearance { get; } = new();
  313. public BindableReactiveProperty<string?> ApplicationShortcuts { get; } = new();
  314. public BindableReactiveProperty<string?> ApplicationStartup { get; } = new();
  315. public BindableReactiveProperty<string?> Apply { get; } = new();
  316. public BindableReactiveProperty<string?> Ascending { get; } = new();
  317. public BindableReactiveProperty<string?> Authors { get; } = new();
  318. public BindableReactiveProperty<string?> AutoFitWindow { get; } = new();
  319. public BindableReactiveProperty<string?> BatchResize { get; } = new();
  320. public BindableReactiveProperty<string?> BitDepth { get; } = new();
  321. public BindableReactiveProperty<string?> BlackAndWhite { get; } = new();
  322. public BindableReactiveProperty<string?> Blur { get; } = new();
  323. public BindableReactiveProperty<string?> BottomGalleryItemSize { get; } = new();
  324. public BindableReactiveProperty<string?> BottomGalleryThumbnailStretch { get; } = new();
  325. public BindableReactiveProperty<string?> Brightness { get; } = new();
  326. public BindableReactiveProperty<string?> CameraMaker { get; } = new();
  327. public BindableReactiveProperty<string?> CameraModel { get; } = new();
  328. public BindableReactiveProperty<string?> Cancel { get; } = new();
  329. public BindableReactiveProperty<string?> Center { get; } = new();
  330. public BindableReactiveProperty<string?> CenterWindow { get; } = new();
  331. public BindableReactiveProperty<string?> Centimeters { get; } = new();
  332. public BindableReactiveProperty<string?> ChangeBackground { get; } = new();
  333. public BindableReactiveProperty<string?> ChangeKeybindingText { get; } = new();
  334. public BindableReactiveProperty<string?> ChangeKeybindingTooltip { get; } = new();
  335. public BindableReactiveProperty<string?> ChangingThemeRequiresRestart { get; } = new();
  336. public BindableReactiveProperty<string?> CheckForUpdates { get; } = new();
  337. public BindableReactiveProperty<string?> Clear { get; } = new();
  338. public BindableReactiveProperty<string?> ClearEffects { get; } = new();
  339. public BindableReactiveProperty<string?> Close { get; } = new();
  340. public BindableReactiveProperty<string?> CloseGallery { get; } = new();
  341. public BindableReactiveProperty<string?> CloseWindowPrompt { get; } = new();
  342. public BindableReactiveProperty<string?> ColorPickerTool { get; } = new();
  343. public BindableReactiveProperty<string?> ColorPickerToolTooltip { get; } = new();
  344. public BindableReactiveProperty<string?> ColorRepresentation { get; } = new();
  345. public BindableReactiveProperty<string?> Comment { get; } = new();
  346. public BindableReactiveProperty<string?> CompressedBitsPixel { get; } = new();
  347. public BindableReactiveProperty<string?> Compression { get; } = new();
  348. public BindableReactiveProperty<string?> ConstrainBackgroundToImage { get; } = new();
  349. public BindableReactiveProperty<string?> Contrast { get; } = new();
  350. public BindableReactiveProperty<string?> ConvertTo { get; } = new();
  351. public BindableReactiveProperty<string?> Copy { get; } = new();
  352. public BindableReactiveProperty<string?> CopyFile { get; } = new();
  353. public BindableReactiveProperty<string?> CopyImage { get; } = new();
  354. public BindableReactiveProperty<string?> Copyright { get; } = new();
  355. public BindableReactiveProperty<string?> Created { get; } = new();
  356. public BindableReactiveProperty<string?> CreationTime { get; } = new();
  357. public BindableReactiveProperty<string?> Credits { get; } = new();
  358. public BindableReactiveProperty<string?> Crop { get; } = new();
  359. public BindableReactiveProperty<string?> CtrlToZoom { get; } = new();
  360. public BindableReactiveProperty<string?> DarkTheme { get; } = new();
  361. public BindableReactiveProperty<string?> DateTaken { get; } = new();
  362. public BindableReactiveProperty<string?> DeleteFile { get; } = new();
  363. public BindableReactiveProperty<string?> Descending { get; } = new();
  364. public BindableReactiveProperty<string?> DigitalZoom { get; } = new();
  365. public BindableReactiveProperty<string?> DirectionalBlur { get; } = new();
  366. public BindableReactiveProperty<string?> DisableFadeInButtonsOnHover { get; } = new();
  367. public BindableReactiveProperty<string?> DoubleClick { get; } = new();
  368. public BindableReactiveProperty<string?> Downloading { get; } = new();
  369. public BindableReactiveProperty<string?> DuplicateFile { get; } = new();
  370. public BindableReactiveProperty<string?> Effects { get; } = new();
  371. public BindableReactiveProperty<string?> EffectsTooltip { get; } = new();
  372. public BindableReactiveProperty<string?> ExifVersion { get; } = new();
  373. public BindableReactiveProperty<string?> ExpandedGalleryItemSize { get; } = new();
  374. public BindableReactiveProperty<string?> ExposureBias { get; } = new();
  375. public BindableReactiveProperty<string?> ExposureProgram { get; } = new();
  376. public BindableReactiveProperty<string?> ExposureTime { get; } = new();
  377. public BindableReactiveProperty<string?> File { get; } = new();
  378. public BindableReactiveProperty<string?> FileAssociations { get; } = new();
  379. public BindableReactiveProperty<string?> FileCopyPath { get; } = new();
  380. public BindableReactiveProperty<string?> FileCut { get; } = new();
  381. public BindableReactiveProperty<string?> FileExtension { get; } = new();
  382. public BindableReactiveProperty<string?> FileManagement { get; } = new();
  383. public BindableReactiveProperty<string?> FileName { get; } = new();
  384. public BindableReactiveProperty<string?> FileProperties { get; } = new();
  385. public BindableReactiveProperty<string?> FileSize { get; } = new();
  386. public BindableReactiveProperty<string?> Fill { get; } = new();
  387. public BindableReactiveProperty<string?> FillSquare { get; } = new();
  388. public BindableReactiveProperty<string?> Filter { get; } = new();
  389. public BindableReactiveProperty<string?> FirstImage { get; } = new();
  390. public BindableReactiveProperty<string?> Fit { get; } = new();
  391. public BindableReactiveProperty<string?> FlashEnergy { get; } = new();
  392. public BindableReactiveProperty<string?> FlashMode { get; } = new();
  393. public BindableReactiveProperty<string?> Flip { get; } = new();
  394. public BindableReactiveProperty<string?> Fnumber { get; } = new();
  395. public BindableReactiveProperty<string?> FocalLength { get; } = new();
  396. public BindableReactiveProperty<string?> FocalLength35mm { get; } = new();
  397. public BindableReactiveProperty<string?> Folder { get; } = new();
  398. public BindableReactiveProperty<string?> Forward { get; } = new();
  399. public BindableReactiveProperty<string?> Fstop { get; } = new();
  400. public BindableReactiveProperty<string?> FullPath { get; } = new();
  401. public BindableReactiveProperty<string?> Fullscreen { get; } = new();
  402. public BindableReactiveProperty<string?> GallerySettings { get; } = new();
  403. public BindableReactiveProperty<string?> GalleryThumbnailStretch { get; } = new();
  404. public BindableReactiveProperty<string?> GeneralSettings { get; } = new();
  405. public BindableReactiveProperty<string?> GenerateThumbnails { get; } = new();
  406. public BindableReactiveProperty<string?> GithubRepo { get; } = new();
  407. public BindableReactiveProperty<string?> GlassTheme { get; } = new();
  408. public BindableReactiveProperty<string?> GoBackBy100Images { get; } = new();
  409. public BindableReactiveProperty<string?> GoBackBy10Images { get; } = new();
  410. public BindableReactiveProperty<string?> GoToImageAtSpecifiedIndex { get; } = new();
  411. public BindableReactiveProperty<string?> Height { get; } = new();
  412. public BindableReactiveProperty<string?> HideBottomGallery { get; } = new();
  413. public BindableReactiveProperty<string?> HideBottomToolbar { get; } = new();
  414. public BindableReactiveProperty<string?> HideUI { get; } = new();
  415. public BindableReactiveProperty<string?> HighlightColor { get; } = new();
  416. public BindableReactiveProperty<string?> HighQuality { get; } = new();
  417. public BindableReactiveProperty<string?> Image { get; } = new();
  418. public BindableReactiveProperty<string?> ImageAliasing { get; } = new();
  419. public BindableReactiveProperty<string?> ImageControl { get; } = new();
  420. public BindableReactiveProperty<string?> ImageInfo { get; } = new();
  421. public BindableReactiveProperty<string?> Inches { get; } = new();
  422. public BindableReactiveProperty<string?> InterfaceConfiguration { get; } = new();
  423. public BindableReactiveProperty<string?> ISOSpeed { get; } = new();
  424. public BindableReactiveProperty<string?> Language { get; } = new();
  425. public BindableReactiveProperty<string?> LastAccessTime { get; } = new();
  426. public BindableReactiveProperty<string?> LastImage { get; } = new();
  427. public BindableReactiveProperty<string?> Latitude { get; } = new();
  428. public BindableReactiveProperty<string?> LensMaker { get; } = new();
  429. public BindableReactiveProperty<string?> LensModel { get; } = new();
  430. public BindableReactiveProperty<string?> Lighting { get; } = new();
  431. public BindableReactiveProperty<string?> LightSource { get; } = new();
  432. public BindableReactiveProperty<string?> LightTheme { get; } = new();
  433. public BindableReactiveProperty<string?> Longitude { get; } = new();
  434. public BindableReactiveProperty<string?> Lossless { get; } = new();
  435. public BindableReactiveProperty<string?> Lossy { get; } = new();
  436. public BindableReactiveProperty<string?> MaxAperture { get; } = new();
  437. public BindableReactiveProperty<string?> Maximize { get; } = new();
  438. public BindableReactiveProperty<string?> MeteringMode { get; } = new();
  439. public BindableReactiveProperty<string?> MiscSettings { get; } = new();
  440. public BindableReactiveProperty<string?> Modified { get; } = new();
  441. public BindableReactiveProperty<string?> Mouse { get; } = new();
  442. public BindableReactiveProperty<string?> MouseDrag { get; } = new();
  443. public BindableReactiveProperty<string?> MouseSideButtons { get; } = new();
  444. public BindableReactiveProperty<string?> MouseWheel { get; } = new();
  445. public BindableReactiveProperty<string?> MoveToRecycleBin { get; } = new();
  446. public BindableReactiveProperty<string?> MoveWindow { get; } = new();
  447. public BindableReactiveProperty<string?> NavigateBetweenDirectories { get; } = new();
  448. public BindableReactiveProperty<string?> NavigateFileHistory { get; } = new();
  449. public BindableReactiveProperty<string?> Navigation { get; } = new();
  450. public BindableReactiveProperty<string?> NegativeColors { get; } = new();
  451. public BindableReactiveProperty<string?> NewWindow { get; } = new();
  452. public BindableReactiveProperty<string?> NextFolder { get; } = new();
  453. public BindableReactiveProperty<string?> NextImage { get; } = new();
  454. public BindableReactiveProperty<string?> NoConversion { get; } = new();
  455. public BindableReactiveProperty<string?> None { get; } = new();
  456. public BindableReactiveProperty<string?> NoResize { get; } = new();
  457. public BindableReactiveProperty<string?> Normal { get; } = new();
  458. public BindableReactiveProperty<string?> NormalWindow { get; } = new();
  459. public BindableReactiveProperty<string?> OldMovie { get; } = new();
  460. public BindableReactiveProperty<string?> Open { get; } = new();
  461. public BindableReactiveProperty<string?> OpenFileDialog { get; } = new();
  462. public BindableReactiveProperty<string?> OpenFileHistory { get; } = new();
  463. public BindableReactiveProperty<string?> OpenInSameWindow { get; } = new();
  464. public BindableReactiveProperty<string?> OpenLastFile { get; } = new();
  465. public BindableReactiveProperty<string?> OpenWith { get; } = new();
  466. public BindableReactiveProperty<string?> OptimizeImage { get; } = new();
  467. public BindableReactiveProperty<string?> Orientation { get; } = new();
  468. public BindableReactiveProperty<string?> OutputFolder { get; } = new();
  469. public BindableReactiveProperty<string?> Pan { get; } = new();
  470. public BindableReactiveProperty<string?> Paste { get; } = new();
  471. public BindableReactiveProperty<string?> PencilSketch { get; } = new();
  472. public BindableReactiveProperty<string?> Percentage { get; } = new();
  473. public BindableReactiveProperty<string?> PermanentlyDelete { get; } = new();
  474. public BindableReactiveProperty<string?> PhotometricInterpretation { get; } = new();
  475. public BindableReactiveProperty<string?> Pin { get; } = new();
  476. public BindableReactiveProperty<string?> Pinned { get; } = new();
  477. public BindableReactiveProperty<string?> Pixels { get; } = new();
  478. public BindableReactiveProperty<string?> Posterize { get; } = new();
  479. public BindableReactiveProperty<string?> PrevFolder { get; } = new();
  480. public BindableReactiveProperty<string?> PrevImage { get; } = new();
  481. public BindableReactiveProperty<string?> Print { get; } = new();
  482. public BindableReactiveProperty<string?> PrintSizeCm { get; } = new();
  483. public BindableReactiveProperty<string?> PrintSizeIn { get; } = new();
  484. public BindableReactiveProperty<string?> Quality { get; } = new();
  485. public BindableReactiveProperty<string?> Random { get; } = new();
  486. public BindableReactiveProperty<string?> ReadAbleAspectRatio { get; } = new();
  487. public BindableReactiveProperty<string?> RecentFiles { get; } = new();
  488. public BindableReactiveProperty<string?> Reload { get; } = new();
  489. public BindableReactiveProperty<string?> RemoveStarRating { get; } = new();
  490. public BindableReactiveProperty<string?> RenameFile { get; } = new();
  491. public BindableReactiveProperty<string?> Reset { get; } = new();
  492. public BindableReactiveProperty<string?> ResetButtonText { get; } = new();
  493. public BindableReactiveProperty<string?> ResetZoom { get; } = new();
  494. public BindableReactiveProperty<string?> Resize { get; } = new();
  495. public BindableReactiveProperty<string?> ResizeImage { get; } = new();
  496. public BindableReactiveProperty<string?> Resolution { get; } = new();
  497. public BindableReactiveProperty<string?> ResolutionUnit { get; } = new();
  498. public BindableReactiveProperty<string?> RestoreDown { get; } = new();
  499. public BindableReactiveProperty<string?> Reverse { get; } = new();
  500. public BindableReactiveProperty<string?> RotateLeft { get; } = new();
  501. public BindableReactiveProperty<string?> RotateRight { get; } = new();
  502. public BindableReactiveProperty<string?> Saturation { get; } = new();
  503. public BindableReactiveProperty<string?> Save { get; } = new();
  504. public BindableReactiveProperty<string?> SaveAs { get; } = new();
  505. public BindableReactiveProperty<string?> ScrollAndRotate { get; } = new();
  506. public BindableReactiveProperty<string?> ScrollDirection { get; } = new();
  507. public BindableReactiveProperty<string?> ScrollDisabled { get; } = new();
  508. public BindableReactiveProperty<string?> ScrollDown { get; } = new();
  509. public BindableReactiveProperty<string?> ScrollEnabled { get; } = new();
  510. public BindableReactiveProperty<string?> ScrollToBottom { get; } = new();
  511. public BindableReactiveProperty<string?> ScrollToTop { get; } = new();
  512. public BindableReactiveProperty<string?> ScrollToZoom { get; } = new();
  513. public BindableReactiveProperty<string?> ScrollUp { get; } = new();
  514. public BindableReactiveProperty<string?> SearchSubdirectory { get; } = new();
  515. public BindableReactiveProperty<string?> SecAbbreviation { get; } = new();
  516. public BindableReactiveProperty<string?> SelectAll { get; } = new();
  517. public BindableReactiveProperty<string?> SelectFile { get; } = new();
  518. public BindableReactiveProperty<string?> SelectFileTypesToAssociate { get; } = new();
  519. public BindableReactiveProperty<string?> SelectGalleryThumb { get; } = new();
  520. public BindableReactiveProperty<string?> SetAsLockScreenImage { get; } = new();
  521. public BindableReactiveProperty<string?> SetAsWallpaper { get; } = new();
  522. public BindableReactiveProperty<string?> SetStarRating { get; } = new();
  523. public BindableReactiveProperty<string?> Settings { get; } = new();
  524. public BindableReactiveProperty<string?> Sharpness { get; } = new();
  525. public BindableReactiveProperty<string?> ShowAllSettingsWindow { get; } = new();
  526. public BindableReactiveProperty<string?> ShowBottomGallery { get; } = new();
  527. public BindableReactiveProperty<string?> ShowBottomGalleryWhenUiIsHidden { get; } = new();
  528. public BindableReactiveProperty<string?> ShowBottomToolbar { get; } = new();
  529. public BindableReactiveProperty<string?> ShowConfirmationDialogWhenMovingFileToRecycleBin { get; } = new();
  530. public BindableReactiveProperty<string?> ShowConfirmationDialogWhenPermanentlyDeletingFile { get; } = new();
  531. public BindableReactiveProperty<string?> ShowConfirmationOnEsc { get; } = new();
  532. public BindableReactiveProperty<string?> ShowFadeInButtonsOnHover { get; } = new();
  533. public BindableReactiveProperty<string?> ShowFileSavingDialog { get; } = new();
  534. public BindableReactiveProperty<string?> ShowImageGallery { get; } = new();
  535. public BindableReactiveProperty<string?> ShowInFolder { get; } = new();
  536. public BindableReactiveProperty<string?> ShowUI { get; } = new();
  537. public BindableReactiveProperty<string?> SideBySide { get; } = new();
  538. public BindableReactiveProperty<string?> SideBySideTooltip { get; } = new();
  539. public BindableReactiveProperty<string?> SizeMp { get; } = new();
  540. public BindableReactiveProperty<string?> SizeTooltip { get; } = new();
  541. public BindableReactiveProperty<string?> Slideshow { get; } = new();
  542. public BindableReactiveProperty<string?> Software { get; } = new();
  543. public BindableReactiveProperty<string?> Solarize { get; } = new();
  544. public BindableReactiveProperty<string?> SortFilesBy { get; } = new();
  545. public BindableReactiveProperty<string?> SourceFolder { get; } = new();
  546. public BindableReactiveProperty<string?> Square { get; } = new();
  547. public BindableReactiveProperty<string?> Start { get; } = new();
  548. public BindableReactiveProperty<string?> StayCentered { get; } = new();
  549. public BindableReactiveProperty<string?> StayTopMost { get; } = new();
  550. public BindableReactiveProperty<string?> Stretch { get; } = new();
  551. public BindableReactiveProperty<string?> Subject { get; } = new();
  552. public BindableReactiveProperty<string?> Theme { get; } = new();
  553. public BindableReactiveProperty<string?> Thumbnail { get; } = new();
  554. public BindableReactiveProperty<string?> Tile { get; } = new();
  555. public BindableReactiveProperty<string?> Title { get; } = new();
  556. public BindableReactiveProperty<string?> ToggleFullscreen { get; } = new();
  557. public BindableReactiveProperty<string?> ToggleLooping { get; } = new();
  558. public BindableReactiveProperty<string?> ToggleScroll { get; } = new();
  559. public BindableReactiveProperty<string?> ToggleTaskbarProgress { get; } = new();
  560. public BindableReactiveProperty<string?> Unassociate { get; } = new();
  561. public BindableReactiveProperty<string?> UnFlip { get; } = new();
  562. public BindableReactiveProperty<string?> Uniform { get; } = new();
  563. public BindableReactiveProperty<string?> UniformToFill { get; } = new();
  564. public BindableReactiveProperty<string?> Unpin { get; } = new();
  565. public BindableReactiveProperty<string?> UnselectAll { get; } = new();
  566. public BindableReactiveProperty<string?> UsingMouse { get; } = new();
  567. public BindableReactiveProperty<string?> UsingTouchpad { get; } = new();
  568. public BindableReactiveProperty<string?> Version { get; } = new();
  569. public BindableReactiveProperty<string?> ViewLicenseFile { get; } = new();
  570. public BindableReactiveProperty<string?> WhiteBalance { get; } = new();
  571. public BindableReactiveProperty<string?> Width { get; } = new();
  572. public BindableReactiveProperty<string?> WidthAndHeight { get; } = new();
  573. public BindableReactiveProperty<string?> Window { get; } = new();
  574. public BindableReactiveProperty<string?> WindowManagement { get; } = new();
  575. public BindableReactiveProperty<string?> WindowMargin { get; } = new();
  576. public BindableReactiveProperty<string?> WindowScaling { get; } = new();
  577. public BindableReactiveProperty<string?> Zoom { get; } = new();
  578. public BindableReactiveProperty<string?> ZoomIn { get; } = new();
  579. public BindableReactiveProperty<string?> ZoomOut { get; } = new();
  580. #endregion strings
  581. #region Dynamic Translation strings
  582. public BindableReactiveProperty<string?> IsCtrlToZoom { get; } = new();
  583. public BindableReactiveProperty<string?> IsFlipped { get; } = new();
  584. public BindableReactiveProperty<string?> IsLooping { get; } = new();
  585. public BindableReactiveProperty<string?> IsScrolling { get; } = new();
  586. public BindableReactiveProperty<string?> IsShowingBottomGallery { get; } = new();
  587. public BindableReactiveProperty<string?> IsShowingBottomToolbar { get; } = new();
  588. public BindableReactiveProperty<string?> IsShowingFadingUIButtons { get; } = new();
  589. public BindableReactiveProperty<string?> IsShowingUI { get; } = new();
  590. public BindableReactiveProperty<string?> IsUsingTouchpad { get; } = new();
  591. #endregion
  592. }