Forráskód Böngészése

Removed WPF PixiEditor and renamed AvaloniaUI

flabbet 1 éve
szülő
commit
a4d1597424
100 módosított fájl, 0 hozzáadás és 9699 törlés
  1. 0 6
      src/PixiEditor.AvaloniaUI/BuildConstants.cs
  2. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/ar.json
  3. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/cs.json
  4. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/de.json
  5. 0 677
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/en.json
  6. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/es.json
  7. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/hu.json
  8. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/pl.json
  9. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/pt-br.json
  10. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/ru.json
  11. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/uk.json
  12. 0 564
      src/PixiEditor.AvaloniaUI/Data/Localization/Languages/zh.json
  13. 0 83
      src/PixiEditor.AvaloniaUI/Data/Localization/LocalizationData.json
  14. 0 59
      src/PixiEditor.AvaloniaUI/Data/Localization/LocalizationDataSchema.json
  15. 0 614
      src/PixiEditor.AvaloniaUI/Data/ShortcutActionMaps/AsepriteShortcutMap.json
  16. 0 23
      src/PixiEditor.AvaloniaUI/Exceptions/CorruptedFileException.cs
  17. 0 21
      src/PixiEditor.AvaloniaUI/Exceptions/InvalidFileTypeException.cs
  18. 0 22
      src/PixiEditor.AvaloniaUI/Exceptions/MissingFileException.cs
  19. 0 8
      src/PixiEditor.AvaloniaUI/GlobalUsings.cs
  20. 0 33
      src/PixiEditor.AvaloniaUI/Helpers/Behaviours/ClearFocusOnClickBehavior.cs
  21. 0 34
      src/PixiEditor.AvaloniaUI/Helpers/Behaviours/GlobalShortcutFocusBehavior.cs
  22. 0 180
      src/PixiEditor.AvaloniaUI/Helpers/Behaviours/SliderUpdateBehavior.cs
  23. 0 31
      src/PixiEditor.AvaloniaUI/Helpers/Behaviours/TextBlockExtensions.cs
  24. 0 129
      src/PixiEditor.AvaloniaUI/Helpers/Behaviours/TextBoxFocusBehavior.cs
  25. 0 30
      src/PixiEditor.AvaloniaUI/Helpers/ChangeInfoListOptimizer.cs
  26. 0 42
      src/PixiEditor.AvaloniaUI/Helpers/Collections/ActionDisplayList.cs
  27. 0 110
      src/PixiEditor.AvaloniaUI/Helpers/ColorHelper.cs
  28. 0 18
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ActiveToolToZoomModeConverter.cs
  29. 0 20
      src/PixiEditor.AvaloniaUI/Helpers/Converters/BlendModeToStringConverter.cs
  30. 0 19
      src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolOrToVisibilityConverter.cs
  31. 0 34
      src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToBrushConverter.cs
  32. 0 25
      src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToIntConverter.cs
  33. 0 57
      src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToValueConverter.cs
  34. 0 17
      src/PixiEditor.AvaloniaUI/Helpers/Converters/CountToVisibilityConverter.cs
  35. 0 23
      src/PixiEditor.AvaloniaUI/Helpers/Converters/EmptyStringFillerConverter.cs
  36. 0 36
      src/PixiEditor.AvaloniaUI/Helpers/Converters/EnumBooleanConverter.cs
  37. 0 27
      src/PixiEditor.AvaloniaUI/Helpers/Converters/EnumToStringConverter.cs
  38. 0 40
      src/PixiEditor.AvaloniaUI/Helpers/Converters/FileExtensionToColorConverter.cs
  39. 0 16
      src/PixiEditor.AvaloniaUI/Helpers/Converters/FloorConverter.cs
  40. 0 32
      src/PixiEditor.AvaloniaUI/Helpers/Converters/FormattedColorConverter.cs
  41. 0 36
      src/PixiEditor.AvaloniaUI/Helpers/Converters/GenericColorToMediaColorConverter.cs
  42. 0 21
      src/PixiEditor.AvaloniaUI/Helpers/Converters/IndentConverter.cs
  43. 0 32
      src/PixiEditor.AvaloniaUI/Helpers/Converters/IndexToAssociatedKeyConverter.cs
  44. 0 18
      src/PixiEditor.AvaloniaUI/Helpers/Converters/IntToPickerTypeConverter.cs
  45. 0 15
      src/PixiEditor.AvaloniaUI/Helpers/Converters/IntToViewportRectConverter.cs
  46. 0 10
      src/PixiEditor.AvaloniaUI/Helpers/Converters/IsSelectionToolConverter.cs
  47. 0 64
      src/PixiEditor.AvaloniaUI/Helpers/Converters/JsonConverters/DefaultUnknownEnumConverter.cs
  48. 0 23
      src/PixiEditor.AvaloniaUI/Helpers/Converters/KeyToStringConverter.cs
  49. 0 33
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ModifierFlagToModifiersConverter.cs
  50. 0 40
      src/PixiEditor.AvaloniaUI/Helpers/Converters/MultiplyConverter.cs
  51. 0 43
      src/PixiEditor.AvaloniaUI/Helpers/Converters/NotNullToVisibilityConverter.cs
  52. 0 12
      src/PixiEditor.AvaloniaUI/Helpers/Converters/NullToVisibilityConverter.cs
  53. 0 20
      src/PixiEditor.AvaloniaUI/Helpers/Converters/PaletteItemsToWidthConverter.cs
  54. 0 17
      src/PixiEditor.AvaloniaUI/Helpers/Converters/PaletteViewerWidthToVisibilityConverter.cs
  55. 0 19
      src/PixiEditor.AvaloniaUI/Helpers/Converters/RadiansToDegreesConverter.cs
  56. 0 20
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ReciprocalConverter.cs
  57. 0 26
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ScaleToBitmapScalingModeConverter.cs
  58. 0 22
      src/PixiEditor.AvaloniaUI/Helpers/Converters/SingleInstanceConverter.cs
  59. 0 24
      src/PixiEditor.AvaloniaUI/Helpers/Converters/SingleInstanceMultiValueConverter.cs
  60. 0 23
      src/PixiEditor.AvaloniaUI/Helpers/Converters/StructureMemberSelectionTypeToColorConverter.cs
  61. 0 24
      src/PixiEditor.AvaloniaUI/Helpers/Converters/SubtractConverter.cs
  62. 0 23
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ThresholdVisibilityConverter.cs
  63. 0 36
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ToolSizeToIntConverter.cs
  64. 0 26
      src/PixiEditor.AvaloniaUI/Helpers/Converters/WidthToBitmapScalingModeConverter.cs
  65. 0 15
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ZoomModeToHitTestVisibleConverter.cs
  66. 0 29
      src/PixiEditor.AvaloniaUI/Helpers/Converters/ZoomToViewportConverter.cs
  67. 0 159
      src/PixiEditor.AvaloniaUI/Helpers/CrashHelper.cs
  68. 0 37
      src/PixiEditor.AvaloniaUI/Helpers/DesignCommandHelpers.cs
  69. 0 30
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/BlendModeEx.cs
  70. 0 33
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/ColorHelpers.cs
  71. 0 29
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/DictionaryHelper.cs
  72. 0 18
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/DirectoryExtensions.cs
  73. 0 90
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/PixelFormatHelper.cs
  74. 0 99
      src/PixiEditor.AvaloniaUI/Helpers/Extensions/PixiParserDocumentEx.cs
  75. 0 68
      src/PixiEditor.AvaloniaUI/Helpers/IconEvaluators.cs
  76. 0 13
      src/PixiEditor.AvaloniaUI/Helpers/InputKeyHelpers.cs
  77. 0 65
      src/PixiEditor.AvaloniaUI/Helpers/PaletteHelpers.cs
  78. 0 17
      src/PixiEditor.AvaloniaUI/Helpers/ProcessHelper.cs
  79. 0 17
      src/PixiEditor.AvaloniaUI/Helpers/SizeCalculator.cs
  80. 0 27
      src/PixiEditor.AvaloniaUI/Helpers/StringHelpers.cs
  81. 0 95
      src/PixiEditor.AvaloniaUI/Helpers/SupportedFilesHelper.cs
  82. 0 56
      src/PixiEditor.AvaloniaUI/Helpers/SurfaceHelpers.cs
  83. 0 10
      src/PixiEditor.AvaloniaUI/Helpers/UI/ExecutionTrigger.cs
  84. 0 20
      src/PixiEditor.AvaloniaUI/Helpers/UI/TreeViewItemHelper.cs
  85. 0 39
      src/PixiEditor.AvaloniaUI/Helpers/VersionHelpers.cs
  86. BIN
      src/PixiEditor.AvaloniaUI/Images/CheckerTile.png
  87. BIN
      src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Layer/ToggleMask.png
  88. BIN
      src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Layer/ToggleVisible.png
  89. BIN
      src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Links/OpenDocumentation.png
  90. BIN
      src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Links/OpenRepository.png
  91. BIN
      src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Search/Toggle.png
  92. BIN
      src/PixiEditor.AvaloniaUI/Images/DiagonalRed.png
  93. BIN
      src/PixiEditor.AvaloniaUI/Images/Download.png
  94. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/ar.png
  95. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/cs.png
  96. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/de.png
  97. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/en.png
  98. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/es.png
  99. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/hu.png
  100. BIN
      src/PixiEditor.AvaloniaUI/Images/LanguageFlags/it.png

+ 0 - 6
src/PixiEditor.AvaloniaUI/BuildConstants.cs

@@ -1,6 +0,0 @@
-namespace PixiEditor.AvaloniaUI;
-
-public static class BuildConstants
-{
-    public const string CrashReportWebhookUrl = "${crash-report-webhook-url}";
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/ar.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "الملفات الاخيرة",
-  "OPEN_FILE": "فتح ملف",
-  "NEW_FILE": "جديد",
-  "RECENT_EMPTY_TEXT": "الكثير من المساحات الفارغة",
-  "LANGUAGE": "اللغة",
-  "GENERAL": "العامة",
-  "DISCORD": "ديسكورد",
-  "KEY_BINDINGS": "ارتباطات المفاتيح",
-  "MISC": "متنوع",
-  "SHOW_STARTUP_WINDOW": "عرض نافذة بدء التشغيل",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "عرض معاينة الصورة في شريط المهام",
-  "RECENT_FILE_LENGTH": "طول قائمة الملفات الاخيرة",
-  "RECENT_FILE_LENGTH_TOOLTIP": "كم عدد المستندات التي يتم اضهارها في ملف > الملفات الاخيرة. الافتراضي: 8",
-  "DEFAULT_NEW_SIZE": "الحجم الافتراضي للملف الجديد",
-  "WIDTH": "العرض",
-  "HEIGHT": "الطول",
-  "TOOLS": "ألادوات",
-  "ENABLE_SHARED_TOOLBAR": "تمكين شريط الادوات المشترك",
-  "AUTOMATIC_UPDATES": "التحديثات التلقائية",
-  "CHECK_FOR_UPDATES": "تحقق من التحديثات عند بدء التشغيل",
-  "UPDATE_STREAM": "مصدر التحديث",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "لا يمكن تغيير قنوات التحديث إلا في إصدار مستقل (يتم تنزيله من https://pixieditor.net).\nتتعامل إصدارات Steam و Microsoft Store مع التحديثات بشكل منفصل.",
-  "DEBUG": "معالجة",
-  "ENABLE_DEBUG_MODE": "تفعيل وضع المعالجة",
-  "OPEN_CRASH_REPORTS_DIR": "افتح دليل تقارير الاعطال",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "مفعل",
-  "SHOW_IMAGE_NAME": "اضهار اسم الصورة",
-  "SHOW_IMAGE_SIZE": "اضهار حجم الصورة",
-  "SHOW_LAYER_COUNT": "اضهار عدد الطبقات",
-  "FILE": "ملف",
-  "RECENT": "مؤخرًا",
-  "OPEN": "فتح",
-  "SAVE_PIXI": "حفض ( .pixi )",
-  "SAVE_AS_PIXI": "حفض جديد ك ( .pixi )",
-  "EXPORT_IMG": "تصدير (png, .jpg., الخ.)",
-  "EDIT": "تعديل",
-  "EXIT": "خروج",
-  "PERCENTAGE": "نسبة مئوية",
-  "ABSOLUTE": "مطلق",
-  "PRESERVE_ASPECT_RATIO": "الإحتفاظ بنسبة العرض للإرتفاع",
-  "ANCHOR_POINT": "نقاط الربط",
-  "RESIZE_IMAGE": "تغيير حجم الصورة",
-  "RESIZE": "تغيير الحجم",
-  "DOCUMENTATION": "التعليمات",
-  "WEBSITE": "الموقع",
-  "OPEN_WEBSITE": "فتح الموقع",
-  "REPOSITORY": "Repository",
-  "OPEN_REPOSITORY": "فتح Repository",
-  "LICENSE": "رخصة",
-  "OPEN_LICENSE": "فتح الترخيص",
-  "THIRD_PARTY_LICENSES": "تراخيص الطرف الثالث",
-  "OPEN_THIRD_PARTY_LICENSES": "فتح تراخيص الطرف الثالث",
-  "APPLY_TRANSFORM": "تطبيق التحويل",
-  "INCREASE_TOOL_SIZE": "زيادة حجم الأداة",
-  "DECREASE_TOOL_SIZE": "تقليل حجم الأداة",
-  "TO_INSTALL_UPDATE": "لتنزيل التحديث {0}",
-  "DOWNLOADING_UPDATE": "تحميل التحديث...",
-  "UPDATE_READY": "التحديث جاهز للتثبيت. هل تريد تثبيته الآن؟",
-  "NEW_UPDATE": "تحديث جديد",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "تعذر التحديث بدون امتيازات المسؤول. الرجاء تشغيل PixiEditor كمسؤول.",
-  "INSUFFICIENT_PERMISSIONS": "أذونات غير كافية",
-  "UPDATE_CHECK_FAILED": "فشل التحقق من التحديث",
-  "COULD_NOT_CHECK_FOR_UPDATES": "تعذر التحقق مما إذا كان هناك تحديث متوفر.",
-  "VERSION": "الاصدار {0}",
-  "OPEN_TEMP_DIR": "افتح الدليل temp",
-  "OPEN_LOCAL_APPDATA_DIR": "افتح دليل Local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "افتح دليل Roaming AppData",
-  "OPEN_INSTALLATION_DIR": "افتح دليل التثبيت",
-  "DUMP_ALL_COMMANDS": "تفريغ كل الأوامر",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "تفريغ كل الأوامر في ملف نصي",
-  "CRASH": "توقيف",
-  "CRASH_APP": "توقيف البرنامج",
-  "DELETE_USR_PREFS": "حذف تفضيلات المستخدم (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "حذف ملف الاختصار (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "حذف بيانات البرنامج (Roaming AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "إنشاء قالب روابط المفاتيح",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "إنشاء قالب json لربط المفاتيح",
-  "VALIDATE_SHORTCUT_MAP": "تحقق من صحة الاختصار",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "تحقق من صحة الاختصار",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "مفاتيح فارغة: {0}\nأوامر غير معروفة: {1}",
-  "RESULT": "نتيجة",
-  "CLEAR_RECENT_DOCUMENTS": "مسح المستندات الأخيرة",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "مسح المستندات التي تم فتحها مؤخرًا",
-  "OPEN_CMD_DEBUG_WINDOW": "افتح نافذة تصحيح أخطاء الأمر",
-  "PATH_DOES_NOT_EXIST": "{0} غير موجود.",
-  "LOCATION_DOES_NOT_EXIST": "الموقع غير موجود.",
-  "FILE_NOT_FOUND": "لم يتم العثور على الملف.",
-  "ARE_YOU_SURE": "هل انت متاكد؟",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "هل أنت متأكد أنك تريد حذف {0}؟\nستفقد هذه البيانات لجميع التركيبات.\n(مسار كامل: {1})",
-  "FAILED_TO_OPEN_FILE": "فشل في فتح الملف",
-  "OLD_FILE_FORMAT": "تنسيق الملف القديم",
-  "OLD_FILE_FORMAT_DESCRIPTION": "يستخدم ملف pixi هذا التنسيق القديم ،\n  التي لم تعد مدعومة ولا يمكن فتحها.",
-  "NOTHING_FOUND": "لم يتم العثور على شيء",
-  "EXPORT": "تصدير",
-  "EXPORT_IMAGE": "تصدير الصورة",
-  "IMPORT": "اضافة",
-  "SHORTCUT_TEMPLATES": "اختصارات القوالب",
-  "RESET_ALL": "إعادة ضبط الكل",
-  "LAYER": "طبقة",
-  "LAYER_DELETE_SELECTED": "حذف الطبقة/المجلد النشط",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "حذف الطبقة أو المجلد النشط",
-  "LAYER_DELETE_ALL_SELECTED": "احذف جميع الطبقات / المجلدات المحددة",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "احذف كل الطبقات و / أو المجلدات المحددة",
-  "DELETE_SELECTED_PIXELS": "حذف البكسلات المحددة",
-  "NEW_FOLDER": "مجلد جديد",
-  "CREATE_NEW_FOLDER": "انشاء مجلد جديد",
-  "NEW_LAYER": "طبقة جديدة",
-  "CREATE_NEW_LAYER": "انشاء طبقة جديدة",
-  "NEW_IMAGE": "صورة جديدة",
-  "CREATE_NEW_IMAGE": "انشاء صورة جديدة",
-  "SAVE": "حفض",
-  "SAVE_AS": "حفض جديد...",
-  "IMAGE": "صورة",
-  "SAVE_IMAGE": "حفض الصورة",
-  "SAVE_IMAGE_AS": "حفض الصورة كجديدة",
-  "DUPLICATE": "تكرار",
-  "DUPLICATE_SELECTED_LAYER": "تكرار الطبقة المجددة",
-  "CREATE_MASK": "انشاء قناع",
-  "DELETE_MASK": "حذف قناع",
-  "TOGGLE_MASK": "تبديل القناع",
-  "APPLY_MASK": "تطبيق القناع",
-  "TOGGLE_VISIBILITY": "تبديل الرؤية",
-  "MOVE_MEMBER_UP": "حرك العضو لأعلى",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "انقل الطبقة أو المجلد المحدد لأعلى",
-  "MOVE_MEMBER_DOWN": "حرك العضو لأسفل",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "انقل الطبقة أو المجلد المحدد لأسفل",
-  "MERGE_ALL_SELECTED_LAYERS": "دمج كل الطبقات المحددة",
-  "MERGE_WITH_ABOVE": "دمج الطبقة المحددة أعلاه",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "دمج الطبقة المحددة مع الطبقة التي فوقها",
-  "MERGE_WITH_BELOW": "دمج الطبقة المحددة أدناه",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "دمج الطبقة المحددة مع الطبقة الموجودة تحتها",
-  "ADD_REFERENCE_LAYER": "أضف طبقة مرجعية",
-  "DELETE_REFERENCE_LAYER": "احذف الطبقة المرجعية",
-  "TRANSFORM_REFERENCE_LAYER": "تحويل الطبقة المرجعية",
-  "TOGGLE_REFERENCE_LAYER_POS": "تبديل موضع الطبقة المرجعية",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "تبديل الطبقة المرجعية بين الأعلى أو الأكثر أدناه",
-  "RESET_REFERENCE_LAYER_POS": "إعادة تعيين موضع الطبقة المرجعية",
-  "CLIP_CANVAS": "Clip Canvas",
-  "FLIP_IMG_VERTICALLY": "قلب الصورة عموديًا",
-  "FLIP_IMG_HORIZONTALLY": "قلب الصورة أفقيًا",
-  "FLIP_LAYERS_VERTICALLY": "قلب الطبقات المحددة عموديًا",
-  "FLIP_LAYERS_HORIZONTALLY": "قلب الطبقات المحددة أفقيًا",
-  "ROT_IMG_90": "تدوير الصورة 90 درجة",
-  "ROT_IMG_180": "تدوير الصورة 180 درجة",
-  "ROT_IMG_-90": "تدوير الصورة -90 درجة",
-  "ROT_LAYERS_90": "تدوير الطبقات المحددة 90 درجة",
-  "ROT_LAYERS_180": "تدوير الطبقات المحددة 180 درجة",
-  "ROT_LAYERS_-90": "تدوير الطبقات المحددة -90 درجة",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "تبديل محور التناظر العمودي",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "تبديل محور التناظر الأفقي",
-  "DELETE_PIXELS": "حذف pixels",
-  "DELETE_PIXELS_DESCRIPTIVE": "حذف pixels المحددة",
-  "RESIZE_DOCUMENT": "تغيير حجم العنصر",
-  "RESIZE_CANVAS": "تغيير حجم الصورة",
-  "CENTER_CONTENT": "توسيط المحتوى",
-  "CUT": "قص",
-  "CUT_DESCRIPTIVE": "قص المنطقة/الطبقات المحددة",
-  "PASTE": "لصق",
-  "PASTE_DESCRIPTIVE": "لصق محتويات الحافظة",
-  "PASTE_AS_NEW_LAYER": "لصق كطبقة جديدة",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "لصق من الحافضةكطبقة جديدة",
-  "PASTE_REFERENCE_LAYER": "لصق الطبقة المرجعية",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "لصق محتويات الحافظة كطبقة مرجعية",
-  "PASTE_COLOR": "لصق اللون",
-  "PASTE_COLOR_DESCRIPTIVE": "لصق اللون من الحافظة",
-  "PASTE_COLOR_SECONDARY": "لصق اللون على أنه ثانوي",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "الصق اللون من الحافظة كلون ثانوي",
-  "CLIPBOARD": "الحافظة",
-  "COPY": "نسخ",
-  "COPY_DESCRIPTIVE": "نسخ الي الحافضة",
-  "COPY_COLOR_HEX": "نسخ اللون الاساسي (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "نسخ اللون الاساسي ك HEX",
-  "COPY_COLOR_RGB": "نسخ اللون الاساسي (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "نسخ اللون الاساسي ك RGB",
-  "COPY_COLOR_SECONDARY_HEX": "نسخ اللون الثانوي (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "نسخ اللون الثانوي ك HEX",
-  "COPY_COLOR_SECONDARY_RGB": "نسخ اللون الثانوي (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "نسخ اللون الثانوي ك RGB",
-  "PALETTE_COLORS": "لوحة الالوان",
-  "REPLACE_SECONDARY_BY_PRIMARY": "استبدل اللون الثانوي باللون الأساسي",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "استبدل اللون الثانوي باللون الأساسي",
-  "REPLACE_PRIMARY_BY_SECONDARY": "استبدل اللون الأساسي باللون الثانوي",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "استبدل اللون الأساسي باللون الثانوي",
-  "OPEN_PALETTE_BROWSER": "افتح متصفح لوحة الألوان",
-  "OVERWRITE_PALETTE_CONSENT": "اللوحة '{0}' موجودة بالفعل ، هل تريد استبدالها؟",
-  "PALETTE_EXISTS": "لوح الألوان موجود بالفعل",
-  "REPLACE_PALETTE_CONSENT": "هل تريد استبدال اللوحة الحالية باللوحة المحددة؟",
-  "REPLACE_PALETTE": "استبدال اللوحة الحالية",
-  "SELECT_COLOR_1": "حدد اللون 1",
-  "SELECT_COLOR_2": "حدد اللون 2",
-  "SELECT_COLOR_3": "حدد اللون 3",
-  "SELECT_COLOR_4": "حدد اللون 4",
-  "SELECT_COLOR_5": "حدد اللون 5",
-  "SELECT_COLOR_6": "حدد اللون 6",
-  "SELECT_COLOR_7": "حدد اللون 7",
-  "SELECT_COLOR_8": "حدد اللون 8",
-  "SELECT_COLOR_9": "حدد اللون 9",
-  "SELECT_COLOR_10": "حدد اللون 10",
-  "SELECT_TOOL": "حدد الاداة {0}",
-  "SELECT_COLOR_1_DESCRIPTIVE": "حدد اللون الأول في اللوحة",
-  "SELECT_COLOR_2_DESCRIPTIVE": "حدد اللون الثاني في اللوحة",
-  "SELECT_COLOR_3_DESCRIPTIVE": "حدد اللون الثالث في اللوحة",
-  "SELECT_COLOR_4_DESCRIPTIVE": "حدد اللون الرابع في اللوحة",
-  "SELECT_COLOR_5_DESCRIPTIVE": "حدد اللون الخامس في اللوحة",
-  "SELECT_COLOR_6_DESCRIPTIVE": "حدد اللون السادس في اللوحة",
-  "SELECT_COLOR_7_DESCRIPTIVE": "حدد اللون السابع في اللوحة",
-  "SELECT_COLOR_8_DESCRIPTIVE": "حدد اللون الثامن في اللوحة",
-  "SELECT_COLOR_9_DESCRIPTIVE": "حدد اللون التاسع في اللوحة",
-  "SELECT_COLOR_10_DESCRIPTIVE": "حدد اللون العاشر في اللوحة",
-  "SWAP_COLORS": "تبديل الألوان",
-  "SWAP_COLORS_DESCRIPTIVE": "تبديل الألوان الأساسية والثانوية",
-  "SEARCH": "بحث",
-  "COMMAND_SEARCH": "اوامر البحث",
-  "OPEN_COMMAND_SEARCH": "فتح نافذة اوامر البحث",
-  "SELECT": "حدد",
-  "DESELECT": "الغاء التحديد",
-  "INVERT": "عكس",
-  "SELECTION": "اختيار",
-  "SELECT_ALL": "حدد الكل",
-  "SELECT_ALL_DESCRIPTIVE": "حدد كل شيء",
-  "CLEAR_SELECTION": "حذف المحدد",
-  "INVERT_SELECTION": "اقلب المحدد",
-  "INVERT_SELECTION_DESCRIPTIVE": "اقلب المنطقة المحددة",
-  "TRANSFORM_SELECTED_AREA": "تحويل المنطقة المحددة",
-  "NUDGE_SELECTED_LEFT": "دفع العنصر المحدد لليسار",
-  "NUDGE_SELECTED_RIGHT": "دفع العنصر المحدد لليمين",
-  "NUDGE_SELECTED_UP": "دفع العنصر المحدد لأعلى",
-  "NUDGE_SELECTED_DOWN": "دفع العنصر المحدد لأسفل",
-  "MASK_FROM_SELECTION": "قناع جديد من الاختيار",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "التحديد لقناع جديد",
-  "ADD_SELECTION_TO_MASK": "إضافة التحديد إلى القناع",
-  "SUBTRACT_SELECTION_FROM_MASK": "قطع التحديد من القناع",
-  "INTERSECT_SELECTION_MASK": "تقاطع التحديد مع القناع",
-  "SELECTION_TO_MASK": "التحديد للقناع",
-  "TO_NEW_MASK": "إلى قناع جديد",
-  "ADD_TO_MASK": "أضف إلى القناع",
-  "SUBTRACT_FROM_MASK": "قص من القناع",
-  "INTERSECT_WITH_MASK": "تتقاطع مع القناع",
-  "STYLUS": "قلم",
-  "TOGGLE_PEN_MODE": "تبديل وضع القلم",
-  "UNDO": "تراجع",
-  "UNDO_DESCRIPTIVE": "تراجع عن الإجراء الأخير",
-  "REDO": "إعادة",
-  "REDO_DESCRIPTIVE": "إعادة الإجراء الأخير",
-  "WINDOWS": "النوافذ",
-  "TOGGLE_GRIDLINES": "تبديل خطوط الشبكة",
-  "ZOOM_IN": "تكبير",
-  "ZOOM_OUT": "تصغير",
-  "NEW_WINDOW_FOR_IMG": "نافذة جديدة للصورة الحالية",
-  "CENTER_ACTIVE_VIEWPORT": "توسيط إطار العرض النشط",
-  "FLIP_VIEWPORT_HORIZONTALLY": "قلب إطار العرض أفقيًا",
-  "FLIP_VIEWPORT_VERTICALLY": "قلب إطار العرض رأسيًا",
-  "SETTINGS": "الاعدادات",
-  "OPEN_SETTINGS": "فتح الاعدادات",
-  "OPEN_SETTINGS_DESCRIPTIVE": "فتح نافذة الاعدادات",
-  "OPEN_STARTUP_WINDOW": "فتح نافذة التشغيل",
-  "OPEN_SHORTCUT_WINDOW": "افتح نافذة الاختصارات",
-  "OPEN_ABOUT_WINDOW": "فتح نافذة المعلومات",
-  "OPEN_NAVIGATION_WINDOW": "افتح نافذة التنقل",
-  "ERROR": "خطأ",
-  "INTERNAL_ERROR": "خطأ داخلي",
-  "ERROR_SAVE_LOCATION": "تعذر حفظ الملف في الموقع المحدد",
-  "ERROR_WHILE_SAVING": "حدث خطأ داخلي أثناء الحفظ. حاول مرة اخرى.",
-  "UNKNOWN_ERROR_SAVING": "حدث خطأ أثناء الحفظ.",
-  "FAILED_ASSOCIATE_LOSPEC": "فشل إقتران بروتوكول Lospec Palette.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "تبرع",
-  "YES": "نعم",
-  "NO": "لا",
-  "CANCEL": "الغاء",
-  "UNNAMED": "بدون اسم",
-  "OPEN_COMMAND_DEBUG_WINDOW": "افتح نافذة تصحيح أخطاء الأمر",
-  "DELETE": "حذف",
-  "USER_PREFS": "تفضيلات المستخدم (Roaming)",
-  "SHORTCUT_FILE": "اختصار الملف (Roaming)",
-  "EDITOR_DATA": "بيانات البرنامج (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "ينقل إطار العرض. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "انقر وانتقل لتحريك منفذ العرض",
-  "MOVE_TOOL_TOOLTIP": "ينقل وحدات البكسل المحددة ({0}). اضغط مع الاستمرار على Ctrl لتحريك كل الطبقات.",
-  "MOVE_TOOL_ACTION_DISPLAY": "استمر في الضغط على الماوس لتحريك وحدات البكسل المحددة. اضغط مع الاستمرار على Ctrl لتحريك كل الطبقات.",
-  "PEN_TOOL_TOOLTIP": "قلم. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "اضغط وحرك للرسم.",
-  "PIXEL_PERFECT_SETTING": "بكسل مثالي",
-  "RECTANGLE_TOOL_TOOLTIP": "رسم مستطيل على الصورة ({0}). اضغط مع الاستمرار على Shift لرسم مربع.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وتحرك لرسم مستطيل. اضغط مع الاستمرار على Shift لرسم مربع.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "انقر وحرك لرسم مربع.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "احتفظ بالصورة الأصلية",
-  "ROTATE_VIEWPORT_TOOLTIP": "يدور منفذ العرض. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "انقر وحرك لتدوير منفذ العرض",
-  "SELECT_TOOL_TOOLTIP": "يختار المنطقة. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وتحرك لتحديد منطقة. اضغط مع الاستمرار على Shift للإضافة إلى التحديد الحالي. استمر في الضغط على Ctrl لقصها منه.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "انقر وانتقل للإضافة إلى التحديد الحالي.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "انقر وانتقل للقص من التحديد الحالي.",
-  "ZOOM_TOOL_TOOLTIP": "تكبير / تصغير منفذ العرض ({0}). انقر للتكبير ، او مع الاستمرار في الضغط على مفتاح alt وانقر للتصغير.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وتحرك للتكبير. انقر للتكبير ، واضغط باستمرار على ctrl وانقر للتصغير.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "انقر وتحرك للتكبير. انقر للتصغير ، وحرر مفتاح التحكم وانقر للتكبير.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "جعل وحدات البكسل أفتح أو أغمق ({0}). اضغط باستمرار على مفتاح Ctrl لجعل البكسل أغمق.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "ارسم على وحدات البكسل لجعلها أكثر إشراقًا. اضغط باستمرار على Ctrl للتغميق.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "ارسم بالبكسل لجعلها أكثر قتامة. اترك Ctrl لتفتيح.",
-  "COLOR_PICKER_TOOLTIP": "يختار اللون الأساسي من الصورة. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "انقر لاختيار الألوان. اضغط باستمرار على Ctrl لإخفاء الصورة. اضغط مع الاستمرار على Shift لإخفاء الطبقة المرجعية",
-  "ELLIPSE_TOOL_TOOLTIP": "رسم قطع ناقص على الصورة ({0}). اضغط مع الاستمرار على Shift لرسم دائرة.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وحرك الماوس لرسم شكل بيضاوي. اضغط مع الاستمرار على Shift لرسم دائرة.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "انقر وحرك الماوس لرسم دائرة.",
-  "ERASER_TOOL_TOOLTIP": "يمحو اللون من البكسل. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "انقر وحرك للمسح.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "املأ المنطقة باللون. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "اضغط على منطقة لملئها. اضغط باستمرار على مفتاح Ctrl للتطبيق على جميع الطبقات.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "اضغط على منطقة لملئها. حرر Ctrl للنظر في الطبقات الحالية فقط.",
-  "LASSO_TOOL_TOOLTIP": "لاسو. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وتحرك لتحديد وحدات البكسل داخل لاسو. اضغط مع الاستمرار على Shift للإضافة إلى التحديد الحالي. استمر في الضغط على Ctrl للحذف منه.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "انقر وتحرك لإضافة وحدات بكسل داخل لاسو إلى التحديد.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "انقر وتحرك لحذف وحدات البكسل داخل لاسو من التحديد.",
-  "LINE_TOOL_TOOLTIP": "رسم خط على الصورة ({0}). اضغط مع الاستمرار على Shift لتمكين الالتقاط.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "انقر وتحرك لرسم خط. اضغط مع الاستمرار على Shift لتمكين الالتقاط.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "انقر وحرك الماوس لرسم خط مع تمكين الالتقاط.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "العصا السحرية ({0}). ملء المحدد",
-  "MAGIC_WAND_ACTION_DISPLAY": "أنقر لملء التحديد.",
-  "PEN_TOOL": "قلم",
-  "BRIGHTNESS_TOOL": "السطوع",
-  "COLOR_PICKER_TOOL": "أداة انتقاء اللون",
-  "ELLIPSE_TOOL": "القطع الناقص",
-  "ERASER_TOOL": "ممحاة",
-  "FLOOD_FILL_TOOL": "ملء الفيضانات",
-  "LASSO_TOOL": "لاسو",
-  "LINE_TOOL": "خط",
-  "MAGIC_WAND_TOOL": "العصا السحرية",
-  "MOVE_TOOL": "تحريك",
-  "MOVE_VIEWPORT_TOOL": "تحريك منفذ العرض",
-  "RECTANGLE_TOOL": "مستطيل",
-  "ROTATE_VIEWPORT_TOOL": "تدوير منفذ العرض",
-  "SELECT_TOOL_NAME": "حدد",
-  "ZOOM_TOOL": "تكبير",
-  "SHAPE_LABEL": "شكل",
-  "MODE_LABEL": "الوضع",
-  "SCOPE_LABEL": "نطاق",
-  "FILL_SHAPE_LABEL": "ملء الشكل",
-  "FILL_COLOR_LABEL": "ملء اللون",
-  "TOOL_SIZE_LABEL": "حجم الأداة",
-  "STRENGTH_LABEL": "قوة",
-  "NEW": "جديد",
-  "ADD": "اضافة",
-  "SUBTRACT": "قص",
-  "INTERSECT": "تتقاطع",
-  "RECTANGLE": "مستطيل",
-  "CIRCLE": "دائرة",
-  "ABOUT": "حول البرنامج",
-  "MINIMIZE": "تصغير",
-  "RESTORE": "اعادة",
-  "MAXIMIZE": "تكبير",
-  "CLOSE": "اغلق",
-  "EXPORT_SIZE_HINT": "إذا كنت ترغب في مشاركة الصورة ، فجرّب {0}٪ للحصول على أفضل وضوح",
-  "CREATE": "انشاء",
-  "BASE_LAYER_NAME": "الطبقة الرئيسية",
-  "ENABLE_MASK": "تمكين القناع",
-  "SELECTED_AREA_EMPTY": "المنطقة المحددة فارغة",
-  "NOTHING_TO_COPY": "لا يوجد شي لنسخه",
-  "REFERENCE_LAYER_PATH": "مسار الطبقة المرجعية",
-  "FLIP": "توجيه",
-  "ROTATION": "دوران",
-  "ROT_IMG_90_D": "تدوير الصورة 90 درجة",
-  "ROT_IMG_180_D": "تدوير الصورة 180 درجة",
-  "ROT_IMG_-90_D": "تدوير الصورة -90 درجة",
-  "ROT_LAYERS_90_D": "تدوير الطبقات المحددة 90 درجة",
-  "ROT_LAYERS_180_D": "تدوير الطبقات المحددة 180 درجة",
-  "ROT_LAYERS_-90_D": "تدوير الطبقات المحددة -90 درجة",
-  "UNNAMED_PALETTE": "لوح غير مسمى",
-  "CLICK_SELECT_PRIMARY": "انقر لتحديد اللون الرئيسي.",
-  "PEN_MODE": "وضع القلم",
-  "VIEW": "منظر",
-  "HORIZONTAL_LINE_SYMMETRY": "تناظر الخط الأفقي",
-  "VERTICAL_LINE_SYMMETRY": "تناظر الخط العمودي",
-  "COLOR_PICKER_TITLE": "أداة اختيار اللون",
-  "COLOR_SLIDERS_TITLE": "لوحة الالوان",
-  "PALETTE_TITLE": "اللوحة",
-  "SWATCHES_TITLE": "حوامل",
-  "LAYERS_TITLE": "الطبقات",
-  "NAVIGATION_TITLE": "التنقل",
-  "NORMAL_BLEND_MODE": "عادي",
-  "DARKEN_BLEND_MODE": "أغمق",
-  "MULTIPLY_BLEND_MODE": "تضاعف",
-  "COLOR_BURN_BLEND_MODE": "احتراق الالوان",
-  "LIGHTEN_BLEND_MODE": "فاتح",
-  "SCREEN_BLEND_MODE": "شاشة",
-  "COLOR_DODGE_BLEND_MODE": "انقاص كثافة اللون",
-  "OVERLAY_BLEND_MODE": "تراكب",
-  "SOFT_LIGHT_BLEND_MODE": "ضوء خافت",
-  "HARD_LIGHT_BLEND_MODE": "ضوء غامق",
-  "DIFFERENCE_BLEND_MODE": "اختلاف",
-  "EXCLUSION_BLEND_MODE": "استبعاد",
-  "HUE_BLEND_MODE": "مسحة",
-  "SATURATION_BLEND_MODE": "التشبع",
-  "LUMINOSITY_BLEND_MODE": "لمعان",
-  "COLOR_BLEND_MODE": "اللون",
-  "NOT_SUPPORTED_BLEND_MODE": "غير مدعوم",
-  "RESTART": "اعد تشغيل",
-  "SORT_BY": "ترتيب حسب",
-  "NAME": "الاسم",
-  "COLORS": "الالوان",
-  "DEFAULT": "الافتراضي",
-  "ALPHABETICAL": "مرتب حسب الحروف الأبجدية",
-  "COLOR_COUNT": "عدد الألوان",
-  "ANY": "اي",
-  "MAX": "الاقصى",
-  "MIN": "الاقل",
-  "EXACT": "بالضبط",
-  "ASCENDING": "تصاعدي",
-  "DESCENDING": "تنازلي",
-  "NAME_IS_TOO_LONG": "الاسم طويل جدا",
-  "STOP_IT_TEXT1": "هذا يكفي. رتب أسماء ملفاتك.",
-  "STOP_IT_TEXT2": "هل يمكنك التوقف عن نسخ هذه الأسماء من فضلك؟",
-  "REPLACER_TOOLTIP": "انقر بزر الماوس الأيمن على لوحة الألوان واختر 'استبدال' أو أسقطها هنا.",
-  "CLICK_TO_CHOOSE_COLOR": "انقر لاختيار اللون",
-  "REPLACE_COLOR": "استبدل اللون",
-  "PALETTE_COLOR_TOOLTIP": "انقر لتحديد اللون الرئيسي. قم بالسحب والإفلات على لون لوح آخر لتبديلها.",
-  "ADD_FROM_SWATCHES": "أضف من العينات",
-  "ADD_COLOR_TO_PALETTE": "أضف اللون إلى لوح الألوان",
-  "USE_IN_CURRENT_IMAGE": "استخدم في الصورة الحالية",
-  "ADD_TO_FAVORITES": "اضافة الى المفضلة",
-  "BROWSE_PALETTES": "تصفح اللوحات",
-  "LOAD_PALETTE": "تحميل لوحة",
-  "SAVE_PALETTE": "حفض اللوحة",
-  "FAVORITES": "المفضلة",
-  "ADD_FROM_CURRENT_PALETTE": "أضف من اللوحة الحالية",
-  "OPEN_PALETTES_DIR_TOOLTIP": "افتح دليل اللوحات في المستكشف",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "تصفح اللوحات على Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "اضافة من ملف",
-  "TOP_LEFT": "أعلى اليسار",
-  "TOP_CENTER": "اعلى الوسط",
-  "TOP_RIGHT": "اعلى اليمين",
-  "MIDDLE_LEFT": "اليسار الأوسط",
-  "MIDDLE_CENTER": "منتصف الوسط",
-  "MIDDLE_RIGHT": "وسط اليمين",
-  "BOTTOM_LEFT": "أسفل اليسار",
-  "BOTTOM_CENTER": "اسفل الوسط",
-  "BOTTOM_RIGHT": "أسفل اليمين",
-  "CLIP_TO_BELOW": "مقطع للطبقة أدناه",
-  "MOVE_UPWARDS": "تحرك لأعلى",
-  "MOVE_DOWNWARDS": "تحريك للاسفل",
-  "MERGE_SELECTED": "دمج المحدد",
-  "LOCK_TRANSPARENCY": "قفل الشفافية",
-  "COULD_NOT_LOAD_PALETTE": "تعذر إحضار اللوحات",
-  "NO_PALETTES_FOUND": "لم يتم العثور على لوحات.",
-  "LOSPEC_LINK_TEXT": "سمعت أنه يمكنك العثور على بعضها هنا: lospec.com/palette-list",
-  "PALETTE_BROWSER": "متصفح لوح الألوان",
-  "DELETE_PALETTE_CONFIRMATION": "هل أنت متأكد أنك تريد حذف هذه اللوحة؟ هذا لا يمكن التراجع عنها.",
-  "SHORTCUTS_IMPORTED": "تم اضافة الاختصارات من {0} بنجاح.",
-  "SHORTCUT_PROVIDER_DETECTED": "لقد اكتشفنا أنك قمت بتثبيت {0}. هل تريد اضافة الاختصارات منه؟",
-  "IMPORT_FROM_INSTALLATION": "اضافة من التثبيت",
-  "IMPORT_INSTALLATION_OPTION1": "اضافة من التنزيلات",
-  "IMPORT_INSTALLATION_OPTION2": "استخدام الافتراضي",
-  "IMPORT_FROM_TEMPLATE": "اضافة من قالب",
-  "SHORTCUTS_IMPORTED_SUCCESS": "تم اضافة الاختصارات بنجاح.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "هل أنت متأكد من أنك تريد إعادة تعيين جميع الاختصارات إلى قيمتها الافتراضية؟",
-  "SUCCESS": "نجاح",
-  "WARNING": "تحذير",
-  "ERROR_IMPORTING_IMAGE": "حدث خطأ أثناء استيراد الصورة.",
-  "SHORTCUTS_CORRUPTED_TITLE": "ملف الاختصارات تالف",
-  "SHORTCUTS_CORRUPTED": "تعرض ملف الاختصارات للتلف ، اعادة التعيين إلى الوضع الافتراضي.",
-  "FAILED_DOWNLOAD_PALETTE": "فشل تحميل لوح الألوان",
-  "FILE_INCORRECT_FORMAT": "لم يكن الملف بتنسيق صحيح",
-  "INVALID_FILE": "ملف غير صالح",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "تنسيق ملف الاختصارات ليس صحيحًا",
-  "UNSUPPORTED_FILE_FORMAT": "تنسيق الملف هذا غير مدعوم",
-  "ALREADY_ASSIGNED": "تم تعيينه بالفعل",
-  "REPLACE": "استبدال",
-  "SWAP": "تبديل",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "تم بالفعل تعيين هذا الاختصار لـ '{0}'\nهل تريد استبدال الاختصار الحالي أم تبديل الاختصارين؟",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "تم بالفعل تعيين هذا الاختصار لـ '{0}'\nهل تريد استبدال الاختصار الموجود؟",
-  "UNSAVED_CHANGES": "تغييرات غير محفوضة",
-  "DOCUMENT_MODIFIED_SAVE": "تم تعديل العنصر. هل تريد ان تحفظ التغييرات؟",
-  "SESSION_UNSAVED_DATA": "{0} ببيانات غير محفوظة. هل أنت متأكد؟",
-  "PROJECT_MAINTAINERS": "مشرفو المشروع",
-  "OTHER_AWESOME_CONTRIBUTORS": "وغيرهم من المساهمين الرائعين",
-  "HELP": "مساعد",
-  "STOP_IT_TEXT3": "لا ، حقًا ، توقف عن ذلك.",
-  "STOP_IT_TEXT4": "أليس لديك أي شيء أفضل لتفعله؟",
-  "LINEAR_DODGE_BLEND_MODE": "مراوغة خطية (إضافة)",
-  "PRESS_ANY_KEY": "اضغط اي مفتاح",
-  "NONE_SHORTCUT": "غير محدد",
-  "REFERENCE": "مرجع",
-  "PUT_REFERENCE_LAYER_ABOVE": "ضع طبقة مرجعية أعلاه",
-  "PUT_REFERENCE_LAYER_BELOW": "ضع طبقة مرجعية أدناه",
-  "TOGGLE_VERTICAL_SYMMETRY": "تبديل التناظر العمودي",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "تبديل التناظر الأفقي",
-  "RESET_VIEWPORT": "إعادة تعيين منفذ العرض",
-  "VIEWPORT_SETTINGS": "إعدادات منفذ العرض",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "انقر بالماوس مع الاستمرار لتحريك وحدات البكسل في الطبقات المحددة.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "انقر بالماوس مع الاستمرار لتحريك جميع الطبقات.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "إعادة تسمية",
-  "PIXEL_UNIT": "بكسل",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "افتح نافذة تصحيح أخطاء الترجمة",
-  "FORCE_OTHER_FLOW_DIRECTION": "فرض اتجاه تدفق آخر",
-  "API_KEY": "مفتاح API",
-  "LOCALIZATION_VIEW_TYPE": "نوع عرض الترجمة",
-  "LOAD_LANGUAGE_FROM_FILE": "تحميل اللغة من ملف",
-  "LOG_IN": "تسجيل دخول",
-  "SYNC": "مزامنة",
-  "NOT_LOGGED_IN": "لم تقم بتسجيل الدخول",
-  "POE_EDITOR_ERROR": "خطأ POEditor: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "خطأ HTTP: {0} {1}",
-  "LOGGED_IN": "تم التسجيل",
-  "SYNCED_SUCCESSFULLY": "تمت المزامنة بنجاح",
-  "EXCEPTION_ERROR": "استثناء: {0}",
-  "DROP_PALETTE": "قم بإسقاط اللوحة هنا",
-  "SECURITY_ERROR": "خطآ امني",
-  "SECURITY_ERROR_MSG": "لا توجد حقوق للكتابة إلى الموقع المحدد.",
-  "IO_ERROR": "خطأ IO",
-  "IO_ERROR_MSG": "خطأ أثناء الكتابة على القرص.",
-  "FAILED_ASSOCIATE_PIXI": "فشل إقران ملف .pixi بـ PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "حدث خطأ أثناء حفظ اللوحة.",
-  "NO_COLORS_TO_SAVE": "لا توجد ألوان للحفظ.",
-  "ALL_LAYERS": "جميع الطبقات",
-  "SINGLE_LAYER": "طبقة واحدة",
-  "CHOOSE": "اختيار",
-  "REMOVE": "ازالة",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "الملف ليس ملف \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "يحتوي الملف على اختصار غير صالح",
-  "FILE_EXTENSION_NOT_SUPPORTED": "نوع الملف '{0}' غير مدعوم",
-  "ERROR_READING_FILE": "خطأ أثناء قراءة الملف",
-  "DISCARD_PALETTE": "تجاهل لوح الألوان",
-  "DISCARD_PALETTE_CONFIRMATION": "هل أنت متأكد أنك تريد تجاهل لوحة الألوان الحالية؟ هذا لا يمكن التراجع عنها.",
-  "IMPORT_AS_NEW_LAYER": "اضافة كطبقة جديدة",
-  "PASTE_AS_PRIMARY_COLOR": "لصق كلون أساسي",
-  "IMPORT_AS_NEW_FILE": "اضافة كملف جديد",
-  "IMPORT_PALETTE_FILE": "اضافة ملف لوح الألوان",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "اضافة الألوان إلى لوح الألوان",
-  "IMPORT_SINGLE_PALETTE_COLOR": "اضافة اللون إلى لوح الألوان",
-  "IMPORT_AS_REFERENCE_LAYER": "اضافة كطبقة مرجعية",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "انقر بزر الماوس الأيمن لاختيار اللون ، وانقر بزر الماوس الأيمن مع الاستمرار بالضغط على Shift لنسخ اللون إلى الحافظة",
-  "OPEN_FILE_FROM_CLIPBOARD": "فتح من الحافظة",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "فتح من الحافظة",
-  "OPEN_LOCALIZATION_DATA": "هل تريد فتح LocalizationData.json؟\nتم وضع البيانات المحدثة في الحافظة.\nلاحظ أنه لن يتم تطبيق التغييرات حتى إعادة تشغيل البرنامج",
-  "DOWNLOADING_LANGUAGE_FAILED": "فشل تحميل اللغة.\nربما تم الإفراط في استخدام مفتاح API.",
-  "LOCALIZATION_DATA_NOT_FOUND": "مسار بيانات الترجمة غير موجود",
-  "APPLY": "حفض",
-  "UPDATE_SOURCE": "تحديث المصدر",
-  "COPY_TO_CLIPBOARD": "نسخ للحافضة",
-  "LANGUAGE_FILE_NOT_FOUND": "ملف اللغة غير موجود.\nالبحث عن {0}",
-  "PROJECT_ROOT_NOT_FOUND": "لم يتم العثور على جذر مشروع PixiEditor.\nأبحث عن PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "مجلد الترجمة غير موجود.\nأبحث عن/البيانات/التعريب",
-  "SELECT_A_LANGUAGE": "اختار لغة",
-  "DONE": "انتهاء",
-  "SOURCE_UNSET_OR_MISSING": "المصدر مفقود/غير محدد",
-  "SOURCE_NEWER": "مصدر أحدث",
-  "SOURCE_UP_TO_DATE": "تم تحديث المصدر",
-  "SOURCE_OLDER": "سحابة احدث",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/cs.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Poslední soubory",
-  "OPEN_FILE": "Otevřít soubor",
-  "NEW_FILE": "Nový",
-  "RECENT_EMPTY_TEXT": "Hodně prázdného místa",
-  "LANGUAGE": "Jazyk",
-  "GENERAL": "Obecný",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Klávesové zkratky",
-  "MISC": "Různé",
-  "SHOW_STARTUP_WINDOW": "Ukazovat spouštěcí okno",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Zobrazit náhled obrázku na hlavním panelu",
-  "RECENT_FILE_LENGTH": "Délka seznamu posledních souborů",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Kolik dokumentů se objeví pod \"File > Recent\".\nNormálně: 8",
-  "DEFAULT_NEW_SIZE": "Standartní velikost nového souboru",
-  "WIDTH": "Šířka",
-  "HEIGHT": "Výška",
-  "TOOLS": "Nástroje",
-  "ENABLE_SHARED_TOOLBAR": "Zapnout sdílený panel nástrojů",
-  "AUTOMATIC_UPDATES": "Automatické aktualizace",
-  "CHECK_FOR_UPDATES": "Vyhledávat aktualizace při spuštění",
-  "UPDATE_STREAM": "Druh verze",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Aktualizační  kanály mohou být aktualizovány jen v samostatných verzích aplikace (stáhnutých z https://pixieditor.net/) Steam a Microsoft Store verze zacházejí s jednotlivými verzemi odlišně.",
-  "DEBUG": "Debug",
-  "ENABLE_DEBUG_MODE": "Aktivovat Debug mód",
-  "OPEN_CRASH_REPORTS_DIR": "Otevřít složku crash reportů",
-  "DISCORD_RICH_PRESENCE": "Bohatá přítomnost",
-  "ENABLED": "Povoleno",
-  "SHOW_IMAGE_NAME": "Ukázat jméno obrázku",
-  "SHOW_IMAGE_SIZE": "Ukázat název obrázku",
-  "SHOW_LAYER_COUNT": "Zobrazit počet vrstev",
-  "FILE": "Soubor",
-  "RECENT": "Poslední",
-  "OPEN": "Otevřít",
-  "SAVE_PIXI": "Uložit (.pixi)",
-  "SAVE_AS_PIXI": "Uložit jako... (.pixi)",
-  "EXPORT_IMG": "Exportovat (.png, .jpg, etc.)",
-  "EDIT": "Editovat",
-  "EXIT": "Odejít",
-  "PERCENTAGE": "Procentuální ",
-  "ABSOLUTE": "Absolutní",
-  "PRESERVE_ASPECT_RATIO": "Zachování poměru stran",
-  "ANCHOR_POINT": "Upevněný bod",
-  "RESIZE_IMAGE": "Změnit velikost obrázku",
-  "RESIZE": "Upravit velikost",
-  "DOCUMENTATION": "Dokumentace",
-  "WEBSITE": "Web",
-  "OPEN_WEBSITE": "Otevřít web",
-  "REPOSITORY": "Úložiště",
-  "OPEN_REPOSITORY": "Otevřít úložiště",
-  "LICENSE": "Licence",
-  "OPEN_LICENSE": "Otevřít licenci",
-  "THIRD_PARTY_LICENSES": "Licence třetí strany",
-  "OPEN_THIRD_PARTY_LICENSES": "Otevřít licenci třetí strany",
-  "APPLY_TRANSFORM": "Použít transformaci",
-  "INCREASE_TOOL_SIZE": "Zvětšit velikost nástroje",
-  "DECREASE_TOOL_SIZE": "Zmenšit velikost nástroje",
-  "TO_INSTALL_UPDATE": "Nainstalovat aktualizaci {0}",
-  "DOWNLOADING_UPDATE": "Stahování aktualizace...",
-  "UPDATE_READY": "Je tu nová aktualizace. Chceš aby jsme jí pro tebe nainstalovali teď nebo až později?",
-  "NEW_UPDATE": "Nová aktualizace",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Potřebujeme pro dokončení aktualizace povolení od Admina. Spusť tedy PixiEditor jako administrátor.",
-  "INSUFFICIENT_PERMISSIONS": "Nedostatečná oprávnění",
-  "UPDATE_CHECK_FAILED": "Při hledání aktualizací se něco pokazilo",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Z nějakého důvodu nejsme schopni zjistit jestli je nějaká nová aktualizace.",
-  "VERSION": "Verze {0}",
-  "OPEN_TEMP_DIR": "Otevřít složku \"temp\"",
-  "OPEN_LOCAL_APPDATA_DIR": "Otevřít složku \"Local AppData\"",
-  "OPEN_ROAMING_APPDATA_DIR": "Otevřít složku \"Roaming AppData\"",
-  "OPEN_INSTALLATION_DIR": "Otevřít instalační složku",
-  "DUMP_ALL_COMMANDS": "Vypsat všechny příkazy",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Vypsat všechny příkazy do textového souboru",
-  "CRASH": "Crash",
-  "CRASH_APP": "Shodit aplikaci",
-  "DELETE_USR_PREFS": "Smazat uživatelské předvolby (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Odstranit složkus",
-  "DELETE_EDITOR_DATA": "Odstranit data editoru (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Vytvořit šablonu pro klávesové zkratky",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Vytvořit \"json\" šablonu pro klávesové zkratky",
-  "VALIDATE_SHORTCUT_MAP": "Ověřit mapu klávesových zkratek",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Ověřuje mapu klávesových zkratek",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Empty keys: {0}\nUnknown Commands: {1}",
-  "RESULT": "Výsledek",
-  "CLEAR_RECENT_DOCUMENTS": "Vyčistit poslední dokumenty",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Vyčistit nedávno otevřené dokumenty",
-  "OPEN_CMD_DEBUG_WINDOW": "Otevřít okno Command debug",
-  "PATH_DOES_NOT_EXIST": "{0} neexistuje.",
-  "LOCATION_DOES_NOT_EXIST": "Umístění neexistuje.",
-  "FILE_NOT_FOUND": "Soubor nebyl nalezen.",
-  "ARE_YOU_SURE": "Jsi si opravdu jist, že tuto akci chceš udělat? Promysli to ještě jednou či dvakrát ať toho pak nelituješ.",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Jsi si jist že chceš smazat {0}?\nTahle data budou ztracena na všech instalací.\n(Celá cesta k souboru: {1})",
-  "FAILED_TO_OPEN_FILE": "Nepodařilo se otevřít soubor",
-  "OLD_FILE_FORMAT": "Starý formát souboru",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Tenhle .pixi soubor používá starý formát,\nkterý již bohužel není podporován a nemůže být otevřen.",
-  "NOTHING_FOUND": "Nic se nenašlo",
-  "EXPORT": "Exportovat",
-  "EXPORT_IMAGE": "Exportovat obrázek",
-  "IMPORT": "Importovat",
-  "SHORTCUT_TEMPLATES": "Šablony klávesových zkratek",
-  "RESET_ALL": "Resetovat vše",
-  "LAYER": "Vrstva",
-  "LAYER_DELETE_SELECTED": "Smazat aktivní vrstvu/složku",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Smazat aktivní vrstvu nebo složku",
-  "LAYER_DELETE_ALL_SELECTED": "Smazat všechny vybrané vrstvy/složky",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Smazat všechny vybrané vrstvy a/nebo složky",
-  "DELETE_SELECTED_PIXELS": "Odstranit vybrané pixely",
-  "NEW_FOLDER": "Nová složka",
-  "CREATE_NEW_FOLDER": "Vytvořit složku",
-  "NEW_LAYER": "Nová vrstva",
-  "CREATE_NEW_LAYER": "Vytvořit novou vrstvu",
-  "NEW_IMAGE": "Nový obrázek",
-  "CREATE_NEW_IMAGE": "Vytvořit nový obrázek",
-  "SAVE": "Uložit",
-  "SAVE_AS": "Uložit jako...",
-  "IMAGE": "Obrázek",
-  "SAVE_IMAGE": "Uložit obrázek",
-  "SAVE_IMAGE_AS": "Uložit obrázek jako nový",
-  "DUPLICATE": "Duplikovat",
-  "DUPLICATE_SELECTED_LAYER": "Duplikovat vybranou vrstvu",
-  "CREATE_MASK": "Vytvořit masku",
-  "DELETE_MASK": "Odstranit masku",
-  "TOGGLE_MASK": "Přepnout masku",
-  "APPLY_MASK": "Použit masku",
-  "TOGGLE_VISIBILITY": "Přepnout viditelnost",
-  "MOVE_MEMBER_UP": "Posunout člena nahoru",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Pohnout vybranou vrstvu nebo složku nahoru",
-  "MOVE_MEMBER_DOWN": "Posunout člena dolů",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Pohnout vybranou vrstvu nebo složku dolů",
-  "MERGE_ALL_SELECTED_LAYERS": "Spojit všechny vybrané vrstvy",
-  "MERGE_WITH_ABOVE": "Spojit vybranou vrstvu s vrstvou nad",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Spojit vybranou vrstvu s vrstvou nad ní",
-  "MERGE_WITH_BELOW": "Spojit vybranou vrstvu s vrstvou pod ní",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Spojit vybranou vrstvu s vrstvou pod ní",
-  "ADD_REFERENCE_LAYER": "Přidat referenční vrstvu",
-  "DELETE_REFERENCE_LAYER": "Odstranit referenční vrstvu",
-  "TRANSFORM_REFERENCE_LAYER": "Transformovat referenční vrstvu",
-  "TOGGLE_REFERENCE_LAYER_POS": "Přepnout pozici referenční vrstvy",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Přepnout referenční vrstvu mezi nejvyšší nebo nejnižší",
-  "RESET_REFERENCE_LAYER_POS": "Z resetovat pozici referenční vrstvy",
-  "CLIP_CANVAS": "Připni Canvas",
-  "FLIP_IMG_VERTICALLY": "Překlopit obrázek svisle",
-  "FLIP_IMG_HORIZONTALLY": "Překlopit obrázek vodorovně",
-  "FLIP_LAYERS_VERTICALLY": "Svisle překlopit vybrané vrstvy",
-  "FLIP_LAYERS_HORIZONTALLY": "Vodorovně překlopit vybrané vrstvy",
-  "ROT_IMG_90": "Otočit obrázek o 90 stupňů",
-  "ROT_IMG_180": "Otočit obrázek o 180 stupňů",
-  "ROT_IMG_-90": "Otočit obrázek o -90 stupňů",
-  "ROT_LAYERS_90": "Otočit vybrané vrstvy o 90 stupňů",
-  "ROT_LAYERS_180": "Otočit vybrané vrstvy o 180 stupňů",
-  "ROT_LAYERS_-90": "Otočit vybrané vrstvy o -90 stupňů",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Přepnout vertikální osu symetrie",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Zapnout osu vodorovné symetrie",
-  "DELETE_PIXELS": "Odstranit pixely",
-  "DELETE_PIXELS_DESCRIPTIVE": "Odstranit vybrané pixely",
-  "RESIZE_DOCUMENT": "Změnit velikost dokumentu",
-  "RESIZE_CANVAS": "Změnit velikost canvasu",
-  "CENTER_CONTENT": "Vycentrovat obsah",
-  "CUT": "Oříznout",
-  "CUT_DESCRIPTIVE": "Oříznout vybranou oblast/vrstvy",
-  "PASTE": "Vložit",
-  "PASTE_DESCRIPTIVE": "Vložit obsah schránky",
-  "PASTE_AS_NEW_LAYER": "Vložit jako novou vrstvu",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Vložit ze schránky jako novou vrstvu",
-  "PASTE_REFERENCE_LAYER": "Vložit referenční vrstvu",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Vložit obsah schránky jako referenční vrstvu",
-  "PASTE_COLOR": "Vložit barvu",
-  "PASTE_COLOR_DESCRIPTIVE": "Vložit barvu ze schránky",
-  "PASTE_COLOR_SECONDARY": "Vložit barvu jako vedlejší",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Vložit barvu ze schránky jako vedlejší barvu",
-  "CLIPBOARD": "Schránka",
-  "COPY": "Kopírovat",
-  "COPY_DESCRIPTIVE": "Zkopírovat do schránky",
-  "COPY_COLOR_HEX": "Zkopírovat hlavní barvu (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Zkopírovat hlavní barvu jako HEX kód",
-  "COPY_COLOR_RGB": "Zkopírovat hlavní barvu (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Zkopíruj hlavní barvu jako RGB kód",
-  "COPY_COLOR_SECONDARY_HEX": "Zkopíruj vedlejší barvu (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Zkopíruj vedlejší barvu jako HEX kód",
-  "COPY_COLOR_SECONDARY_RGB": "Zkopírovat vedlejší barvu (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Zkopírovat vedlejší barvu jako RGB kód",
-  "PALETTE_COLORS": "Barvy palety",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Nahradit vedlejší barvu barvou vedlejší",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Nahradit vedlejší barvu barvou vedlejší",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Nahradit hlavní barvu barvou vedlejší",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Nahradit hlavní barvu barvou vedlejší",
-  "OPEN_PALETTE_BROWSER": "Otevřít prohlížeč palet",
-  "OVERWRITE_PALETTE_CONSENT": "Paleta \"{0}\" již existuje, chcete ji přepsat?",
-  "PALETTE_EXISTS": "Paleta již existuje",
-  "REPLACE_PALETTE_CONSENT": "Nahradit současnou paletu s",
-  "REPLACE_PALETTE": "Nahradit současnou paletu",
-  "SELECT_COLOR_1": "Vybrat barvu 1",
-  "SELECT_COLOR_2": "Vybrat barvu 2",
-  "SELECT_COLOR_3": "Vybrat barvu 3",
-  "SELECT_COLOR_4": "Vybrat barvu 4",
-  "SELECT_COLOR_5": "Vybrat barvu 5",
-  "SELECT_COLOR_6": "Vybrat barvu 6",
-  "SELECT_COLOR_7": "Vybrat barvu 7",
-  "SELECT_COLOR_8": "Vybrat barvu 8",
-  "SELECT_COLOR_9": "Vybrat barvu 9",
-  "SELECT_COLOR_10": "Vybrat barvu 10",
-  "SELECT_TOOL": "Vybrat {0} Nástroj",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Vybrat první barvu z palety",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Vybrat druhou barvu z palety",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Vybrat třetí barvu z palety",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Vybrat čtvrtou barvu z palety",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Vybrat pátou barvu z palety",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Vybrat šestou barvu z palety",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Vybrat sedmou barvu z palety",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Vybrat osmou barvu z palety",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Vybrat devátou barvu z palety",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Vybrat desátou barvu z palety",
-  "SWAP_COLORS": "Přepnout barvy",
-  "SWAP_COLORS_DESCRIPTIVE": "Přepnout mezi hlavní a vedlejší barvou",
-  "SEARCH": "Hledat",
-  "COMMAND_SEARCH": "Vyhledávač příkazů",
-  "OPEN_COMMAND_SEARCH": "Otevřít okno vyhledávač příkazů",
-  "SELECT": "Vybrat",
-  "DESELECT": "Zrušit výběr",
-  "INVERT": "Invertovat",
-  "SELECTION": "Výběr",
-  "SELECT_ALL": "Vybrat vše",
-  "SELECT_ALL_DESCRIPTIVE": "Vybrat vše",
-  "CLEAR_SELECTION": "Vyčistit vybrané",
-  "INVERT_SELECTION": "Invertovat výběr",
-  "INVERT_SELECTION_DESCRIPTIVE": "Invertovat vybranou oblast",
-  "TRANSFORM_SELECTED_AREA": "Transformovat vybrané pole",
-  "NUDGE_SELECTED_LEFT": "Posunout vybraný objekt doleva",
-  "NUDGE_SELECTED_RIGHT": "Posunout vybraný objekt doprava",
-  "NUDGE_SELECTED_UP": "Posunout vybraný objekt nahoru",
-  "NUDGE_SELECTED_DOWN": "Posunout vybraný objekt dolů",
-  "MASK_FROM_SELECTION": "Nová maska z výběru",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Výběr pro novou masku",
-  "ADD_SELECTION_TO_MASK": "Přidat výběr k masce",
-  "SUBTRACT_SELECTION_FROM_MASK": "Odebrat výběr z masky",
-  "INTERSECT_SELECTION_MASK": "Výběr průsečíku s maskou",
-  "SELECTION_TO_MASK": "Výběr pro masku",
-  "TO_NEW_MASK": "Na novou masku",
-  "ADD_TO_MASK": "Přidat do masky",
-  "SUBTRACT_FROM_MASK": "Odebrat z masky",
-  "INTERSECT_WITH_MASK": "průsečík s maskou",
-  "STYLUS": "Stylus",
-  "TOGGLE_PEN_MODE": "Přepnout režim pera",
-  "UNDO": "Zpět",
-  "UNDO_DESCRIPTIVE": "Poslední akce zpět",
-  "REDO": "Znovu",
-  "REDO_DESCRIPTIVE": "Udělat znovu poslední akci",
-  "WINDOWS": "Okna",
-  "TOGGLE_GRIDLINES": "Zapnout mřížku",
-  "ZOOM_IN": "Přiblížit",
-  "ZOOM_OUT": "Oddálit",
-  "NEW_WINDOW_FOR_IMG": "Nové okno pro aktuální obrázek",
-  "CENTER_ACTIVE_VIEWPORT": "Vycentrovat aktivní okna zobrazení",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Vodorovně překlopit pole zobrazení",
-  "FLIP_VIEWPORT_VERTICALLY": "Svisle překlopit pole zobrazení",
-  "SETTINGS": "Nastavení",
-  "OPEN_SETTINGS": "Otevřít nastavení",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Otevřít okno nastavení",
-  "OPEN_STARTUP_WINDOW": "Otevřít spouštěcí okno",
-  "OPEN_SHORTCUT_WINDOW": "Otevřít okno klávesových zkratek",
-  "OPEN_ABOUT_WINDOW": "Otevřít okno s informacemi",
-  "OPEN_NAVIGATION_WINDOW": "Otevřít okno navigace",
-  "ERROR": "Chyba",
-  "INTERNAL_ERROR": "Interní error",
-  "ERROR_SAVE_LOCATION": "Soubor se nepodařilo uložit do zadaného umístění",
-  "ERROR_WHILE_SAVING": "Při ukládání došlo k interní chybě. Zkuste to prosím znovu.",
-  "UNKNOWN_ERROR_SAVING": "Něco se nepovedlo při ukládání.",
-  "FAILED_ASSOCIATE_LOSPEC": "Nepodařilo se spojit protokolem Lospec Palette.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Přispět",
-  "YES": "ANO",
-  "NO": "Ne",
-  "CANCEL": "Zrušit",
-  "UNNAMED": "Bez jména",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Otevřít okno Command debug",
-  "DELETE": "Odstranit",
-  "USER_PREFS": "Předvolby uživatele (Roaming)",
-  "SHORTCUT_FILE": "Složka s klávesovými zkratky (Roaming)",
-  "EDITOR_DATA": "Data editoru (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Posunout pole zobrazení. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Klikni a posuň myší pro přesunutí pole zobrazení.",
-  "MOVE_TOOL_TOOLTIP": "Pohnout vybrané pixely ({0}). Drž \"Ctrl\" pro pohnutí se všemi vrstvy.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Podržením myši přesunete vybrané pixely. Podržením klávesy Ctrl přesunete všechny vrstvy.",
-  "PEN_TOOL_TOOLTIP": "Pero. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Klikni a posuň myší pro malování.",
-  "PIXEL_PERFECT_SETTING": "Perfektní pixely",
-  "RECTANGLE_TOOL_TOOLTIP": "Nakreslí obdélník na canvas ({0}). Podržením klávesy Shift nakreslíte čtverec.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro vytvoření Obdélníku. Drž \"Shift\" pro vytvoření čtverce.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Klikni a posuň myší pro vytvoření čtverce.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Ponechat originální obrázek",
-  "ROTATE_VIEWPORT_TOOLTIP": "Otáčí pohled. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Klikni a posuň myší pro otočení pohledu.",
-  "SELECT_TOOL_TOOLTIP": "Vybrána oblast. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro vybrání oblasti. Podrž \"Shift\" pro přidání do existujícího výběru. Podrž \"Ctrl\" pro odebrání z něj.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Klikni a posuň myší pro přidání do současného výběru.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Klikni a posuň myší pro odebrání ze současného výběru.",
-  "ZOOM_TOOL_TOOLTIP": "Přiblížení pohledu ({0}). Klikni pro přiblížení, podrž \"ctrl\" a klikni pro oddálení.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro přiblížení. Klikni pro přiblížení, podrž \"Ctrl\" a klikni pro oddálení.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Klikni a posuň myší pro přiblížení. Klikni pro oddálení, pusť \"Ctrl\" a klikni pro přiblížení.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Udělá pixely tmavší nebo světlejší. ({0}). Drž \"Ctrl\" aby dělal ty pixely tmavší.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Kreslením na pixely je zesvětlíš. Podrž \"Ctrl\" pro jejich ztmavnutí.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Kreslením na pixely je ztmavíš. Pusť \"Ctrl\" pro jejich zesvětlení.",
-  "COLOR_PICKER_TOOLTIP": "Vybere hlavní barvu z canvasu. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Klikni pro výběr barev. Podrž \"Ctrl\" abys schoval canvas. Podrž \"Shift\" pro schování referenční vrstvy.",
-  "ELLIPSE_TOOL_TOOLTIP": "Vytvoří elipsu na canvas ({0}). Podrž \"Shift\" pro přidání kružnice.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro vytvoření elipsy. Podrž \"Shift\" pro vytvoření kružnice.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Klikni a posuň myší pro vytvoření kružnice.",
-  "ERASER_TOOL_TOOLTIP": "Vygumuje barvu z pixelu. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Klikni a posuň myší pro gumování.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Vyplní oblast barvou. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni na oblast pro zaplnění. Podrž \"Ctrl\" pro ovlivnění všech vrstev.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Klikni na oblast pro zaplnění. Pusť \"Ctrl\" pro ovlivnění jen současných vrstev.",
-  "LASSO_TOOL_TOOLTIP": "Laso. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro vybrání pixelů uvnitř vybrané oblasti lasa. Podrž \"Shift\" pro přidání do existujícího výběru. Podrž \"Ctrl\" pro odebraní z něj.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Klikni a posuň myší pro přidání pixelů dovnitř vybrané oblasti lasa.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Klikni a posuň myší pro odebrání pixelů uvnitř vybrané oblasti lasa.",
-  "LINE_TOOL_TOOLTIP": "Nakreslí čáru na canvas ({0}). Podržením klávesy Shift povolíte přichytávání.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Klikni a posuň myší pro vytvoření čáry. Podrž \"Shift\" pro rovnoměrné čáry.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Klikni a posuň myší pro vytvoření rovnoměrné čáry.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Kouzelná hůlka ({0}). Vyplní výběr",
-  "MAGIC_WAND_ACTION_DISPLAY": "Klikni pro vyplnění výběru.",
-  "PEN_TOOL": "Pero",
-  "BRIGHTNESS_TOOL": "Zesvětlovač",
-  "COLOR_PICKER_TOOL": "Kapátko",
-  "ELLIPSE_TOOL": "Elipsa",
-  "ERASER_TOOL": "Guma",
-  "FLOOD_FILL_TOOL": "Kyblík",
-  "LASSO_TOOL": "Laso",
-  "LINE_TOOL": "Čára",
-  "MAGIC_WAND_TOOL": "Kouzelná hůlka",
-  "MOVE_TOOL": "Pohnout",
-  "MOVE_VIEWPORT_TOOL": "Posunout pole zobrazení",
-  "RECTANGLE_TOOL": "Obdélník",
-  "ROTATE_VIEWPORT_TOOL": "Otočit pohled",
-  "SELECT_TOOL_NAME": "Vybrat",
-  "ZOOM_TOOL": "Lupa",
-  "SHAPE_LABEL": "Tvar",
-  "MODE_LABEL": "Mód",
-  "SCOPE_LABEL": "Rozsah působnosti",
-  "FILL_SHAPE_LABEL": "Vyplnit obrazec barvou",
-  "FILL_COLOR_LABEL": "Vyplnit barvou",
-  "TOOL_SIZE_LABEL": "Velikost nástroje",
-  "STRENGTH_LABEL": "Síla",
-  "NEW": "Nový",
-  "ADD": "Přidat",
-  "SUBTRACT": "Odebrat",
-  "INTERSECT": "Průsečík",
-  "RECTANGLE": "Obdélník",
-  "CIRCLE": "Kruh",
-  "ABOUT": "O",
-  "MINIMIZE": "Minimalizovat",
-  "RESTORE": "Obnovit",
-  "MAXIMIZE": "Maximalizovat",
-  "CLOSE": "Zavřít",
-  "EXPORT_SIZE_HINT": "Pokud chceš sdílet obrázek, zkus {0}% pro nejlepší zobrazení",
-  "CREATE": "Vytvořit",
-  "BASE_LAYER_NAME": "Základní vrstva",
-  "ENABLE_MASK": "Zapnout masku",
-  "SELECTED_AREA_EMPTY": "Vybraná oblast je prázdná",
-  "NOTHING_TO_COPY": "Nic k zkopírování",
-  "REFERENCE_LAYER_PATH": "Cesta referenční vrstvy",
-  "FLIP": "Překlopit",
-  "ROTATION": "Rotace",
-  "ROT_IMG_90_D": "Otočit obrázek o 90°",
-  "ROT_IMG_180_D": "Otočit obrázek o 180°",
-  "ROT_IMG_-90_D": "Otočit obrázek o -90°",
-  "ROT_LAYERS_90_D": "Otočit vybrané vrstvy o 90°",
-  "ROT_LAYERS_180_D": "Otočit vybrané vrstvy o 180°",
-  "ROT_LAYERS_-90_D": "Otočit vybrané vrstvy o -90°",
-  "UNNAMED_PALETTE": "Nepojmenovaná paleta",
-  "CLICK_SELECT_PRIMARY": "Klikni pro vybrání jako hlavní barvu",
-  "PEN_MODE": "Režim pera",
-  "VIEW": "Zobrazení",
-  "HORIZONTAL_LINE_SYMMETRY": "Symetrie vodorovné čáry",
-  "VERTICAL_LINE_SYMMETRY": "Symetrie svislých čar",
-  "COLOR_PICKER_TITLE": "Kapátko",
-  "COLOR_SLIDERS_TITLE": "Vyběrač barev",
-  "PALETTE_TITLE": "Paleta",
-  "SWATCHES_TITLE": "Vzorky",
-  "LAYERS_TITLE": "Vrstvy",
-  "NAVIGATION_TITLE": "Navigace",
-  "NORMAL_BLEND_MODE": "Normální",
-  "DARKEN_BLEND_MODE": "Ztmavit",
-  "MULTIPLY_BLEND_MODE": "Násobit",
-  "COLOR_BURN_BLEND_MODE": "Ztmavit barvy",
-  "LIGHTEN_BLEND_MODE": "Zesvětlit",
-  "SCREEN_BLEND_MODE": "Závoj",
-  "COLOR_DODGE_BLEND_MODE": "Zesvětlit barvy",
-  "OVERLAY_BLEND_MODE": "Překrýt",
-  "SOFT_LIGHT_BLEND_MODE": "Měkké světlo",
-  "HARD_LIGHT_BLEND_MODE": "Tvrdé světlo",
-  "DIFFERENCE_BLEND_MODE": "Rozdíl",
-  "EXCLUSION_BLEND_MODE": "Vyloučit",
-  "HUE_BLEND_MODE": "Odstín",
-  "SATURATION_BLEND_MODE": "Sytost",
-  "LUMINOSITY_BLEND_MODE": "Světlost",
-  "COLOR_BLEND_MODE": "Barva",
-  "NOT_SUPPORTED_BLEND_MODE": "Není podporováno",
-  "RESTART": "Restartovat",
-  "SORT_BY": "Řazeno podle",
-  "NAME": "Jméno",
-  "COLORS": "Barvy",
-  "DEFAULT": "Standartně",
-  "ALPHABETICAL": "Abecední",
-  "COLOR_COUNT": "Počet barev",
-  "ANY": "Jakýkoliv",
-  "MAX": "Max",
-  "MIN": "Min",
-  "EXACT": "Přesně",
-  "ASCENDING": "Vzestupně",
-  "DESCENDING": "Sestupně",
-  "NAME_IS_TOO_LONG": "Název je moc dlouhý",
-  "STOP_IT_TEXT1": "Dost. Udělej pořádek v názvech souborů.",
-  "STOP_IT_TEXT2": "Můžeš přestat kopírovat tyhle jména prosím?",
-  "REPLACER_TOOLTIP": "Klikni pravým tlačítkem na barvu palety a vyber \"Nahradit\" nebo ji sem přeneste.",
-  "CLICK_TO_CHOOSE_COLOR": "Klikni pro vybrání barvy",
-  "REPLACE_COLOR": "Nahradit barvu",
-  "PALETTE_COLOR_TOOLTIP": "Kliknutím vyberte jako hlavní barvu. Přetažením na jinou paletu je vyměníte.",
-  "ADD_FROM_SWATCHES": "Přidat ze vzorků",
-  "ADD_COLOR_TO_PALETTE": "Přidat barvu na paletu",
-  "USE_IN_CURRENT_IMAGE": "Použít v tomhle obrázku",
-  "ADD_TO_FAVORITES": "Přidat do oblíbených",
-  "BROWSE_PALETTES": "Procházet palety",
-  "LOAD_PALETTE": "Načíst paletu",
-  "SAVE_PALETTE": "Uložit paletu",
-  "FAVORITES": "Oblíbené",
-  "ADD_FROM_CURRENT_PALETTE": "Přidat ze současné palety",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Otevření adresáře palet v Průzkumníku souborů",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Procházet palety na \"Lospec\"",
-  "IMPORT_FROM_FILE_TOOLTIP": "Nahrát ze složky",
-  "TOP_LEFT": "V levo nahoře",
-  "TOP_CENTER": "Ve středu nahoře",
-  "TOP_RIGHT": "V pravo nahoře",
-  "MIDDLE_LEFT": "Prostřední vlevo",
-  "MIDDLE_CENTER": "Prostřední uprostřed",
-  "MIDDLE_RIGHT": "Prostřední pravo",
-  "BOTTOM_LEFT": "Nalevo dole",
-  "BOTTOM_CENTER": "Střed dole",
-  "BOTTOM_RIGHT": "Vpravo dole",
-  "CLIP_TO_BELOW": "Spoj do vrstvy níže",
-  "MOVE_UPWARDS": "Pohnout nahoru",
-  "MOVE_DOWNWARDS": "Pohnout dolů",
-  "MERGE_SELECTED": "Spojit vybrané",
-  "LOCK_TRANSPARENCY": "Uzamknout transparentnost",
-  "COULD_NOT_LOAD_PALETTE": "Nepodařilo se načíst palety",
-  "NO_PALETTES_FOUND": "Žádná paleta nebyla nalezena.",
-  "LOSPEC_LINK_TEXT": "Slyšel jsem, že můžeš najít nějaké tady: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Prohlížeč palet",
-  "DELETE_PALETTE_CONFIRMATION": "Chceš opravdu odstranit tuhle paletu? Odstranění je na vždy tak pozor.",
-  "SHORTCUTS_IMPORTED": "Klávesové zkratky z {0} byly importované úspěšně.",
-  "SHORTCUT_PROVIDER_DETECTED": "Zjistili jsme, že máš nainstalovaný {0}. Chceš aby jsme z toho importovali klávesové zkratky?",
-  "IMPORT_FROM_INSTALLATION": "Importovat z instalace",
-  "IMPORT_INSTALLATION_OPTION1": "Importovat z instalace",
-  "IMPORT_INSTALLATION_OPTION2": "Použít výchozí nastavení",
-  "IMPORT_FROM_TEMPLATE": "Importovat z šablony",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Klávesové zkratky byly importované úspěšně.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Jsi si jist toho co se právě chystáš udělat? Opravdu chceš přenastavit všechny klávesové zkratky zase do normálu? ",
-  "SUCCESS": "Us",
-  "WARNING": "VAROVÁNÍ",
-  "ERROR_IMPORTING_IMAGE": "Při importu obrázku došlo k chybě.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Poškozený soubor s klávesovýma zkratkama",
-  "SHORTCUTS_CORRUPTED": "Složka s klávesovýma zkratkami byla poškozena, resetování do výchozího nastavení.",
-  "FAILED_DOWNLOAD_PALETTE": "Nepodařilo se stáhnout paletu",
-  "FILE_INCORRECT_FORMAT": "Soubor je ve špatném formátu",
-  "INVALID_FILE": "Neplatný soubor",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Soubor s klávesovýma zkratkami není ve správném formátu",
-  "UNSUPPORTED_FILE_FORMAT": "Tenhle formát souboru není podporován",
-  "ALREADY_ASSIGNED": "Už přidělený",
-  "REPLACE": "Nahradit",
-  "SWAP": "Přepnout",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Tahle klávesová zkratka je již použita u '{0}'\nPřejete si nahradit existující klávesovou zkratku, nebo je vzájemně prohodit?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Tahle klávesová zkratka je již použita u '{0}'\nPřejete si nahradit existující klávesovou zkratku?",
-  "UNSAVED_CHANGES": "Neuložené změny",
-  "DOCUMENT_MODIFIED_SAVE": "Dokument byl upraven. Chcete změny uložit?",
-  "SESSION_UNSAVED_DATA": "{0} s neuloženými daty. Jste si jisti?",
-  "PROJECT_MAINTAINERS": "Správci projektu",
-  "OTHER_AWESOME_CONTRIBUTORS": "A další úžasní přispěvatelé",
-  "HELP": "Pomoc",
-  "STOP_IT_TEXT3": "Hele opravdu přestaň.",
-  "STOP_IT_TEXT4": "Vážně nemáš nic lepšího na práci?",
-  "LINEAR_DODGE_BLEND_MODE": "Lineárně zesvětlit (Přidat)",
-  "PRESS_ANY_KEY": "Zmáčkni jakoukoliv klávesu",
-  "NONE_SHORTCUT": "Žádná",
-  "REFERENCE": "Referenční",
-  "PUT_REFERENCE_LAYER_ABOVE": "Dát referenční vrstvu pod",
-  "PUT_REFERENCE_LAYER_BELOW": "Dát referenční vrstvu nad",
-  "TOGGLE_VERTICAL_SYMMETRY": "Přepnout vertikální symetrii",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Zapnout vodorovnou symetrii",
-  "RESET_VIEWPORT": "Resetovat pole pohledu",
-  "VIEWPORT_SETTINGS": "Nastavení pohledu",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Klikni a drž tlačítko myši pro přesouvání pixelů ve vybraných vrstvách.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Podržením myši přesunete všechny vrstvy.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Přejmenovat",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Otevřít okno Localization Debug",
-  "FORCE_OTHER_FLOW_DIRECTION": "Vynutit jiný směr toku",
-  "API_KEY": "API Klíč",
-  "LOCALIZATION_VIEW_TYPE": "Typ zobrazení lokalizace",
-  "LOAD_LANGUAGE_FROM_FILE": "Načíst jazyk ze složky",
-  "LOG_IN": "Přihlásit se",
-  "SYNC": "Synchronizace",
-  "NOT_LOGGED_IN": "Nepřihlášeno",
-  "POE_EDITOR_ERROR": "POEditor Error: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP Error\" {0} {1}",
-  "LOGGED_IN": "Přihlášeno",
-  "SYNCED_SUCCESSFULLY": "Úspěšně synchronizováno",
-  "EXCEPTION_ERROR": "Výjimka: {0}",
-  "DROP_PALETTE": "Sem přesuňte paletu",
-  "SECURITY_ERROR": "Bezpečnostní chyba",
-  "SECURITY_ERROR_MSG": "Nejsou práva do této určené lokace",
-  "IO_ERROR": "IO chyba",
-  "IO_ERROR_MSG": "Chyba při zápisu a disk.",
-  "FAILED_ASSOCIATE_PIXI": "Nepodařilo se spojit .pixi soubor s PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Nastala chyba při ukládání palety.",
-  "NO_COLORS_TO_SAVE": "Nejsou žádné barvy k uložení",
-  "ALL_LAYERS": "Všechny vrstvy",
-  "SINGLE_LAYER": "Jediná vrstva",
-  "CHOOSE": "Vybrat",
-  "REMOVE": "Odstranit",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "Soubor není typu \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "Soubor obsahuje klávesovou zkratku",
-  "FILE_EXTENSION_NOT_SUPPORTED": "Typ souboru \"{0} není podporován",
-  "ERROR_READING_FILE": "Chyba při čtení souboru",
-  "DISCARD_PALETTE": "Smazat paletu",
-  "DISCARD_PALETTE_CONFIRMATION": "Jsi si jist že chceš smazat současnou paletu? Tahle akce nejde vrátit.",
-  "IMPORT_AS_NEW_LAYER": "Importovat jako novou vrstvu",
-  "PASTE_AS_PRIMARY_COLOR": "Vložit jako hlavní barvu",
-  "IMPORT_AS_NEW_FILE": "Importovat jako nový soubor",
-  "IMPORT_PALETTE_FILE": "Importovat soubor palety",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Importovat barvy do palety",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Importovat barvu do palety",
-  "IMPORT_AS_REFERENCE_LAYER": "Importovat jako referenční vrstvu",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Pravím tlačítkem myši vybereš barvu, když budeš držet \"Shift\" a zmáčkneš pravé tlačítko myší, zkopíruješ barvu do schránky",
-  "OPEN_FILE_FROM_CLIPBOARD": "Otevřít ze schránky",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Otevřít ze schránky",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Downloading language failed.\nAPI Key might have been overused.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Localization data path not found",
-  "APPLY": "Apply",
-  "UPDATE_SOURCE": "Update source",
-  "COPY_TO_CLIPBOARD": "Copy to clipboard",
-  "LANGUAGE_FILE_NOT_FOUND": "Language file not found.\nLooking for {0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor Project root not found.\nLooking for PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Localization folder not found.\nLooking for /Data/Localization",
-  "SELECT_A_LANGUAGE": "Select a language",
-  "DONE": "Done",
-  "SOURCE_UNSET_OR_MISSING": "Source missing/unset",
-  "SOURCE_NEWER": "Source newer",
-  "SOURCE_UP_TO_DATE": "Source is up to date",
-  "SOURCE_OLDER": "Cloud newer",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/de.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Zuletzt geöffnete Dateien",
-  "OPEN_FILE": "Datei öffnen",
-  "NEW_FILE": "Neu",
-  "RECENT_EMPTY_TEXT": "So viel Platz hier, den sollte mal jemand füllen",
-  "LANGUAGE": "Sprache",
-  "GENERAL": "Generell",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Tastenkürzel",
-  "MISC": "Sonstige",
-  "SHOW_STARTUP_WINDOW": "Startfenster beim Start öffnen",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Bildvorschau in der Taskbar anzeigen",
-  "RECENT_FILE_LENGTH": "Anzahl an gezeigten zuletzt geöffneten datein",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Wie viele zuletzt geöffnete Dateien in der Datei > Zuletzt geöffnet liste angezeigt werden. Standard: 8",
-  "DEFAULT_NEW_SIZE": "Standardgröße neuer Datein",
-  "WIDTH": "Breite",
-  "HEIGHT": "Höhe",
-  "TOOLS": "Werkzeuge",
-  "ENABLE_SHARED_TOOLBAR": "Werkzeugeinstellungen teilen",
-  "AUTOMATIC_UPDATES": "Automatische Updates",
-  "CHECK_FOR_UPDATES": "Nach Updates beim Start suchen",
-  "UPDATE_STREAM": "Updatequelle",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Update quelle kann nur in der standalone version geändert werden (Verfügbar unter https://pixieditor.net).\nSteam und Microsoft Store hat ihr eigenes Update System.",
-  "DEBUG": "Debug",
-  "ENABLE_DEBUG_MODE": "Debug Modus aktivieren",
-  "OPEN_CRASH_REPORTS_DIR": "Fehlerberichtverzeichnis öffnen",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Aktiv",
-  "SHOW_IMAGE_NAME": "Dateinamen zeigen",
-  "SHOW_IMAGE_SIZE": "Dateigröße zeigen",
-  "SHOW_LAYER_COUNT": "Anzahl an Ebenen zeigen",
-  "FILE": "Datei",
-  "RECENT": "Zuletzt geöffnet",
-  "OPEN": "Öffnen",
-  "SAVE_PIXI": "Speichern (.pixi)",
-  "SAVE_AS_PIXI": "Speichern als... (.pixi)",
-  "EXPORT_IMG": "Exportieren (.png, .jpg, etc.)",
-  "EDIT": "Bearbeiten",
-  "EXIT": "Beenden",
-  "PERCENTAGE": "Prozent",
-  "ABSOLUTE": "Absolut",
-  "PRESERVE_ASPECT_RATIO": "Seitenverhältnis beibehalten",
-  "ANCHOR_POINT": "Ankerpunkt",
-  "RESIZE_IMAGE": "Bild skalieren",
-  "RESIZE": "Skalieren",
-  "DOCUMENTATION": "Dokumentation",
-  "WEBSITE": "Website",
-  "OPEN_WEBSITE": "Website öffnen",
-  "REPOSITORY": "Repository",
-  "OPEN_REPOSITORY": "Repository öffnen",
-  "LICENSE": "Lizenz",
-  "OPEN_LICENSE": "Lizenz öffnen",
-  "THIRD_PARTY_LICENSES": "Drittanbieter Lizensen",
-  "OPEN_THIRD_PARTY_LICENSES": "Drittanbieter Lizensen öffnen",
-  "APPLY_TRANSFORM": "Transformation anwenden",
-  "INCREASE_TOOL_SIZE": "Werkzeug vergrößern",
-  "DECREASE_TOOL_SIZE": "Werkzeug verkleinern",
-  "TO_INSTALL_UPDATE": "um Update {0} zu installieren",
-  "DOWNLOADING_UPDATE": "Lade Update herunter...",
-  "UPDATE_READY": "Update ist bereit zum installieren. Möchtest du es jetzt installieren?",
-  "NEW_UPDATE": "Neues update",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Konnte ohne Administartor Berechtigungen nicht updaten. Bitte start PixiEditor als Administrator.",
-  "INSUFFICIENT_PERMISSIONS": "Fehlende Berechtigungen",
-  "UPDATE_CHECK_FAILED": "Updateprüfung fehlgeschlagen",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Konnte nicht überprüfen, ob ein Update verfügbar ist.",
-  "VERSION": "Version {0}",
-  "OPEN_TEMP_DIR": "temp Ordner öffnen",
-  "OPEN_LOCAL_APPDATA_DIR": "Lokalen AppData Ordner öffnen",
-  "OPEN_ROAMING_APPDATA_DIR": "Roaming AppData Ordner öffnen",
-  "OPEN_INSTALLATION_DIR": "Installations Ordner öffnen",
-  "DUMP_ALL_COMMANDS": "Alle Befehle ausgeben",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Alle Befehle als Textdatei ausgeben",
-  "CRASH": "Abstürzen",
-  "CRASH_APP": "App abstürzen",
-  "DELETE_USR_PREFS": "Benutzereinstellungen löschen (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Tastenbelegung löschen (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Editordaten löschen (Lokale AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Tastenbelegungsvorlage erstellen",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Json Tastenbelegungsvorlage erstellen",
-  "VALIDATE_SHORTCUT_MAP": "Tastenbelegung überprüfen",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Tastenbelegung überprüfen",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Leere Keys: {0}\nUnbekannte Befehle: {1}",
-  "RESULT": "Ergebnis",
-  "CLEAR_RECENT_DOCUMENTS": "Zuletzt geöffnete leeren",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Liste an zuletzt geöffneten Datein leeren",
-  "OPEN_CMD_DEBUG_WINDOW": "Befehldebug Fenster öffnen",
-  "PATH_DOES_NOT_EXIST": "{0} existiert nicht.",
-  "LOCATION_DOES_NOT_EXIST": "Pfad existiert nicht.",
-  "FILE_NOT_FOUND": "Datei nicht gefunden.",
-  "ARE_YOU_SURE": "Bist du sicher?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Bist du sicher das du {0} löschen möchtest?\nDie daten gehen für alle installationen verloren.\n(Ganzer Pfad: {1})",
-  "FAILED_TO_OPEN_FILE": "Fehler beim öffnen der Datei",
-  "OLD_FILE_FORMAT": "Altes Dateiformat",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Diese .pixi Datei nutzt das alte Dateiformat,\nwelches nicht mehr geöffnet werden kann.",
-  "NOTHING_FOUND": "Nichts gefunden",
-  "EXPORT": "Exportieren",
-  "EXPORT_IMAGE": "Bild exportieren",
-  "IMPORT": "Importieren",
-  "SHORTCUT_TEMPLATES": "Vorlagen",
-  "RESET_ALL": "Alle zurücksetzten",
-  "LAYER": "Ebene",
-  "LAYER_DELETE_SELECTED": "Ausgewählte Ebene/Ordner löschen",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Ausgewählte Ebene oder Ordner löschen",
-  "LAYER_DELETE_ALL_SELECTED": "Alle ausgewählte Ebenen/Ordner löschen",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Alle ausgewählte Ebenen oder Ordner löschen",
-  "DELETE_SELECTED_PIXELS": "Alle ausgewählten Pixel löschen",
-  "NEW_FOLDER": "Neuer Ordner",
-  "CREATE_NEW_FOLDER": "Neuen Ordner erstellen",
-  "NEW_LAYER": "Neue Ebene",
-  "CREATE_NEW_LAYER": "Neue Ebene erstellen",
-  "NEW_IMAGE": "Neues Bild",
-  "CREATE_NEW_IMAGE": "Neues Bild erstellen",
-  "SAVE": "Speichern",
-  "SAVE_AS": "Speichern als...",
-  "IMAGE": "Bild",
-  "SAVE_IMAGE": "Bild speichern",
-  "SAVE_IMAGE_AS": "Bild speichern als neue Datei",
-  "DUPLICATE": "Duplizieren",
-  "DUPLICATE_SELECTED_LAYER": "Ausgewählte Ebene löschen",
-  "CREATE_MASK": "Maske erstellen",
-  "DELETE_MASK": "Maske löschen",
-  "TOGGLE_MASK": "Maske umschalten",
-  "APPLY_MASK": "Maske anwenden",
-  "TOGGLE_VISIBILITY": "Sichtbarkeit umschalten",
-  "MOVE_MEMBER_UP": "Element nach oben bewegen",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Ausgewählte Ebene oder ausgewählten Ordner nach oben bewegen",
-  "MOVE_MEMBER_DOWN": "Element nach unten bewegen",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Ausgewählte Ebene oder ausgewählten Ordner nach unten bewegen",
-  "MERGE_ALL_SELECTED_LAYERS": "Alle ausgewählten Ebenen zusammenführen",
-  "MERGE_WITH_ABOVE": "Ebene mit der oberen zusammenführen",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Ausgewählte Ebene mit der Ebene darüber zusammenführen",
-  "MERGE_WITH_BELOW": "Ebene mit der unteren zusammenführen",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Ausgewählte Ebene mit der Ebene darunter zusammenführen",
-  "ADD_REFERENCE_LAYER": "Referenz Ebene hinzufügen",
-  "DELETE_REFERENCE_LAYER": "Referenz Ebene löschen",
-  "TRANSFORM_REFERENCE_LAYER": "Referenzebene transformieren",
-  "TOGGLE_REFERENCE_LAYER_POS": "Referenz Ebene",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Wechseln zwischen Referenzebene ganz oben oder unten",
-  "RESET_REFERENCE_LAYER_POS": "Position der Referenzebene zurücksetzten",
-  "CLIP_CANVAS": "Leinwand anpassen",
-  "FLIP_IMG_VERTICALLY": "Bild Vertikal spiegeln",
-  "FLIP_IMG_HORIZONTALLY": "Bild Horizontal spiegeln",
-  "FLIP_LAYERS_VERTICALLY": "Ausgewählte Ebenen Vertikal spiegeln",
-  "FLIP_LAYERS_HORIZONTALLY": "Ausgewählte Ebenen Horizontal spiegeln",
-  "ROT_IMG_90": "Bild um 90° drehen",
-  "ROT_IMG_180": "Bild um 180° drehen",
-  "ROT_IMG_-90": "Bild um -90° drehen",
-  "ROT_LAYERS_90": "Ausgewählte Ebene 90° drehen",
-  "ROT_LAYERS_180": "Ausgewählte Ebene 180° drehen",
-  "ROT_LAYERS_-90": "Ausgewählte Ebene -90° drehen",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Vertikale Symmetrieachse umschalten",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Horizontale Symmetrieachse umschalten",
-  "DELETE_PIXELS": "Pixel löschen",
-  "DELETE_PIXELS_DESCRIPTIVE": "Ausgewählte Pixel löschen",
-  "RESIZE_DOCUMENT": "Bild skalieren",
-  "RESIZE_CANVAS": "Leinwand skalieren",
-  "CENTER_CONTENT": "Inhalt zentrieren",
-  "CUT": "Ausschneiden",
-  "CUT_DESCRIPTIVE": "Ausgewählten Bereich oder Ausgewählte Elemente ausschneiden",
-  "PASTE": "Einfügen",
-  "PASTE_DESCRIPTIVE": "Aus Zwischenablage einfügen",
-  "PASTE_AS_NEW_LAYER": "Einfügen als neue Ebene",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Aus Zwischenablage als neue Ebene einfügen",
-  "PASTE_REFERENCE_LAYER": "Referenzebene einfügen",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Referenzebene aus Zwischenablage einfügen",
-  "PASTE_COLOR": "Farbe einfügen",
-  "PASTE_COLOR_DESCRIPTIVE": "Farbe aus Zwischenablage einfügen",
-  "PASTE_COLOR_SECONDARY": "Zeitfarbe einfügen",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Zweitfarbe aus Zwischenablage einfügen",
-  "CLIPBOARD": "Zwischenablage",
-  "COPY": "Kopieren",
-  "COPY_DESCRIPTIVE": "In Zwischenablage kopieren",
-  "COPY_COLOR_HEX": "Farbe kopieren (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Farbe als HEX-Code kopieren",
-  "COPY_COLOR_RGB": "Farbe kopieren (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Farbe als RGB-Code kopieren",
-  "COPY_COLOR_SECONDARY_HEX": "Zweitfarbe kopieren (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Zweitfarbe als HEX-Code kopieren",
-  "COPY_COLOR_SECONDARY_RGB": "Zweitfarbe kopieren (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Zweitfarbe als RGB-Code kopieren",
-  "PALETTE_COLORS": "Palette Farben",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Ersetzte Zweitfarbe mit Primärfarbe",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Ersetzte Zweitfarbe mit Primärfarbe",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Farbe mit Zweitfarbe ersetzen",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Primärfarbe mit Zweitfarbe ersetzen",
-  "OPEN_PALETTE_BROWSER": "Palette Browser öffnen",
-  "OVERWRITE_PALETTE_CONSENT": "Palette '{0}' existiert bereits, möchtest du sie ersetzten?",
-  "PALETTE_EXISTS": "Palette existiert bereits",
-  "REPLACE_PALETTE_CONSENT": "Aktuelle Palette mit anderer ersetzten?",
-  "REPLACE_PALETTE": "Aktuelle Palette ersetzen",
-  "SELECT_COLOR_1": "1. Farbe auswählen",
-  "SELECT_COLOR_2": "2. Farbe auswählen",
-  "SELECT_COLOR_3": "3. Farbe auswählen",
-  "SELECT_COLOR_4": "4. Farbe auswählen",
-  "SELECT_COLOR_5": "5. Farbe auswählen",
-  "SELECT_COLOR_6": "6. Farbe auswählen",
-  "SELECT_COLOR_7": "7. Farbe auswählen",
-  "SELECT_COLOR_8": "8. Farbe auswählen",
-  "SELECT_COLOR_9": "9. Farbe auswählen",
-  "SELECT_COLOR_10": "10. Farbe auswählen",
-  "SELECT_TOOL": "{0} auswählen",
-  "SELECT_COLOR_1_DESCRIPTIVE": "1. Farbe der Palette auswählen",
-  "SELECT_COLOR_2_DESCRIPTIVE": "2. Farbe der Palette auswählen",
-  "SELECT_COLOR_3_DESCRIPTIVE": "3. Farbe der Palette auswählen",
-  "SELECT_COLOR_4_DESCRIPTIVE": "4. Farbe der Palette auswählen",
-  "SELECT_COLOR_5_DESCRIPTIVE": "5. Farbe der Palette auswählen",
-  "SELECT_COLOR_6_DESCRIPTIVE": "6. Farbe der Palette auswählen",
-  "SELECT_COLOR_7_DESCRIPTIVE": "7. Farbe der Palette auswählen",
-  "SELECT_COLOR_8_DESCRIPTIVE": "8. Farbe der Palette auswählen",
-  "SELECT_COLOR_9_DESCRIPTIVE": "9. Farbe der Palette auswählen",
-  "SELECT_COLOR_10_DESCRIPTIVE": "10. Farbe der Palette auswählen",
-  "SWAP_COLORS": "Farben tauschen",
-  "SWAP_COLORS_DESCRIPTIVE": "Primärfarbe und Zweitfarbe wechseln",
-  "SEARCH": "Suchen",
-  "COMMAND_SEARCH": "Suche öffnen",
-  "OPEN_COMMAND_SEARCH": "Suche öffnen",
-  "SELECT": "Auswahl",
-  "DESELECT": "Nichts",
-  "INVERT": "Invertieren",
-  "SELECTION": "Auswahl",
-  "SELECT_ALL": "Alles",
-  "SELECT_ALL_DESCRIPTIVE": "Alles auswählen",
-  "CLEAR_SELECTION": "Auswahl löschen",
-  "INVERT_SELECTION": "Auswahl invertieren",
-  "INVERT_SELECTION_DESCRIPTIVE": "Auswahl invertieren",
-  "TRANSFORM_SELECTED_AREA": "Auswahl transformieren",
-  "NUDGE_SELECTED_LEFT": "Ausgewähltes Objekt nach links bewegen",
-  "NUDGE_SELECTED_RIGHT": "Ausgewähltes Objekt nach rechts bewegen",
-  "NUDGE_SELECTED_UP": "Ausgewähltes Objekt nach oben bewegen",
-  "NUDGE_SELECTED_DOWN": "Ausgewähltes Objekt nach unten bewegen",
-  "MASK_FROM_SELECTION": "Neue Maske aus Auswahl",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Maske aus Auswahl erstellen",
-  "ADD_SELECTION_TO_MASK": "Auswahl zu Maske hinzufügen",
-  "SUBTRACT_SELECTION_FROM_MASK": "Auswahl von Maske entfernen",
-  "INTERSECT_SELECTION_MASK": "Auswahl mit Maske schneiden",
-  "SELECTION_TO_MASK": "Maske aus Auswahl",
-  "TO_NEW_MASK": "Auswahl als neue Maske",
-  "ADD_TO_MASK": "Auswahl zu Maske hinzufügen",
-  "SUBTRACT_FROM_MASK": "Auswahl von Maske entferenen",
-  "INTERSECT_WITH_MASK": "Auswahl mit Maske schneiden",
-  "STYLUS": "Eingabestift",
-  "TOGGLE_PEN_MODE": "Stiftmodus umschalten",
-  "UNDO": "Rückgängig",
-  "UNDO_DESCRIPTIVE": "Rückgängig machen",
-  "REDO": "Wiederherstellen",
-  "REDO_DESCRIPTIVE": "Letzte Aktion wiederherstellen",
-  "WINDOWS": "Fenster",
-  "TOGGLE_GRIDLINES": "Raster umschalten",
-  "ZOOM_IN": "Reinzommen",
-  "ZOOM_OUT": "Rauszoomen",
-  "NEW_WINDOW_FOR_IMG": "Neues Fenster für Bild",
-  "CENTER_ACTIVE_VIEWPORT": "Anzeigebereich zentrieren",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Anzeigebereich Horizontal spiegeln",
-  "FLIP_VIEWPORT_VERTICALLY": "Anzeigebereich Vertikal spiegeln",
-  "SETTINGS": "Preferenzen",
-  "OPEN_SETTINGS": "Preferenzen öffnen",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Präferenzfenster öffnen",
-  "OPEN_STARTUP_WINDOW": "Startfenster öffnen",
-  "OPEN_SHORTCUT_WINDOW": "Tastenkürzelfenster öffnen",
-  "OPEN_ABOUT_WINDOW": "Info über PixiEditor öffnen",
-  "OPEN_NAVIGATION_WINDOW": "Navigationsfenster öffnen",
-  "ERROR": "Fehler",
-  "INTERNAL_ERROR": "Interner Fehler",
-  "ERROR_SAVE_LOCATION": "Konnte die Datei nicht unter diesem Pfad speichern",
-  "ERROR_WHILE_SAVING": "Ein internet Fehler ist beim speichern passiert. Bitte versuche es erneut.",
-  "UNKNOWN_ERROR_SAVING": "Ein Fehler ist beim speichern passiert.",
-  "FAILED_ASSOCIATE_LOSPEC": "Konnte das Lospec Protokoll nicht einstellen.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Spenden",
-  "YES": "Ja",
-  "NO": "Nein",
-  "CANCEL": "Abbrechen",
-  "UNNAMED": "Unbenannt",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Befehldebug Fenster öffnen",
-  "DELETE": "Löschen",
-  "USER_PREFS": "Nutzerpräferenzen (Roaming)",
-  "SHORTCUT_FILE": "Tastenbelegung (Roaming)",
-  "EDITOR_DATA": "Editordaten (Lokal)",
-  "MOVE_VIEWPORT_TOOLTIP": "Bewegt Anzeigebereich. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Klicke and bewege die Maus um den Anzeigebereich zu bewegen",
-  "MOVE_TOOL_TOOLTIP": "Bewegt die ausgewählten Pixel ({0}). Halte Strg um alle Ebenen zu bewegen.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Halte die Maus um die ausgewählten Pixel zu bewegen. Halte Strg um alle Ebenen zu bewegen.",
-  "PEN_TOOL_TOOLTIP": "Stift. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Klick und halte die Maus um zu zeichnen.",
-  "PIXEL_PERFECT_SETTING": "Pixel Perfekt",
-  "RECTANGLE_TOOL_TOOLTIP": "Zeichnet Rechteck auf Leinwand ({0])",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und bewegen die Maus um ein Rechteck zu zeichnen. Halte die Umschalttaste/Shift um ein Quadrat zu zeichnen.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Klicke und halte um ein Quadrat zu zeichnen.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Originalbild beibehalten",
-  "ROTATE_VIEWPORT_TOOLTIP": "Rotiert den Anzeigebereich. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Klicke und bewege die Maus um den Anzeigebereich zu rotieren",
-  "SELECT_TOOL_TOOLTIP": "Wählt Bereich aus. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und bewegen die Maus um einen Bereich auszuwählen. Halte die Umschalttaste/Shift um zu der existierenden Auswahl hinzuzufügen. Halte Strg um von ihr zu entfernen.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Klicke und bewegen die Maus um den Bereich zur aktuellen Auswahl hinzuzufügen.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Clicke und Bewege die Maus um den Bereich von der aktuellen Auswahl zu löschen.",
-  "ZOOM_TOOL_TOOLTIP": "Zoomt Anzeigebereich ({0}). Klicke um rein zu zoomen, halte Strg und Klicke um raus zu zoomen.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und bewegen die Maus um zu zoomen. Klicke nur, um rein zu zoomen. Halte Strg und Klicke um raus zu zoomen.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Klicke und bewegen die Maus um zu zoomen. Klicke nur, um raus zu zoomen. Lasse Strg los, um Klicke nur, um rein zu zoomen",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Macht Pixel heller oder dunkler ({0}). Halte Strg um Pixel dunkler zu machen.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Zeichne auf Pixel um sie heller zu machen. Halte Strg um sie zu dunkler zu machen.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Zeichne auf Pixel um sie dunkler zu machen. Lasse Strg los um sie zu heller zu machen.",
-  "COLOR_PICKER_TOOLTIP": "Pickt die Farbe von der Leinwand. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Klick um eine Farbe zu picken. Halte Strg um die Referenzebene zu verstecken.",
-  "ELLIPSE_TOOL_TOOLTIP": "Zeichnet eine Ellipse auf die Leinwand ({0}). Halte die Umschalttaste/Shift um einen Kreis zu zeichnen.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und halte die Maus um eine Ellipse zu zeichnen. Halte die Umschalttaste/Shift um einen Kreis zu zeichnen.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Klicke und bewege die Maus um einen Kreis zu zeichnen.",
-  "ERASER_TOOL_TOOLTIP": "Radierer. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Klicke und bewege die Maus zum radieren.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Füllte den Bereich mit Farbe. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Drücke auf einen Bereich, um ihn zu füllen. Halte Strg um alle Ebenen zu berücksichtigen.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Drücke auf einen Bereich, um ihn zu füllen. Lasse Strg los, um nur die ausgewählte Ebene zu berücksichtigen.",
-  "LASSO_TOOL_TOOLTIP": "Lasso. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und bewege die Maus um den Bereich im Lasso auszuwählen. Halte die Umschalttaste/Shift um zu der aktuellen Auswahl hinzuzufügen. Halte Strg um von ihr zu entfernen.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Klicke und bewege die Maus um den Bereich im Lasso der aktuellen Auswahl hinzuzufügen.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Klicke und bewege die Maus um den Bereich im Lasso von der aktuellen Auswahl zu entfernen.",
-  "LINE_TOOL_TOOLTIP": "Zeichnet Linien auf die Leinwand ({0}). Halte die Umschalttaste/Shift um diagonale Linien zu zeichnen.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Klicke und bewege die Maus um eine Linie zu zeichnen. Halte die Umschalttaste/Shift um eine diagonale Linie zu zeichnen.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Klicke und bewege die Maus um eine diagonale Linie zu zeichnen.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Zauberstab ({0}). Füllte die Auswahl",
-  "MAGIC_WAND_ACTION_DISPLAY": "Klicke um die Auswahl zu füllen.",
-  "PEN_TOOL": "Stift",
-  "BRIGHTNESS_TOOL": "Helligkeitswerkzeug",
-  "COLOR_PICKER_TOOL": "Pipette",
-  "ELLIPSE_TOOL": "Ellipse",
-  "ERASER_TOOL": "Radierer",
-  "FLOOD_FILL_TOOL": "Füllwerkzeug",
-  "LASSO_TOOL": "Lasso",
-  "LINE_TOOL": "Linie",
-  "MAGIC_WAND_TOOL": "Zauberstab",
-  "MOVE_TOOL": "Verschiebungswerkzeug",
-  "MOVE_VIEWPORT_TOOL": "Ansichtswerkzeug",
-  "RECTANGLE_TOOL": "Rechteck",
-  "ROTATE_VIEWPORT_TOOL": "Anzeigebereichrotierer",
-  "SELECT_TOOL_NAME": "Auswahlrahmen",
-  "ZOOM_TOOL": "Zoomwerkzeug",
-  "SHAPE_LABEL": "Form",
-  "MODE_LABEL": "Modus",
-  "SCOPE_LABEL": "Bereich",
-  "FILL_SHAPE_LABEL": "Form füllen",
-  "FILL_COLOR_LABEL": "Füllfarbe",
-  "TOOL_SIZE_LABEL": "Werkzeuggröße",
-  "STRENGTH_LABEL": "Stärke",
-  "NEW": "Neu",
-  "ADD": "Addieren",
-  "SUBTRACT": "Subtrahieren",
-  "INTERSECT": "Schneiden",
-  "RECTANGLE": "Rechteck",
-  "CIRCLE": "Kreis",
-  "ABOUT": "Über PixiEditor",
-  "MINIMIZE": "Minimieren",
-  "RESTORE": "Widerherstellen",
-  "MAXIMIZE": "Maximieren",
-  "CLOSE": "Schließen",
-  "EXPORT_SIZE_HINT": "Falls du das Bild teilen möchtest, benutz {0}% um es scharf zu halten",
-  "CREATE": "Erstellen",
-  "BASE_LAYER_NAME": "Standard Ebene",
-  "ENABLE_MASK": "Maske aktivieren",
-  "SELECTED_AREA_EMPTY": "Ausgewählter Bereich ist leer",
-  "NOTHING_TO_COPY": "Nichts zu kopieren",
-  "REFERENCE_LAYER_PATH": "Referenzebenen Pfad",
-  "FLIP": "Spiegeln",
-  "ROTATION": "Rotieren",
-  "ROT_IMG_90_D": "Bild um 90° drehen",
-  "ROT_IMG_180_D": "Bild um 180° drehen",
-  "ROT_IMG_-90_D": "Bild um -90° drehen",
-  "ROT_LAYERS_90_D": "Ausgewählte Ebenen um 90° drehen",
-  "ROT_LAYERS_180_D": "Ausgewählte Ebenen um 180° drehen",
-  "ROT_LAYERS_-90_D": "Ausgewählte Ebenen um -90° drehen",
-  "UNNAMED_PALETTE": "Unbenannte Palette",
-  "CLICK_SELECT_PRIMARY": "Klicke um als Hauptfarbe auszuwählen.",
-  "PEN_MODE": "Stift Modus",
-  "VIEW": "Ansicht",
-  "HORIZONTAL_LINE_SYMMETRY": "Horizontale Symterrie Linie",
-  "VERTICAL_LINE_SYMMETRY": "Vertikale Symterrie Linie",
-  "COLOR_PICKER_TITLE": "Farbauswahl",
-  "COLOR_SLIDERS_TITLE": "Farbregler",
-  "PALETTE_TITLE": "Palette",
-  "SWATCHES_TITLE": "Farbfelder",
-  "LAYERS_TITLE": "Ebenen",
-  "NAVIGATION_TITLE": "Navigation",
-  "NORMAL_BLEND_MODE": "Normal",
-  "DARKEN_BLEND_MODE": "Abdunkeln",
-  "MULTIPLY_BLEND_MODE": "Multiplizieren",
-  "COLOR_BURN_BLEND_MODE": "Farben nachbelichten",
-  "LIGHTEN_BLEND_MODE": "Aufhellen",
-  "SCREEN_BLEND_MODE": "Negativ multiplizieren",
-  "COLOR_DODGE_BLEND_MODE": "Farben abwedeln",
-  "OVERLAY_BLEND_MODE": "Ineinanderkopieren",
-  "SOFT_LIGHT_BLEND_MODE": "Weiches Licht",
-  "HARD_LIGHT_BLEND_MODE": "Hartes Licht",
-  "DIFFERENCE_BLEND_MODE": "Differenz",
-  "EXCLUSION_BLEND_MODE": "Ausschluss",
-  "HUE_BLEND_MODE": "Farbton",
-  "SATURATION_BLEND_MODE": "Sättigung",
-  "LUMINOSITY_BLEND_MODE": "Luminanz",
-  "COLOR_BLEND_MODE": "Farbe",
-  "NOT_SUPPORTED_BLEND_MODE": "Nicht unterstützt",
-  "RESTART": "Neustarten",
-  "SORT_BY": "Sortieren nach",
-  "NAME": "Name",
-  "COLORS": "Farben",
-  "DEFAULT": "Standard",
-  "ALPHABETICAL": "Alphabetisch",
-  "COLOR_COUNT": "Anzahl an Farben",
-  "ANY": "Alle",
-  "MAX": "Max",
-  "MIN": "Min",
-  "EXACT": "Exakt",
-  "ASCENDING": "Aufsteigend",
-  "DESCENDING": "Absteigend",
-  "NAME_IS_TOO_LONG": "Der Name ist zu lang",
-  "STOP_IT_TEXT1": "Dat isch a bissle lang",
-  "STOP_IT_TEXT2": "Reicht dann auch mal wieder",
-  "REPLACER_TOOLTIP": "Rechts klick auf die Palette und auf 'Ersetzten' oder Drag-n-drop sie hier.",
-  "CLICK_TO_CHOOSE_COLOR": "Klicke um Farbe auszuwählen",
-  "REPLACE_COLOR": "Farbe ersetzten",
-  "PALETTE_COLOR_TOOLTIP": "Klicke um Hauptfarbe auszuwählen. Drag-n-drop eine andere palette um sie zu wechseln.",
-  "ADD_FROM_SWATCHES": "Fügt Farbfelder hinzu",
-  "ADD_COLOR_TO_PALETTE": "Fügt Farbe der Palette zu",
-  "USE_IN_CURRENT_IMAGE": "In aktuellen Bild benutzten",
-  "ADD_TO_FAVORITES": "Zu Favoriten hinzufügen",
-  "BROWSE_PALETTES": "Palettes browsen",
-  "LOAD_PALETTE": "Palette laden",
-  "SAVE_PALETTE": "Palette speichern",
-  "FAVORITES": "Favoriten",
-  "ADD_FROM_CURRENT_PALETTE": "Aus aktueller Palette hinzufügen",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Öffnet Palettenverzeichnis in Explorer",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Palettes auf Lospec browsen",
-  "IMPORT_FROM_FILE_TOOLTIP": "Aus Datei importieren",
-  "TOP_LEFT": "Oben links",
-  "TOP_CENTER": "Oben zentral",
-  "TOP_RIGHT": "Oben rechts",
-  "MIDDLE_LEFT": "Mitte Links",
-  "MIDDLE_CENTER": "Zentrale Mitte",
-  "MIDDLE_RIGHT": "Mitte Rechts",
-  "BOTTOM_LEFT": "Unten Links",
-  "BOTTOM_CENTER": "Unten Zentral",
-  "BOTTOM_RIGHT": "Unten Rechts",
-  "CLIP_TO_BELOW": "Auf Ebene darunter zuschneiden",
-  "MOVE_UPWARDS": "Nach oben bewegen",
-  "MOVE_DOWNWARDS": "Nach unten bewegen",
-  "MERGE_SELECTED": "Ausgewählte zusammenführen",
-  "LOCK_TRANSPARENCY": "Transparenz behalten",
-  "COULD_NOT_LOAD_PALETTE": "Konnte Paletten nicht laden",
-  "NO_PALETTES_FOUND": "Es wurden keine Paletten gefunden.",
-  "LOSPEC_LINK_TEXT": "Vielleicht findest du ja welche hier: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Paletten Browser",
-  "DELETE_PALETTE_CONFIRMATION": "Soll diese Palette wirklich gelöscht werden? Dies kann nicht rückgängig gemacht werden.",
-  "SHORTCUTS_IMPORTED": "Tastenbelegung von {0} importiert.",
-  "SHORTCUT_PROVIDER_DETECTED": "Es scheint, als hättest du {0} installiert. Möchtest du die Tastenbelegung von {0} benutzten?",
-  "IMPORT_FROM_INSTALLATION": "Aus Installation importieren",
-  "IMPORT_INSTALLATION_OPTION1": "Aus Installation importieren",
-  "IMPORT_INSTALLATION_OPTION2": "Standardvorlage benutzten",
-  "IMPORT_FROM_TEMPLATE": "Aus Vorlage importieren",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Tastenbelegung wurde erfolgreich importiert.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Bist du sicher das du deine Tastenbelegung auf den standard zurücksetzten möchtest?",
-  "SUCCESS": "Erfolg",
-  "WARNING": "Warnung",
-  "ERROR_IMPORTING_IMAGE": "Ein Fehler ist beim importieren des Bildes passiert.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Korruptierte Tastenbelegung",
-  "SHORTCUTS_CORRUPTED": "Tastenbelegungsdatei ist korrupt. Tastenbelegung wurde auf den standard zurück gesetzt.",
-  "FAILED_DOWNLOAD_PALETTE": "Downloaded der Palette fehlgeschlagen",
-  "FILE_INCORRECT_FORMAT": "Die Datei war nicht in einem korrekten Format",
-  "INVALID_FILE": "Invalide Datei",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Tastenbelegungsdatei war nicht in einem korrekten Format.",
-  "UNSUPPORTED_FILE_FORMAT": "Das Datei Format ist nicht unterstüzt",
-  "ALREADY_ASSIGNED": "Bereits benutzt",
-  "REPLACE": "Ersetzten",
-  "SWAP": "Wechseln",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Dieses Tastenkürzel ist schon für '{0}' zugewiesen\nSoll es ersetzt oder mit dem aktuellen getauscht werden?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Dieses Tastenkürzel ist schon für '{0}' zugewiesen\nSoll es mit dem aktuellen ersetzt werden?",
-  "UNSAVED_CHANGES": "Ungespeicherte änderungen",
-  "DOCUMENT_MODIFIED_SAVE": "Das Bild wurde verändert. Möchtest du die Änderungen speichern?",
-  "SESSION_UNSAVED_DATA": "{0} mit ungespeicherten Dateien. Bist du sicher?",
-  "PROJECT_MAINTAINERS": "Projektverwalter",
-  "OTHER_AWESOME_CONTRIBUTORS": "Und andere tolle Mitwirkende",
-  "HELP": "Hilfe",
-  "STOP_IT_TEXT3": "Des isch dann gnua.",
-  "STOP_IT_TEXT4": "Bittschön nicht so lang.",
-  "LINEAR_DODGE_BLEND_MODE": "Linear abwedeln",
-  "PRESS_ANY_KEY": "Drücke eine Taste",
-  "NONE_SHORTCUT": "Nichts",
-  "REFERENCE": "Referenz",
-  "PUT_REFERENCE_LAYER_ABOVE": "Zeige Referenz Ebene als erste",
-  "PUT_REFERENCE_LAYER_BELOW": "Zeige Referenz Ebene als letzte",
-  "TOGGLE_VERTICAL_SYMMETRY": "Vertikale Symmetrie umschalten",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Horizontale Symmetrie umschalten",
-  "RESET_VIEWPORT": "Anzeigebereich zurücksetzten",
-  "VIEWPORT_SETTINGS": "Anzeigebereich Einstellungen",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Klicke und bewege die Maus um alle Pixel in den Ausgewählten Ebenen zu bewegen.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Halte und bewege die Maus, um alle Ebenen zu bewegen.",
-  "CTRL_KEY": "Strg",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Umbenennen",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Lokalisierungsdebug Fenster öffnen",
-  "FORCE_OTHER_FLOW_DIRECTION": "Andere Layoutrichtung erzwingen",
-  "API_KEY": "API Schlüssel",
-  "LOCALIZATION_VIEW_TYPE": "Lokalisierungs Ansicht",
-  "LOAD_LANGUAGE_FROM_FILE": "Sprache aus Datei laden",
-  "LOG_IN": "Einloggen",
-  "SYNC": "Sync",
-  "NOT_LOGGED_IN": "Nicht eingeloggt",
-  "POE_EDITOR_ERROR": "POEditor Fehler: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP Fehler: {0} {1}",
-  "LOGGED_IN": "Eingeloggt",
-  "SYNCED_SUCCESSFULLY": "Erfolgreich synchronisiert",
-  "EXCEPTION_ERROR": "Exception: {0}",
-  "DROP_PALETTE": "Palette hier fallen lassen",
-  "SECURITY_ERROR": "Berechtigungsfehler",
-  "SECURITY_ERROR_MSG": "Keine Berechtigungen um an dem Ort zu speichern.",
-  "IO_ERROR": "IO Fehler",
-  "IO_ERROR_MSG": "Fehler beim schreiben der Datei.",
-  "FAILED_ASSOCIATE_PIXI": "Fehler beim assoziieren von .pixi mit PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Es gab einen Fehler beim speichern der Palette.",
-  "NO_COLORS_TO_SAVE": "Es gibt keine Farben zum speichern.",
-  "ALL_LAYERS": "Alle Ebenen",
-  "SINGLE_LAYER": "Ausgewählte Ebene",
-  "CHOOSE": "Auswählen",
-  "REMOVE": "Entfernen",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "Datei ist keine \".aseprite-keys\" Datei",
-  "FILE_HAS_INVALID_SHORTCUT": "Die Datei beinhaltet nicht valide Tastenkürzel",
-  "FILE_EXTENSION_NOT_SUPPORTED": "Der Dateitype '{0}' ist nicht unterstützt",
-  "ERROR_READING_FILE": "Fehler beim Lesen der Datei",
-  "DISCARD_PALETTE": "Palette löschen",
-  "DISCARD_PALETTE_CONFIRMATION": "Bist du sicher, das du die aktuelle palette löschen möchtest? Dies kann nicht rückgängig gemacht werden.",
-  "IMPORT_AS_NEW_LAYER": "Als neue Ebene importieren",
-  "PASTE_AS_PRIMARY_COLOR": "Als Primärfarbe einfügen",
-  "IMPORT_AS_NEW_FILE": "Als neue Datei importieren",
-  "IMPORT_PALETTE_FILE": "Palettedatei importieren",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Farben in Palette importieren",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Farbe in Palette importieren",
-  "IMPORT_AS_REFERENCE_LAYER": "Als Referenzebene importieren",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Rechtsklick um farbe zu picken, Shift + Rechtsklick um sie in die Zwischenablage zu kopieren",
-  "OPEN_FILE_FROM_CLIPBOARD": "Aus Zwischenablage öffnen",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Datei aus Zwischenablage öffnen",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Downloading language failed.\nAPI Key might have been overused.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Localization data path not found",
-  "APPLY": "Apply",
-  "UPDATE_SOURCE": "Update source",
-  "COPY_TO_CLIPBOARD": "Copy to clipboard",
-  "LANGUAGE_FILE_NOT_FOUND": "Language file not found.\nLooking for {0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor Project root not found.\nLooking for PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Localization folder not found.\nLooking for /Data/Localization",
-  "SELECT_A_LANGUAGE": "Select a language",
-  "DONE": "Done",
-  "SOURCE_UNSET_OR_MISSING": "Source missing/unset",
-  "SOURCE_NEWER": "Source newer",
-  "SOURCE_UP_TO_DATE": "Source is up to date",
-  "SOURCE_OLDER": "Cloud newer",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 677
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/en.json

@@ -1,677 +0,0 @@
-{
-  "RECENT_FILES": "Recent Files",
-  "OPEN_FILE": "Open file",
-  "NEW_FILE": "New",
-  "RECENT_EMPTY_TEXT": "So much empty space",
-  "LANGUAGE": "Language",
-  "GENERAL": "General",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Key Bindings",
-  "MISC": "Misc",
-  "SHOW_STARTUP_WINDOW": "Show Startup Window",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Show image preview in taskbar",
-  "RECENT_FILE_LENGTH": "Recent file list length",
-  "RECENT_FILE_LENGTH_TOOLTIP": "How many documents are shown under File > Recent. Default: 8",
-  "DEFAULT_NEW_SIZE": "Default new file size",
-  "WIDTH": "Width",
-  "HEIGHT": "Height",
-  "TOOLS": "Tools",
-  "ENABLE_SHARED_TOOLBAR": "Enable shared toolbar",
-  "AUTOMATIC_UPDATES": "Automatic Updates",
-  "CHECK_FOR_UPDATES": "Check updates on startup",
-  "UPDATE_STREAM": "Update stream",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Update channels can only be changed in standalone version (downloaded from https://pixieditor.net).\nSteam and Microsoft Store versions handle updates separately.",
-  "DEBUG": "Debug",
-  "ENABLE_DEBUG_MODE": "Enable Debug mode",
-  "OPEN_CRASH_REPORTS_DIR": "Open crash reports directory",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Enabled",
-  "SHOW_IMAGE_NAME": "Show image name",
-  "SHOW_IMAGE_SIZE": "Show image size",
-  "SHOW_LAYER_COUNT": "Show layer count",
-  "FILE": "File",
-  "RECENT": "Recent",
-  "OPEN": "Open",
-  "SAVE_PIXI": "Save (.pixi)",
-  "SAVE_AS_PIXI": "Save as... (.pixi)",
-  "EXPORT_IMG": "Export (.png, .jpg, etc.)",
-  "EDIT": "Edit",
-  "EXIT": "Exit",
-  "PERCENTAGE": "Percentage",
-  "ABSOLUTE": "Absolute",
-  "PRESERVE_ASPECT_RATIO": "Preserve aspect ratio",
-  "ANCHOR_POINT": "Anchor point",
-  "RESIZE_IMAGE": "Resize image",
-  "RESIZE": "Resize",
-  "DOCUMENTATION": "Documentation",
-  "WEBSITE": "Website",
-  "OPEN_WEBSITE": "Open website",
-  "REPOSITORY": "Repository",
-  "OPEN_REPOSITORY": "Open repository",
-  "OPEN_DOCUMENTATION": "Open documentation",
-  "LICENSE": "License",
-  "OPEN_LICENSE": "Open license",
-  "THIRD_PARTY_LICENSES": "Third party licenses",
-  "OPEN_THIRD_PARTY_LICENSES": "Open third party licenses",
-  "APPLY_TRANSFORM": "Apply transform",
-  "INCREASE_TOOL_SIZE": "Increase tool size",
-  "DECREASE_TOOL_SIZE": "Decrease tool size",
-  "TO_INSTALL_UPDATE": "to install update {0}",
-  "DOWNLOADING_UPDATE": "Downloading update...",
-  "UPDATE_READY": "Update is ready to be installed. Do you want to install it now?",
-  "NEW_UPDATE": "New update",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Couldn't update without admin privileges. Please run PixiEditor as administrator.",
-  "INSUFFICIENT_PERMISSIONS": "Insufficient permissions",
-  "UPDATE_CHECK_FAILED": "Update check failed",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Could not check if there is an update available.",
-  "VERSION": "Version {0}",
-  "OPEN_TEMP_DIR": "Open temp directory",
-  "OPEN_LOCAL_APPDATA_DIR": "Open Local AppData directory",
-  "OPEN_ROAMING_APPDATA_DIR": "Open Roaming AppData directory",
-  "OPEN_INSTALLATION_DIR": "Open installation directory",
-  "DUMP_ALL_COMMANDS": "Dump all commands",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Dump all commands to a text file",
-  "CRASH": "Crash",
-  "CRASH_APP": "Crash application",
-  "DELETE_USR_PREFS": "Delete user preferences (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Delete shortcut file (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Delete editor data (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Generate key bindings template",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Generate key bindings json template",
-  "VALIDATE_SHORTCUT_MAP": "Validate shortcut map",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Validates shortcut map",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Empty keys: {0}\nUnknown Commands: {1}",
-  "RESULT": "Result",
-  "CLEAR_RECENT_DOCUMENTS": "Clear recent documents",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Clear recently opened documents",
-  "OPEN_CMD_DEBUG_WINDOW": "Open command debug window",
-  "PATH_DOES_NOT_EXIST": "{0} does not exist.",
-  "LOCATION_DOES_NOT_EXIST": "Location does not exist.",
-  "FILE_NOT_FOUND": "File not found.",
-  "ARE_YOU_SURE": "Are you sure?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Are you sure you want to delete {0}?\nThis data will be lost for all installations.\n(Full Path: {1})",
-  "FAILED_TO_OPEN_FILE": "Failed to open the file",
-  "OLD_FILE_FORMAT": "Old file format",
-  "OLD_FILE_FORMAT_DESCRIPTION": "This .pixi file uses the old format,\n which is no longer supported and can't be opened.",
-  "NOTHING_FOUND": "Nothing found",
-  "EXPORT": "Export",
-  "EXPORT_IMAGE": "Export image",
-  "IMPORT": "Import",
-  "SHORTCUT_TEMPLATES": "Shortcut templates",
-  "RESET_ALL": "Reset all",
-  "LAYER": "Layer",
-  "LAYER_DELETE_SELECTED": "Delete active layer/folder",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Delete active layer or folder",
-  "LAYER_DELETE_ALL_SELECTED": "Delete all selected layers/folders",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Delete all selected layers and/or folders",
-  "DELETE_SELECTED_PIXELS": "Delete selected pixels",
-  "NEW_FOLDER": "New folder",
-  "CREATE_NEW_FOLDER": "Create new folder",
-  "NEW_LAYER": "New layer",
-  "CREATE_NEW_LAYER": "Create new layer",
-  "NEW_IMAGE": "New image",
-  "CREATE_NEW_IMAGE": "Create new image",
-  "SAVE": "Save",
-  "SAVE_AS": "Save as...",
-  "IMAGE": "Image",
-  "SAVE_IMAGE": "Save image",
-  "SAVE_IMAGE_AS": "Save image as new",
-  "DUPLICATE": "Duplicate",
-  "DUPLICATE_SELECTED_LAYER": "Duplicate selected layer",
-  "CREATE_MASK": "Create mask",
-  "DELETE_MASK": "Delete mask",
-  "TOGGLE_MASK": "Toggle mask",
-  "APPLY_MASK": "Apply mask",
-  "TOGGLE_VISIBILITY": "Toggle visibility",
-  "MOVE_MEMBER_UP": "Move member upwards",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Move selected layer or folder upwards",
-  "MOVE_MEMBER_DOWN": "Move member downwards",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Move selected layer or folder downwards",
-  "MERGE_ALL_SELECTED_LAYERS": "Merge all selected layers",
-  "MERGE_WITH_ABOVE": "Merge selected layer with above",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Merge selected layer with the one above it",
-  "MERGE_WITH_BELOW": "Merge selected layer with below",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Merge selected layer with the one below it",
-  "ADD_REFERENCE_LAYER": "Add Reference Layer",
-  "DELETE_REFERENCE_LAYER": "Delete reference layer",
-  "TRANSFORM_REFERENCE_LAYER": "Transform reference layer",
-  "TOGGLE_REFERENCE_LAYER_POS": "Toggle reference layer position",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Toggle reference layer between topmost or most below",
-  "RESET_REFERENCE_LAYER_POS": "Reset reference layer position",
-  "CLIP_CANVAS": "Clip Canvas",
-  "FLIP_IMG_VERTICALLY": "Flip Image Vertically",
-  "FLIP_IMG_HORIZONTALLY": "Flip Image Horizontally",
-  "FLIP_LAYERS_VERTICALLY": "Flip Selected Layers Vertically",
-  "FLIP_LAYERS_HORIZONTALLY": "Flip Selected Layers Horizontally",
-  "ROT_IMG_90": "Rotate Image 90 degrees",
-  "ROT_IMG_180": "Rotate Image 180 degrees",
-  "ROT_IMG_-90": "Rotate Image -90 degrees",
-  "ROT_LAYERS_90": "Rotate Selected Layers 90 degrees",
-  "ROT_LAYERS_180": "Rotate Selected Layers 180 degrees",
-  "ROT_LAYERS_-90": "Rotate Selected Layers -90 degrees",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Toggle vertical symmetry axis",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Toggle horizontal symmetry axis",
-  "DELETE_PIXELS": "Delete pixels",
-  "DELETE_PIXELS_DESCRIPTIVE": "Delete selected pixels",
-  "RESIZE_DOCUMENT": "Resize document",
-  "RESIZE_CANVAS": "Resize canvas",
-  "CENTER_CONTENT": "Center content",
-  "CUT": "Cut",
-  "CUT_DESCRIPTIVE": "Cut selected area/layers",
-  "PASTE": "Paste",
-  "PASTE_DESCRIPTIVE": "Paste clipboard contents",
-  "PASTE_AS_NEW_LAYER": "Paste as new layer",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Paste from clipboard as new layer",
-  "PASTE_REFERENCE_LAYER": "Paste reference layer",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Paste clipboard contents as reference layer",
-  "PASTE_COLOR": "Paste color",
-  "PASTE_COLOR_DESCRIPTIVE": "Paste color from clipboard",
-  "PASTE_COLOR_SECONDARY": "Paste color as secondary",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Paste color from clipboard as secondary color",
-  "CLIPBOARD": "Clipboard",
-  "COPY": "Copy",
-  "COPY_DESCRIPTIVE": "Copy to clipboard",
-  "COPY_COLOR_HEX": "Copy primary color (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Copy primary color as HEX code",
-  "COPY_COLOR_RGB": "Copy primary color (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Copy primary color as RGB code",
-  "COPY_COLOR_SECONDARY_HEX": "Copy secondary color (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Copy secondary color as HEX code",
-  "COPY_COLOR_SECONDARY_RGB": "Copy secondary color (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Copy secondary color as RGB code",
-  "PALETTE_COLORS": "Palette Colors",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Replace secondary color by primary",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Replace the secondary color by the primary color",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Replace primary color by secondary",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Replace the primary color by the secondary color",
-  "OPEN_PALETTE_BROWSER": "Open palette browser",
-  "OVERWRITE_PALETTE_CONSENT": "Palette '{0}' already exists, do you want to overwrite it?",
-  "PALETTE_EXISTS": "Palette already exists",
-  "REPLACE_PALETTE_CONSENT": "Replace current palette with selected one?",
-  "REPLACE_PALETTE": "Replace current palette",
-  "SELECT_COLOR_1": "Select color 1",
-  "SELECT_COLOR_2": "Select color 2",
-  "SELECT_COLOR_3": "Select color 3",
-  "SELECT_COLOR_4": "Select color 4",
-  "SELECT_COLOR_5": "Select color 5",
-  "SELECT_COLOR_6": "Select color 6",
-  "SELECT_COLOR_7": "Select color 7",
-  "SELECT_COLOR_8": "Select color 8",
-  "SELECT_COLOR_9": "Select color 9",
-  "SELECT_COLOR_10": "Select color 10",
-  "SELECT_TOOL": "Select {0} Tool",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Select the first color in the palette",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Select the second color in the palette",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Select the third color in the palette",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Select the fourth color in the palette",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Select the fifth color in the palette",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Select the sixth color in the palette",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Select the seventh color in the palette",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Select the eighth color in the palette",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Select the ninth color in the palette",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Select the tenth color in the palette",
-  "SWAP_COLORS": "Swap colors",
-  "SWAP_COLORS_DESCRIPTIVE": "Swap primary and secondary colors",
-  "SEARCH": "Search",
-  "COMMAND_SEARCH": "Command search",
-  "OPEN_COMMAND_SEARCH": "Open command search window",
-  "SELECT": "Select",
-  "DESELECT": "Deselect",
-  "INVERT": "Invert",
-  "SELECTION": "Selection",
-  "SELECT_ALL": "Select all",
-  "SELECT_ALL_DESCRIPTIVE": "Select everything",
-  "CLEAR_SELECTION": "Clear selection",
-  "INVERT_SELECTION": "Invert selection",
-  "INVERT_SELECTION_DESCRIPTIVE": "Invert the selection",
-  "TRANSFORM_SELECTED_AREA": "Transform selected area",
-  "NUDGE_SELECTED_LEFT": "Nudge selected object left",
-  "NUDGE_SELECTED_RIGHT": "Nudge selected object right",
-  "NUDGE_SELECTED_UP": "Nudge selected object up",
-  "NUDGE_SELECTED_DOWN": "Nudge selected object down",
-  "MASK_FROM_SELECTION": "New mask from selection",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Selection to new mask",
-  "ADD_SELECTION_TO_MASK": "Add selection to mask",
-  "SUBTRACT_SELECTION_FROM_MASK": "Subtract selection from mask",
-  "INTERSECT_SELECTION_MASK": "Intersect selection with mask",
-  "SELECTION_TO_MASK": "Selection to mask",
-  "TO_NEW_MASK": "to new mask",
-  "ADD_TO_MASK": "add to mask",
-  "SUBTRACT_FROM_MASK": "subtract from mask",
-  "INTERSECT_WITH_MASK": "intersect with mask",
-  "STYLUS": "Stylus",
-  "TOGGLE_PEN_MODE": "Toggle pen mode",
-  "UNDO": "Undo",
-  "UNDO_DESCRIPTIVE": "Undo last action",
-  "REDO": "Redo",
-  "REDO_DESCRIPTIVE": "Redo last action",
-  "WINDOWS": "Windows",
-  "TOGGLE_GRIDLINES": "Toggle gridlines",
-  "ZOOM_IN": "Zoom in",
-  "ZOOM_OUT": "Zoom out",
-  "NEW_WINDOW_FOR_IMG": "New window for current image",
-  "CENTER_ACTIVE_VIEWPORT": "Center active viewport",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Flip viewport horizontally",
-  "FLIP_VIEWPORT_VERTICALLY": "Flip viewport vertically",
-  "SETTINGS": "Settings",
-  "OPEN_SETTINGS": "Open settings",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Open settings window",
-  "OPEN_STARTUP_WINDOW": "Open startup window",
-  "OPEN_SHORTCUT_WINDOW": "Open shortcuts window",
-  "OPEN_ABOUT_WINDOW": "Open about window",
-  "OPEN_NAVIGATION_WINDOW": "Open navigation window",
-  "ERROR": "Error",
-  "INTERNAL_ERROR": "Internal error",
-  "ERROR_SAVE_LOCATION": "Couldn't save the file to the specified location",
-  "ERROR_WHILE_SAVING": "An internal error occured while saving. Please try again.",
-  "UNKNOWN_ERROR_SAVING": "An error occured while saving.",
-  "FAILED_ASSOCIATE_LOSPEC": "Failed to associate Lospec Palette protocol.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Donate",
-  "YES": "Yes",
-  "NO": "No",
-  "CANCEL": "Cancel",
-  "UNNAMED": "Unnamed",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Open command debug window",
-  "DELETE": "Delete",
-  "USER_PREFS": "User preferences (Roaming)",
-  "SHORTCUT_FILE": "Shortcut file (Roaming)",
-  "EDITOR_DATA": "Editor data (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Moves viewport. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Click and move to pan the viewport",
-  "MOVE_TOOL_TOOLTIP": "Moves selected pixels ({0}). Hold Ctrl to move all layers.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Hold mouse to move selected pixels. Hold Ctrl to move all layers.",
-  "PEN_TOOL_TOOLTIP": "Pen. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Click and move to draw.",
-  "PIXEL_PERFECT_SETTING": "Pixel perfect",
-  "RECTANGLE_TOOL_TOOLTIP": "Draws rectangle on canvas ({0}). Hold Shift to draw a square.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move to draw a rectangle. Hold Shift to draw a square.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Click and move to draw a square.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Keep original image",
-  "ROTATE_VIEWPORT_TOOLTIP": "Rotates viewport. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Click and move to rotate the viewport",
-  "SELECT_TOOL_TOOLTIP": "Selects area. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move to select an area. Hold Shift to add to existing selection. Hold Ctrl to subtract from it.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Click and move to add to the current selection.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Click and move to subtract from the current selection.",
-  "ZOOM_TOOL_TOOLTIP": "Zooms viewport ({0}). Click to zoom in, hold alt and click to zoom out.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move to zoom. Click to zoom in, hold ctrl and click to zoom out.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Click and move to zoom. Click to zoom out, release ctrl and click to zoom in.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Makes pixels brighter or darker ({0}). Hold Ctrl to make pixels darker.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Draw on pixels to make them brighter. Hold Ctrl to darken.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Draw on pixels to make them darker. Release Ctrl to brighten.",
-  "COLOR_PICKER_TOOLTIP": "Picks the primary color from the canvas. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Click to pick colors. Hold Ctrl to hide the canvas. Hold Shift to hide the reference layer",
-  "ELLIPSE_TOOL_TOOLTIP": "Draws an ellipse on canvas ({0}). Hold Shift to draw a circle.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move mouse to draw an ellipse. Hold Shift to draw a circle.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Click and move mouse to draw a circle.",
-  "ERASER_TOOL_TOOLTIP": "Erases color from pixel. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Click and move to erase.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Fills area with color. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Press on an area to fill it. Hold down Ctrl to consider all layers.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Press on an area to fill it. Release Ctrl to only consider the current layers.",
-  "LASSO_TOOL_TOOLTIP": "Lasso. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move to select pixels inside of the lasso. Hold Shift to add to existing selection. Hold Ctrl to subtract from it.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Click and move to add pixels inside of the lasso to the selection.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Click and move to subtract pixels inside of the lasso from the selection.",
-  "LINE_TOOL_TOOLTIP": "Draws line on canvas ({0}). Hold Shift to enable snapping.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Click and move to draw a line. Hold Shift to enable snapping.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Click and move mouse to draw a line with snapping enabled.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Magic Wand ({0}). Flood's the selection",
-  "MAGIC_WAND_ACTION_DISPLAY": "Click to flood the selection.",
-  "PEN_TOOL": "Pen",
-  "BRIGHTNESS_TOOL": "Brightness",
-  "COLOR_PICKER_TOOL": "Color Picker",
-  "ELLIPSE_TOOL": "Ellipse",
-  "ERASER_TOOL": "Eraser",
-  "FLOOD_FILL_TOOL": "Flood Fill",
-  "LASSO_TOOL": "Lasso",
-  "LINE_TOOL": "Line",
-  "MAGIC_WAND_TOOL": "Magic Wand",
-  "MOVE_TOOL": "Move",
-  "MOVE_VIEWPORT_TOOL": "Move Viewport",
-  "RECTANGLE_TOOL": "Rectangle",
-  "ROTATE_VIEWPORT_TOOL": "Rotate Viewport",
-  "SELECT_TOOL_NAME": "Select",
-  "ZOOM_TOOL": "Zoom",
-  "SHAPE_LABEL": "Shape",
-  "MODE_LABEL": "Mode",
-  "SCOPE_LABEL": "Scope",
-  "FILL_SHAPE_LABEL": "Fill shape",
-  "FILL_COLOR_LABEL": "Fill color",
-  "TOOL_SIZE_LABEL": "Tool size",
-  "STRENGTH_LABEL": "Strength",
-  "NEW": "New",
-  "ADD": "Add",
-  "SUBTRACT": "Subtract",
-  "INTERSECT": "Intersect",
-  "RECTANGLE": "Rectangle",
-  "CIRCLE": "Circle",
-  "ABOUT": "About",
-  "MINIMIZE": "Minimize",
-  "RESTORE": "Restore",
-  "MAXIMIZE": "Maximize",
-  "CLOSE": "Close",
-  "EXPORT_SIZE_HINT": "If you want to share the image, try {0}% for the best clarity",
-  "CREATE": "Create",
-  "BASE_LAYER_NAME": "Base layer",
-  "ENABLE_MASK": "Enable mask",
-  "SELECTED_AREA_EMPTY": "Selected area is empty",
-  "NOTHING_TO_COPY": "Nothing to copy",
-  "REFERENCE_LAYER_PATH": "Reference layer path",
-  "FLIP": "Flip",
-  "ROTATION": "Rotation",
-  "ROT_IMG_90_D": "Rotate Image 90°",
-  "ROT_IMG_180_D": "Rotate Image 180°",
-  "ROT_IMG_-90_D": "Rotate Image -90°",
-  "ROT_LAYERS_90_D": "Rotate Selected Layers 90°",
-  "ROT_LAYERS_180_D": "Rotate Selected Layers 180°",
-  "ROT_LAYERS_-90_D": "Rotate Selected Layers -90°",
-  "UNNAMED_PALETTE": "Unnamed Palette",
-  "CLICK_SELECT_PRIMARY": "Click to select as main color.",
-  "PEN_MODE": "Pen mode",
-  "VIEW": "View",
-  "HORIZONTAL_LINE_SYMMETRY": "Horizontal line symmetry",
-  "VERTICAL_LINE_SYMMETRY": "Vertical line symmetry",
-  "COLOR_PICKER_TITLE": "Color Picker",
-  "COLOR_SLIDERS_TITLE": "Color Sliders",
-  "PALETTE_TITLE": "Palette",
-  "SWATCHES_TITLE": "Swatches",
-  "LAYERS_TITLE": "Layers",
-  "NAVIGATION_TITLE": "Navigation",
-  "NORMAL_BLEND_MODE": "Normal",
-  "DARKEN_BLEND_MODE": "Darken",
-  "MULTIPLY_BLEND_MODE": "Multiply",
-  "COLOR_BURN_BLEND_MODE": "Color burn",
-  "LIGHTEN_BLEND_MODE": "Lighten",
-  "SCREEN_BLEND_MODE": "Screen",
-  "COLOR_DODGE_BLEND_MODE": "Color dodge",
-  "OVERLAY_BLEND_MODE": "Overlay",
-  "SOFT_LIGHT_BLEND_MODE": "Soft light",
-  "HARD_LIGHT_BLEND_MODE": "Hard light",
-  "DIFFERENCE_BLEND_MODE": "Difference",
-  "EXCLUSION_BLEND_MODE": "Exclusion",
-  "HUE_BLEND_MODE": "Hue",
-  "SATURATION_BLEND_MODE": "Saturation",
-  "LUMINOSITY_BLEND_MODE": "Luminosity",
-  "COLOR_BLEND_MODE": "Color",
-  "NOT_SUPPORTED_BLEND_MODE": "Not supported",
-  "RESTART": "Restart",
-  "SORT_BY": "Sort by",
-  "NAME": "Name",
-  "COLORS": "Colors",
-  "DEFAULT": "Default",
-  "ALPHABETICAL": "Alphabetical",
-  "COLOR_COUNT": "Color count",
-  "ANY": "Any",
-  "MAX": "Max",
-  "MIN": "Min",
-  "EXACT": "Exact",
-  "ASCENDING": "Ascending",
-  "DESCENDING": "Descending",
-  "NAME_IS_TOO_LONG": "The name is too long",
-  "STOP_IT_TEXT1": "That's enough. Tidy up your file names.",
-  "STOP_IT_TEXT2": "Can you stop copying these names please?",
-  "REPLACER_TOOLTIP": "Right click on palette color and choose 'Replace' or drop it here.",
-  "CLICK_TO_CHOOSE_COLOR": "Click to choose the color",
-  "REPLACE_COLOR": "Replace color",
-  "PALETTE_COLOR_TOOLTIP": "Click to select as main color. Drag and drop onto another palette color to swap them.",
-  "ADD_FROM_SWATCHES": "Add from swatches",
-  "ADD_COLOR_TO_PALETTE": "Add color to palette",
-  "USE_IN_CURRENT_IMAGE": "Use in current image",
-  "ADD_TO_FAVORITES": "Add to favorites",
-  "BROWSE_PALETTES": "Browse palettes",
-  "LOAD_PALETTE": "Load palette",
-  "SAVE_PALETTE": "Save palette",
-  "FAVORITES": "Favorites",
-  "ADD_FROM_CURRENT_PALETTE": "Add from current palette",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Open palettes directory in explorer",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Browse palettes on Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Import from file",
-  "TOP_LEFT": "Top left",
-  "TOP_CENTER": "Top center",
-  "TOP_RIGHT": "Top right",
-  "MIDDLE_LEFT": "Middle left",
-  "MIDDLE_CENTER": "Middle center",
-  "MIDDLE_RIGHT": "Middle right",
-  "BOTTOM_LEFT": "Bottom left",
-  "BOTTOM_CENTER": "Bottom center",
-  "BOTTOM_RIGHT": "Bottom right",
-  "CLIP_TO_BELOW": "Clip to layer below",
-  "MOVE_UPWARDS": "Move upwards",
-  "MOVE_DOWNWARDS": "Move downwards",
-  "MERGE_SELECTED": "Merge selected",
-  "LOCK_TRANSPARENCY": "Lock transparency",
-  "COULD_NOT_LOAD_PALETTE": "Couldn't fetch palettes",
-  "NO_PALETTES_FOUND": "No palettes found.",
-  "LOSPEC_LINK_TEXT": "I heard you can find some here: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Palette Browser",
-  "DELETE_PALETTE_CONFIRMATION": "Are you sure you want to delete this palette? This cannot be undone.",
-  "SHORTCUTS_IMPORTED": "Shortcuts from {0} were imported successfully.",
-  "SHORTCUT_PROVIDER_DETECTED": "We've detected, that you have {0} installed. Do you want to import shortcuts from it?",
-  "IMPORT_FROM_INSTALLATION": "Import from installation",
-  "IMPORT_INSTALLATION_OPTION1": "Import from installation",
-  "IMPORT_INSTALLATION_OPTION2": "Use defaults",
-  "IMPORT_FROM_TEMPLATE": "Import from template",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Shortcuts were imported successfully.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Are you sure you want to reset all shortcuts to their default value?",
-  "SUCCESS": "Success",
-  "WARNING": "Warning",
-  "ERROR_IMPORTING_IMAGE": "An error occured while importing the image.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Corrupted shortcuts file",
-  "SHORTCUTS_CORRUPTED": "Shortcuts file was corrupted, resetting to default.",
-  "FAILED_DOWNLOAD_PALETTE": "Failed to download palette",
-  "FILE_INCORRECT_FORMAT": "The file was not in a correct format",
-  "INVALID_FILE": "Invalid file",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Shortcuts file was not in a correct format",
-  "UNSUPPORTED_FILE_FORMAT": "This file format is unsupported",
-  "ALREADY_ASSIGNED": "Already assigned",
-  "REPLACE": "Replace",
-  "SWAP": "Swap",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "This shortcut is already assigned to '{0}'\nDo you want to replace the existing shortcut or swap the two?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "This shortcut is already assigned to '{0}'\nDo you want to replace the existing shortcut?",
-  "UNSAVED_CHANGES": "Unsaved changes",
-  "DOCUMENT_MODIFIED_SAVE": "The document has been modified. Do you want to save changes?",
-  "SESSION_UNSAVED_DATA": "{0} with unsaved data. Are you sure?",
-  "PROJECT_MAINTAINERS": "Project Maintainers",
-  "OTHER_AWESOME_CONTRIBUTORS": "And other awesome contributors",
-  "HELP": "Help",
-  "STOP_IT_TEXT3": "No, really, stop it.",
-  "STOP_IT_TEXT4": "Don't you have anything better to do?",
-  "LINEAR_DODGE_BLEND_MODE": "Linear dodge (Add)",
-  "PRESS_ANY_KEY": "Press any key",
-  "NONE_SHORTCUT": "None",
-  "REFERENCE": "Reference",
-  "PUT_REFERENCE_LAYER_ABOVE": "Put reference layer above",
-  "PUT_REFERENCE_LAYER_BELOW": "Put reference layer below",
-  "TOGGLE_VERTICAL_SYMMETRY": "Toggle vertical symmetry",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Toggle horizontal symmetry",
-  "RESET_VIEWPORT": "Reset viewport",
-  "VIEWPORT_SETTINGS": "Viewport settings",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Click and hold mouse to move pixels in selected layers.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Hold mouse to move all layers.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Rename",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Open Localization Debug Window",
-  "FORCE_OTHER_FLOW_DIRECTION": "Force other flow direction",
-  "API_KEY": "API Key",
-  "LOCALIZATION_VIEW_TYPE": "Localization View Type",
-  "LOAD_LANGUAGE_FROM_FILE": "Load language from file",
-  "LOG_IN": "Log in",
-  "SYNC": "Sync",
-  "NOT_LOGGED_IN": "Not logged in",
-  "POE_EDITOR_ERROR": "POEditor Error: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP Error: {0} {1}",
-  "LOGGED_IN": "Logged in",
-  "SYNCED_SUCCESSFULLY": "Synced successfully",
-  "EXCEPTION_ERROR": "Exception: {0}",
-  "DROP_PALETTE": "Drop palette here",
-  "SECURITY_ERROR": "Security error",
-  "SECURITY_ERROR_MSG": "No rights to write to the specified location.",
-  "IO_ERROR": "IO error",
-  "IO_ERROR_MSG": "Error while writing to disk.",
-  "FAILED_ASSOCIATE_PIXI": "Failed to associate .pixi file with PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "There was an error while saving the palette.",
-  "NO_COLORS_TO_SAVE": "There are no colors to save.",
-  "ALL_LAYERS": "All Layers",
-  "SINGLE_LAYER": "Single Layer",
-  "CHOOSE": "Choose",
-  "REMOVE": "Remove",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "File is not a \".aseprite-keys\" file",
-  "FILE_HAS_INVALID_SHORTCUT": "The file contains an invalid shortcut",
-  "FILE_EXTENSION_NOT_SUPPORTED": "The file type '{0}' is not supported",
-  "ERROR_READING_FILE": "Error while reading the file",
-  "DISCARD_PALETTE": "Discard palette",
-  "DISCARD_PALETTE_CONFIRMATION": "Are you sure you want to discard current palette? This cannot be undone.",
-  "IMPORT_AS_NEW_LAYER": "Import as new layer",
-  "PASTE_AS_PRIMARY_COLOR": "Paste as primary color",
-  "IMPORT_AS_NEW_FILE": "Import as new file",
-  "IMPORT_PALETTE_FILE": "Import palette file",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Import colors into palette",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Import color into palette",
-  "IMPORT_AS_REFERENCE_LAYER": "Import as reference layer",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Right-click to pick color, Shift-right-click to copy color to clipboard",
-  "OPEN_FILE_FROM_CLIPBOARD": "Open from clipboard",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Open from clipboard",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Downloading language failed.\nAPI Key might have been overused.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Localization data path not found",
-  "APPLY": "Apply",
-  "UPDATE_SOURCE": "Update source",
-  "COPY_TO_CLIPBOARD": "Copy to clipboard",
-  "LANGUAGE_FILE_NOT_FOUND": "Language file not found.\nLooking for {0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor Project root not found.\nLooking for PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Localization folder not found.\nLooking for /Data/Localization",
-  "SELECT_A_LANGUAGE": "Select a language",
-  "DONE": "Done",
-  "SOURCE_UNSET_OR_MISSING": "Source missing/unset",
-  "SOURCE_NEWER": "Source newer",
-  "SOURCE_UP_TO_DATE": "Source is up to date",
-  "SOURCE_OLDER": "Cloud newer",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally.",
-  "LOCAL_PALETTE_SOURCE_NAME": "Local",
-  "ERROR_FORBIDDEN_UNIQUE_NAME": "Extension unique name cannot start with 'pixieditor'.",
-  "ERROR_MISSING_METADATA": "Extension metadata key '{0}' is missing.",
-  "ERROR_NO_CLASS_ENTRY": "Extension class entry is missing on path '{0}'.",
-  "ERROR_NO_ENTRY_ASSEMBLY": "Extension entry assembly is missing on path '{0}'.",
-  "ERROR_MISSING_ADDITIONAL_CONTENT": "Your current setup doesn't allow loading this extension. Perhaps you don't own it or don't have it installed. You can purchase it here '{0}'.",
-  "BUY_SUPPORTER_PACK": "Buy Supporter Pack",
-  "NEWS": "News",
-  "DISABLE_NEWS_PANEL": "Disable News panel in startup window",
-  "FAILED_FETCH_NEWS": "Failed to fetch news",
-  "CROP_TO_SELECTION": "Crop to selection",
-  "CROP_TO_SELECTION_DESCRIPTIVE": "Crop image to selection",
-  "SHOW_CONTEXT_MENU": "Show context menu",
-  "ERASE": "Erase",
-  "USE_SECONDARY_COLOR": "Use secondary color",
-  "RIGHT_CLICK_MODE": "Right click mode",
-  "ADD_PRIMARY_COLOR_TO_PALETTE": "Add primary color to palette",
-  "ADD_PRIMARY_COLOR_TO_PALETTE_DESCRIPTIVE": "Add primary color to current palette",
-  "EXPORT_SAVE_TITLE": "Choose a location to save the image",
-  "BROWSE_DIRECTORY": "Browse Directory",
-  "CRASH_NOT_ALL_DOCUMENTS_RECOVERED_TITLE": "Not all documents were recovered",
-  "CRASH_NOT_ALL_DOCUMENTS_RECOVERED": "Could not recover all documents. Git gud at saving your work.",
-  "SEND": "Send report",
-  "OPEN_DOCKABLE_MENU": "Open Tab",
-  "TIMELINE_TITLE": "Timeline",
-  "EXPORT_IMAGE_HEADER": "Image",
-  "EXPORT_ANIMATION_HEADER": "Animation",
-  "EXPORT_SPRITESHEET_HEADER": "Spritesheet",
-  "PIXI_FILE": "PixiEditor Files",
-  "PNG_FILE": "PNG Images",
-  "JPEG_FILE": "JPEG Images",
-  "GIF_FILE": "GIFs",
-  "BMP_FILE": "BMP Images",
-  "IMAGE_FILES": "Image Files",
-  "VIDEO_FILES": "Video Files",
-  "MP4_FILE": "MP4 Videos",
-  "COLUMNS": "Columns",
-  "ROWS": "Rows",
-  "BACKGROUND": "Background",
-  "OPACITY": "Opacity",
-  "IS_VISIBLE": "Is visible",
-  "CLIP_TO_MEMBER_BELOW": "Clip to member below",
-  "BLEND_MODE": "Blend mode",
-  "MASK": "Mask",
-  "MASK_IS_VISIBLE": "Mask is visible",
-  "OUTPUT": "Output",
-  "INPUT": "Input",
-  "NODE_GRAPH_TITLE": "Graph View",
-  "CONTENT": "Content",
-  "RADIUS": "Radius",
-  "STROKE_COLOR": "Stroke color",
-  "STROKE_WIDTH": "Stroke width",
-  "FILL_COLOR": "Fill color",
-  "TOP": "Top",
-  "BOTTOM": "Bottom",
-  "CHANNELS_DOCK_TITLE": "Channels",
-  "RED": "Red",
-  "GREEN": "Green",
-  "BLUE": "Blue",
-  "ALPHA": "Alpha",
-  "COLOR": "Color",
-  "COORDINATE": "Coordinate",
-  "VECTOR": "Vector",
-  "MATRIX": "Matrix",
-  "TRANSFORMED": "Transformed",
-  "GRAYSCALE": "Grayscale",
-  "CLAMP": "Clamp",
-  "SIZE": "Size",
-  "EMPTY_IMAGE": "Empty image",
-  "NOISE": "Noise",
-  "SCALE": "Scale",
-  "SEED": "Seed",
-  "KERNEL": "Kernel",
-  "KERNEL_VIEW_SUM": "Sum:",
-  "KERNEL_VIEW_SUM_TOOLTIP": "The sum of all values. You likely want to aim for a value of 1 or 0",
-  "GAIN": "Gain",
-  "BIAS": "Bias",
-  "TILE_MODE": "Tile Mode",
-  "ON_ALPHA": "On Alpha",
-  "PIXEL_COORDINATE": "Pixel Coordinate",
-  "OUTPUT_NODE": "Output",
-  "NOISE_NODE": "Noise",
-  "ELLIPSE_NODE": "Ellipse",
-  "CREATE_IMAGE_NODE": "Create Image",
-  "FOLDER_NODE": "Folder",
-  "IMAGE_LAYER_NODE": "Image Layer",
-  "IMAGE_SPACE_NODE": "Image Space",
-  "KERNEL_FILTER_NODE": "Kernel Filter",
-  "MATH_NODE": "Math",
-  "MATRIX_TRANSFORM_NODE": "Matrix Transform",
-  "MERGE_NODE": "Merge",
-  "MODIFY_IMAGE_LEFT_NODE": "Begin Modify Image",
-  "MODIFY_IMAGE_RIGHT_NODE": "End Modify Image",
-  "COMBINE_CHANNELS_NODE": "Combine Channels",
-  "COMBINE_COLOR_NODE": "Combine Color",
-  "COMBINE_VECD_NODE": "Combine Vector",
-  "COMBINE_VECI_NODE": "Combine Integer Vector",
-  "SEPARATE_CHANNELS_NODE": "Separate Channels",
-  "SEPARATE_VECD_NODE": "Separate Vector",
-  "SEPARATE_VECI_NODE": "Separate Integer Vector",
-  "SEPARATE_COLOR_NODE": "Separate Color",
-  "TIME_NODE": "Time",
-  "FILTERS": "Filters",
-  "PREVIOUS": "Previous",
-  "FILL": "Fill",
-  "MATH_MODE": "Math Mode",
-  "NOISE_TYPE": "Noise Type",
-  "OCTAVES": "Octaves",
-  "ACTIVE_FRAME": "Active Frame",
-  "NORMALIZED_TIME": "Normalized Time",
-  "WITHOUT_FILTERS": "Without filters",
-  "RAW_LAYER_OUTPUT": "Raw"
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/es.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Archivo Reciente",
-  "OPEN_FILE": "Abrir Archivo",
-  "NEW_FILE": "Nuevo",
-  "RECENT_EMPTY_TEXT": "Demasiado espacio vacio",
-  "LANGUAGE": "Idioma",
-  "GENERAL": "General",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Fijaciones de teclas",
-  "MISC": "Otros",
-  "SHOW_STARTUP_WINDOW": "Abrir Al Iniciar Windows",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Mostrar imagen en la barra de tareas",
-  "RECENT_FILE_LENGTH": "Longitud de la lista de archivos reciente",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Cuántos documentos se muestran en Archivo > Recientes. Por defecto: 8",
-  "DEFAULT_NEW_SIZE": "Nuevo archivo por defecto",
-  "WIDTH": "Anchura",
-  "HEIGHT": "Altura",
-  "TOOLS": "Herramientas",
-  "ENABLE_SHARED_TOOLBAR": "Activar la barra de herramientas compartida",
-  "AUTOMATIC_UPDATES": "Actualizaciones Automáticas",
-  "CHECK_FOR_UPDATES": "Buscar actualizaciones al iniciar",
-  "UPDATE_STREAM": "Actualizar stream",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Los canales de actualización sólo se pueden cambiar en la versión independiente (descargada de https://pixieditor.net).\nLas versiones de Steam y Microsoft Store gestionan las actualizaciones por separado.",
-  "DEBUG": "Debug",
-  "ENABLE_DEBUG_MODE": "Activar modo Debug",
-  "OPEN_CRASH_REPORTS_DIR": "Abrir lista de reportes",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Activado",
-  "SHOW_IMAGE_NAME": "Mostrar nombre del archivo",
-  "SHOW_IMAGE_SIZE": "Mostrar tamaño del archivo",
-  "SHOW_LAYER_COUNT": "Mostrar recuento de capas",
-  "FILE": "Archivo",
-  "RECENT": "Reciente",
-  "OPEN": "Abrir",
-  "SAVE_PIXI": "Guardar (.pixi)",
-  "SAVE_AS_PIXI": "Guardar como... (.pixi)",
-  "EXPORT_IMG": "Exportar (.png, .jpg, etc.)",
-  "EDIT": "Editar",
-  "EXIT": "Salir",
-  "PERCENTAGE": "Porcentaje",
-  "ABSOLUTE": "Absoluto",
-  "PRESERVE_ASPECT_RATIO": "Conservar la relación de aspecto",
-  "ANCHOR_POINT": "Punto de anclaje",
-  "RESIZE_IMAGE": "Cambiar el tamaño de la imagen",
-  "RESIZE": "Cambie el tamaño de",
-  "DOCUMENTATION": "Documentacion",
-  "WEBSITE": "Pagina Web",
-  "OPEN_WEBSITE": "Abrir Pagina Web",
-  "REPOSITORY": "Repositorio",
-  "OPEN_REPOSITORY": "Abrir Repositorio",
-  "LICENSE": "Licencia",
-  "OPEN_LICENSE": "Abrir Licencia",
-  "THIRD_PARTY_LICENSES": "Licencias de terceros",
-  "OPEN_THIRD_PARTY_LICENSES": "Abrir licencias de terceros",
-  "APPLY_TRANSFORM": "Aplicar transformacion",
-  "INCREASE_TOOL_SIZE": "Aumentar el tamaño de la herramienta",
-  "DECREASE_TOOL_SIZE": "Disminuir el tamaño de la herramienta",
-  "TO_INSTALL_UPDATE": "instalar actualización {0}",
-  "DOWNLOADING_UPDATE": "Instalando actualizacion...",
-  "UPDATE_READY": "Actualización listo para instalar. ¿Desea instalarlo ahora?",
-  "NEW_UPDATE": "Nueva actualizacion",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "No se ha podido actualizar sin privilegios de administrador. Por favor, ejecute PixiEditor como administrador.",
-  "INSUFFICIENT_PERMISSIONS": "Permisos insuficientes",
-  "UPDATE_CHECK_FAILED": "Error en la comprobación de la actualización",
-  "COULD_NOT_CHECK_FOR_UPDATES": "No se ha podido comprobar si hay una actualización disponible.",
-  "VERSION": "Version {0}",
-  "OPEN_TEMP_DIR": "Abrir directorio temporal",
-  "OPEN_LOCAL_APPDATA_DIR": "Abra el directorio local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "Abrir el directorio Roaming AppData",
-  "OPEN_INSTALLATION_DIR": "Abrir el directorio de instalación",
-  "DUMP_ALL_COMMANDS": "Volcar todos los comandos",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Volcar todos los comandos a un archivo de texto",
-  "CRASH": "Error",
-  "CRASH_APP": "Error en la aplicacion",
-  "DELETE_USR_PREFS": "Eliminar las preferencias del usuario (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Eliminar el archivo de acceso directo (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Eliminar datos del editor (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Generar plantilla de enlaces de teclas",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Generar plantilla json de enlaces de claves",
-  "VALIDATE_SHORTCUT_MAP": "Validar dirección de accesos directos",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Validados dirección de accesos directos",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Llaves vacías: {0}\nComandos desconocidos: {1}",
-  "RESULT": "Resultado",
-  "CLEAR_RECENT_DOCUMENTS": "Limpiar archivos recientes",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Limpiar documentos recientemente abiertos",
-  "OPEN_CMD_DEBUG_WINDOW": "Abrir caja de comandos debug de windows",
-  "PATH_DOES_NOT_EXIST": "{0} no existe.",
-  "LOCATION_DOES_NOT_EXIST": "La ubicación no existe.",
-  "FILE_NOT_FOUND": "Archivo no encontrado.",
-  "ARE_YOU_SURE": "¿Estas seguro?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "¿Está seguro de que desea borrar {0}?\nEstos datos se perderán para todas las instalaciones.\n(Ruta completa: {1})",
-  "FAILED_TO_OPEN_FILE": "Error al abrir el archivo",
-  "OLD_FILE_FORMAT": "Formato de archivo viejo",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Este archivo .pixi utiliza el formato antiguo,\nque ya no es compatible y no puede abrirse.",
-  "NOTHING_FOUND": "Nada encontrado",
-  "EXPORT": "Exportar",
-  "EXPORT_IMAGE": "Exportar imagen",
-  "IMPORT": "Importar",
-  "SHORTCUT_TEMPLATES": "Plantillas de acceso directo",
-  "RESET_ALL": "Reiniciar todo",
-  "LAYER": "Capa",
-  "LAYER_DELETE_SELECTED": "Borrar capa/carpeta activa",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Borrar capa o carpeta activa",
-  "LAYER_DELETE_ALL_SELECTED": "Eliminar todas las capas/carpetas seleccionadas",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Eliminar todas las capas y/o carpetas seleccionadas",
-  "DELETE_SELECTED_PIXELS": "Borrar píxeles seleccionados",
-  "NEW_FOLDER": "Nueva carpeta",
-  "CREATE_NEW_FOLDER": "Crear nueva carpeta",
-  "NEW_LAYER": "Nueva capa",
-  "CREATE_NEW_LAYER": "Crear nueva capa",
-  "NEW_IMAGE": "Imagen nueva",
-  "CREATE_NEW_IMAGE": "Crear imagen nueva",
-  "SAVE": "Guardar",
-  "SAVE_AS": "Guardar como...",
-  "IMAGE": "Imagen",
-  "SAVE_IMAGE": "Guardar imagen",
-  "SAVE_IMAGE_AS": "Guardar imagen como nuevo",
-  "DUPLICATE": "Duplicar",
-  "DUPLICATE_SELECTED_LAYER": "Duplicar capa selecionada",
-  "CREATE_MASK": "Crear mascara",
-  "DELETE_MASK": "Borrar mascara",
-  "TOGGLE_MASK": "Máscara de conmutación",
-  "APPLY_MASK": "Aplicar mascara",
-  "TOGGLE_VISIBILITY": "Alternar visibilidad",
-  "MOVE_MEMBER_UP": "Desplazar al miembro hacia arriba",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Mover hacia arriba la capa o carpeta seleccionada",
-  "MOVE_MEMBER_DOWN": "Desplazar el miembro hacia abajo",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Mover hacia abajo la capa o carpeta seleccionada",
-  "MERGE_ALL_SELECTED_LAYERS": "Fusionar todas las capas seleccionadas",
-  "MERGE_WITH_ABOVE": "Fusionar la capa seleccionada con la anterior",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Fusionar la capa seleccionada con la superior",
-  "MERGE_WITH_BELOW": "Fusionar la capa seleccionada con la de abajo",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Fusionar la capa seleccionada con la inferior",
-  "ADD_REFERENCE_LAYER": "Añadir capa de referencia",
-  "DELETE_REFERENCE_LAYER": "Eliminar capa de referencia",
-  "TRANSFORM_REFERENCE_LAYER": "Transformar capa de referencia",
-  "TOGGLE_REFERENCE_LAYER_POS": "Conmutar la posición de la capa de referencia",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Conmutar la capa de referencia entre la superior o la inferior",
-  "RESET_REFERENCE_LAYER_POS": "Restablecer la posición de la capa de referencia",
-  "CLIP_CANVAS": "Adjuntar Canvas",
-  "FLIP_IMG_VERTICALLY": "Voltear imagen verticalmente",
-  "FLIP_IMG_HORIZONTALLY": "Voltear imagen horizontalmente",
-  "FLIP_LAYERS_VERTICALLY": "Voltear verticalmente las capas seleccionadas",
-  "FLIP_LAYERS_HORIZONTALLY": "Voltear horizontalmente las capas seleccionadas",
-  "ROT_IMG_90": "Girar la imagen 90 grados",
-  "ROT_IMG_180": "Girar la imagen 180 grados",
-  "ROT_IMG_-90": "Girar la imagen -90 grados",
-  "ROT_LAYERS_90": "Girar 90 grados las capas seleccionadas",
-  "ROT_LAYERS_180": "Girar 180 grados las capas seleccionadas",
-  "ROT_LAYERS_-90": "Girar -90 grados las capas seleccionadas",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Conmutar el eje de simetría vertical",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Conmutar el eje de simetría horizontal",
-  "DELETE_PIXELS": "Borrar píxeles",
-  "DELETE_PIXELS_DESCRIPTIVE": "Borrar píxeles seleccionados",
-  "RESIZE_DOCUMENT": "Cambiar el tamaño del documento",
-  "RESIZE_CANVAS": "Cambiar el tamaño del canvas",
-  "CENTER_CONTENT": "Contenido central",
-  "CUT": "Cortar",
-  "CUT_DESCRIPTIVE": "Cortar el área o las capas seleccionadas",
-  "PASTE": "Pegar",
-  "PASTE_DESCRIPTIVE": "Pegar el contenido del portapapeles",
-  "PASTE_AS_NEW_LAYER": "Pegar como nueva capa",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Pegar desde el portapapeles como nueva capa",
-  "PASTE_REFERENCE_LAYER": "Pegar capa de referencia",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Pegar el contenido del portapapeles como capa de referencia",
-  "PASTE_COLOR": "Pegar color",
-  "PASTE_COLOR_DESCRIPTIVE": "Pegar color desde el portapapeles",
-  "PASTE_COLOR_SECONDARY": "Pegar color como secundario",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Pegar color del portapapeles como color secundario",
-  "CLIPBOARD": "Portapapeles",
-  "COPY": "Copiar",
-  "COPY_DESCRIPTIVE": "Copiar al portapapeles",
-  "COPY_COLOR_HEX": "Copiar color primario (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Copiar color primario como código HEX",
-  "COPY_COLOR_RGB": "Copiar color primario (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Copiar color primario como código RGB",
-  "COPY_COLOR_SECONDARY_HEX": "Copiar color secundario (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Copiar color secundario como código HEX",
-  "COPY_COLOR_SECONDARY_RGB": "Copiar color secundario (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Copiar color secundario como código RGB",
-  "PALETTE_COLORS": "Colores de la paleta",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Sustituir el color secundario por el primario",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Sustituye el color secundario por el primario",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Sustituir el color primario por el secundario",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Sustituir el color primario por el secundario",
-  "OPEN_PALETTE_BROWSER": "Abrir el navegador de paletas",
-  "OVERWRITE_PALETTE_CONSENT": "La paleta '{0}' ya existe, ¿desea sobrescribirla?",
-  "PALETTE_EXISTS": "La paleta ya existe",
-  "REPLACE_PALETTE_CONSENT": "¿Reemplazar la paleta actual por la seleccionada?",
-  "REPLACE_PALETTE": "Sustituir la paleta actual",
-  "SELECT_COLOR_1": "Seleccionar color 1",
-  "SELECT_COLOR_2": "Seleccionar color 2",
-  "SELECT_COLOR_3": "Seleccionar color 3",
-  "SELECT_COLOR_4": "Seleccionar color 4",
-  "SELECT_COLOR_5": "Seleccionar color 5",
-  "SELECT_COLOR_6": "Seleccionar color 6",
-  "SELECT_COLOR_7": "Seleccionar color 7",
-  "SELECT_COLOR_8": "Seleccionar color  8",
-  "SELECT_COLOR_9": "Seleccionar color 9",
-  "SELECT_COLOR_10": "Seleccionar color 10",
-  "SELECT_TOOL": "Seleccionar {0} Herramienta",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Seleccione el primer color de la paleta",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Seleccione el segundo color de la paleta",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Seleccione el tercero color de la paleta",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Seleccione el cuarto color de la paleta",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Seleccione el quinto color de la paleta",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Seleccione el sexto color de la paleta",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Seleccione el séptimo color de la paleta",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Seleccione el octavo color de la paleta",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Seleccione el noveno color de la paleta",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Seleccione el decimo color de la paleta",
-  "SWAP_COLORS": "Intercambiar colores",
-  "SWAP_COLORS_DESCRIPTIVE": "Intercambiar colores primarios y secundarios",
-  "SEARCH": "Buscar",
-  "COMMAND_SEARCH": "Buscar comandos",
-  "OPEN_COMMAND_SEARCH": "Abrir buscador de comandos",
-  "SELECT": "Seleccionar",
-  "DESELECT": "Deseleccionar",
-  "INVERT": "Invertir",
-  "SELECTION": "Seleccionar",
-  "SELECT_ALL": "Seleccionar todo",
-  "SELECT_ALL_DESCRIPTIVE": "Seleccionar todo",
-  "CLEAR_SELECTION": "Limpiar seleccionado",
-  "INVERT_SELECTION": "Invertir seleccionado",
-  "INVERT_SELECTION_DESCRIPTIVE": "Invertir zona seleccionada",
-  "TRANSFORM_SELECTED_AREA": "Transformar zona seleccionada",
-  "NUDGE_SELECTED_LEFT": "Desplazar el objeto seleccionado hacia la izquierda",
-  "NUDGE_SELECTED_RIGHT": "Desplazar el objeto seleccionado hacia la derecha",
-  "NUDGE_SELECTED_UP": "Desplazar hacia arriba el objeto seleccionado",
-  "NUDGE_SELECTED_DOWN": "Desplazar hacia abajo el objeto seleccionado",
-  "MASK_FROM_SELECTION": "Nueva máscara a partir de la selección",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Seleccionar nueva mascara",
-  "ADD_SELECTION_TO_MASK": "Agregar mascara seleccionada",
-  "SUBTRACT_SELECTION_FROM_MASK": "Restar la selección de la máscara",
-  "INTERSECT_SELECTION_MASK": "Selección de intersección con máscara",
-  "SELECTION_TO_MASK": "Selección para enmascarar",
-  "TO_NEW_MASK": "a la nueva máscara",
-  "ADD_TO_MASK": "agregar mascara",
-  "SUBTRACT_FROM_MASK": "restar de la máscara",
-  "INTERSECT_WITH_MASK": "intersecar con máscara",
-  "STYLUS": "Stylus",
-  "TOGGLE_PEN_MODE": "Activar el modo lápiz",
-  "UNDO": "Deshacer",
-  "UNDO_DESCRIPTIVE": "Deshacer la última acción",
-  "REDO": "Rehacer",
-  "REDO_DESCRIPTIVE": "Rehacer la última acción",
-  "WINDOWS": "Windows",
-  "TOGGLE_GRIDLINES": "Activar cuadrículas",
-  "ZOOM_IN": "Ampliar",
-  "ZOOM_OUT": "Alejar",
-  "NEW_WINDOW_FOR_IMG": "Nueva ventana para la imagen actual",
-  "CENTER_ACTIVE_VIEWPORT": "Centrar la ventana activa",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Voltear horizontalmente la ventana gráfica",
-  "FLIP_VIEWPORT_VERTICALLY": "Voltear la ventana verticalmente",
-  "SETTINGS": "Ajustes",
-  "OPEN_SETTINGS": "Abrir ajustes",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Abrir la ventana de configuración",
-  "OPEN_STARTUP_WINDOW": "Abrir la ventana de inicio",
-  "OPEN_SHORTCUT_WINDOW": "Abrir la ventana de accesos directos",
-  "OPEN_ABOUT_WINDOW": "Abrir la ventana Acerca de",
-  "OPEN_NAVIGATION_WINDOW": "Abrir la ventana de navegación",
-  "ERROR": "Error",
-  "INTERNAL_ERROR": "Error interno",
-  "ERROR_SAVE_LOCATION": "No se ha podido guardar el archivo en la ubicación especificada",
-  "ERROR_WHILE_SAVING": "Se ha producido un error interno al guardar. Por favor, inténtelo de nuevo.",
-  "UNKNOWN_ERROR_SAVING": "Se ha producido un error al guardar.",
-  "FAILED_ASSOCIATE_LOSPEC": "Fallo al asociar el protocolo Lospec Palette.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Donar",
-  "YES": "Si",
-  "NO": "No",
-  "CANCEL": "Cancelar",
-  "UNNAMED": "SinNombre",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Abrir ventana de comandos debug",
-  "DELETE": "Eliminar",
-  "USER_PREFS": "Preferencias del usuario (Roaming)",
-  "SHORTCUT_FILE": "Archivo de acceso directo (Roaming)",
-  "EDITOR_DATA": "Editor de datos (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Mueve la ventana gráfica. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Haz clic y desplázate para desplazar la ventana gráfica",
-  "MOVE_TOOL_TOOLTIP": "Mueve los píxeles seleccionados ({0}). Mantenga pulsada la tecla Ctrl para mover todas las capas.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Mantenga pulsado el ratón para mover los píxeles seleccionados. Mantenga pulsada la tecla Ctrl para mover todas las capas.",
-  "PEN_TOOL_TOOLTIP": "Lapiz. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Haz clic y muévete para dibujar.",
-  "PIXEL_PERFECT_SETTING": "Pixel perfecto",
-  "RECTANGLE_TOOL_TOOLTIP": "Dibuja un rectángulo en el canvas ({0}). Mantenga pulsada la tecla Mayús para dibujar un cuadrado.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Haga clic y mueva para dibujar un rectángulo. Mantenga pulsada la tecla Mayús para dibujar un cuadrado.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Haz clic y mueve para dibujar un cuadrado.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Mantener archivo original",
-  "ROTATE_VIEWPORT_TOOLTIP": "Rotar la vista. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Haga clic y mueva para girar la ventana gráfica",
-  "SELECT_TOOL_TOOLTIP": "Seleccionar area. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Haga clic y mueva para seleccionar un área. Mantenga pulsada la tecla Mayús para añadir a la selección existente. Mantenga pulsada la tecla Ctrl para restar.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Pulse y mueva para añadir a la selección actual.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Haga clic y mueva para restar de la selección actual.",
-  "ZOOM_TOOL_TOOLTIP": "Amplía la vista ({0}). Haz clic para acercar, mantén pulsado alt y haz clic para alejar.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Haz clic y muévete para ampliar. Haz clic para acercar, mantén pulsada la tecla ctrl y haz clic para alejar.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Haz clic y muévete para ampliar. Haz clic para alejar, suelta ctrl y haz clic para acercar.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Aclara u oscurece los píxeles ({0}). Mantenga pulsada la tecla Ctrl para oscurecer los píxeles.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Dibuja sobre los píxeles para hacerlos más brillantes. Mantenga pulsada la tecla Ctrl para oscurecer.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Dibuja sobre los píxeles para oscurecerlos. Suelte Ctrl para aclarar.",
-  "COLOR_PICKER_TOOLTIP": "Elige el color primario del canvas. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Haz clic para elegir colores. Mantenga pulsada la tecla Ctrl para ocultar el canvas. Mantenga pulsada la tecla Shift para ocultar la referencia.",
-  "ELLIPSE_TOOL_TOOLTIP": "Dibuja una elipse en el canvas ({0}). Mantenga pulsada la tecla Shift para dibujar un círculo.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Haz clic y mueve el ratón para dibujar una elipse. Mantenga pulsada la tecla Shift para dibujar un círculo.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Haz clic y mueve el ratón para dibujar un círculo.",
-  "ERASER_TOOL_TOOLTIP": "Color del borrador del píxel. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Pulse y mueva para borrar.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Rellena el área con color. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Pulse sobre un área para rellenarla. Mantenga pulsada la tecla Ctrl para considerar todas las capas.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Pulse sobre un área para rellenarla. Suelte Ctrl para considerar sólo las capas actuales.",
-  "LASSO_TOOL_TOOLTIP": "Lazo. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Haga clic y mueva para seleccionar píxeles dentro del lazo. Mantenga pulsada la tecla Shift para añadir a la selección existente. Mantenga pulsada la tecla Ctrl para restar de ella.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Haga clic y mueva para añadir píxeles dentro del lazo a la selección.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Haga clic y mueva para restar píxeles dentro del lazo de la selección.",
-  "LINE_TOOL_TOOLTIP": "Dibuja una línea en el lienzo ({0}). Mantenga pulsada la tecla Shift para activar el ajuste.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Haga clic y mueva para dibujar una línea. Mantenga pulsada la tecla Shift para activar el ajuste.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Haga clic y mueva el ratón para dibujar una línea con el ajuste activado.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Varita Mágica ({0}). Inundar es la selección",
-  "MAGIC_WAND_ACTION_DISPLAY": "Haga clic para inundar la selección.",
-  "PEN_TOOL": "Lapiz",
-  "BRIGHTNESS_TOOL": "Oscuridad",
-  "COLOR_PICKER_TOOL": "Selector de color",
-  "ELLIPSE_TOOL": "Elipse",
-  "ERASER_TOOL": "Borrador",
-  "FLOOD_FILL_TOOL": "Relleno de inundación",
-  "LASSO_TOOL": "Lazo",
-  "LINE_TOOL": "Linea",
-  "MAGIC_WAND_TOOL": "Varita mágica",
-  "MOVE_TOOL": "Mover",
-  "MOVE_VIEWPORT_TOOL": "Mover la ventana gráfica",
-  "RECTANGLE_TOOL": "Rectangulo",
-  "ROTATE_VIEWPORT_TOOL": "Rotar la ventana gráfica",
-  "SELECT_TOOL_NAME": "Seleccionar",
-  "ZOOM_TOOL": "Zoom",
-  "SHAPE_LABEL": "Forma",
-  "MODE_LABEL": "Forma",
-  "SCOPE_LABEL": "Alcance",
-  "FILL_SHAPE_LABEL": "Forma de relleno",
-  "FILL_COLOR_LABEL": "Forma de color",
-  "TOOL_SIZE_LABEL": "Herramienta de tamaño",
-  "STRENGTH_LABEL": "Fuerza",
-  "NEW": "Nuevo",
-  "ADD": "Agregar",
-  "SUBTRACT": "Resta",
-  "INTERSECT": "Intersect",
-  "RECTANGLE": "Rectangulo",
-  "CIRCLE": "Circulo",
-  "ABOUT": "Sobre",
-  "MINIMIZE": "Minimizar",
-  "RESTORE": "Restaurar",
-  "MAXIMIZE": "Maximizar",
-  "CLOSE": "Cerrar",
-  "EXPORT_SIZE_HINT": "Si quieres compartir la imagen, prueba {0}% para obtener la mejor claridad",
-  "CREATE": "Crear",
-  "BASE_LAYER_NAME": "Capa base",
-  "ENABLE_MASK": "Activar máscara",
-  "SELECTED_AREA_EMPTY": "El área seleccionada está vacía",
-  "NOTHING_TO_COPY": "Nada para copiar",
-  "REFERENCE_LAYER_PATH": "Trayectoria de la capa de referencia",
-  "FLIP": "Voltear",
-  "ROTATION": "Rotacion",
-  "ROT_IMG_90_D": "Girar la imagen 90",
-  "ROT_IMG_180_D": "Girar la imagen 180",
-  "ROT_IMG_-90_D": "Girar la imagen -90",
-  "ROT_LAYERS_90_D": "Girar la imagen seleccionada 90",
-  "ROT_LAYERS_180_D": "Girar la imagen seleccionada 180",
-  "ROT_LAYERS_-90_D": "Girar la imagen seleccionada -90",
-  "UNNAMED_PALETTE": "Paleta sin nombre",
-  "CLICK_SELECT_PRIMARY": "Haga clic para seleccionar como color principal.",
-  "PEN_MODE": "Modo lapiz",
-  "VIEW": "Mirar",
-  "HORIZONTAL_LINE_SYMMETRY": "Simetría de línea horizontal",
-  "VERTICAL_LINE_SYMMETRY": "Simetría de línea vertical",
-  "COLOR_PICKER_TITLE": "Selector de color",
-  "COLOR_SLIDERS_TITLE": "Deslizadores de color",
-  "PALETTE_TITLE": "Paleta",
-  "SWATCHES_TITLE": "Muestras",
-  "LAYERS_TITLE": "Capas",
-  "NAVIGATION_TITLE": "Navegación",
-  "NORMAL_BLEND_MODE": "Normal",
-  "DARKEN_BLEND_MODE": "Oscurecer",
-  "MULTIPLY_BLEND_MODE": "Multpilicar",
-  "COLOR_BURN_BLEND_MODE": "Quemadura de color",
-  "LIGHTEN_BLEND_MODE": "Aclarar",
-  "SCREEN_BLEND_MODE": "Pantalla",
-  "COLOR_DODGE_BLEND_MODE": "Esquivar el color",
-  "OVERLAY_BLEND_MODE": "Superposición",
-  "SOFT_LIGHT_BLEND_MODE": "Luz suave",
-  "HARD_LIGHT_BLEND_MODE": "Luz dura",
-  "DIFFERENCE_BLEND_MODE": "Diferencia",
-  "EXCLUSION_BLEND_MODE": "Exclusion",
-  "HUE_BLEND_MODE": "Tono",
-  "SATURATION_BLEND_MODE": "Saturacion",
-  "LUMINOSITY_BLEND_MODE": "Luminosidad",
-  "COLOR_BLEND_MODE": "Color",
-  "NOT_SUPPORTED_BLEND_MODE": "No compatible",
-  "RESTART": "Reiniciar",
-  "SORT_BY": "Ordenar por",
-  "NAME": "Nombre",
-  "COLORS": "Colores",
-  "DEFAULT": "Defecto",
-  "ALPHABETICAL": "Alfabético",
-  "COLOR_COUNT": "Recuento de colores",
-  "ANY": "Cualquier",
-  "MAX": "Max",
-  "MIN": "Min",
-  "EXACT": "Exacto",
-  "ASCENDING": "Ascendente",
-  "DESCENDING": "Descendente",
-  "NAME_IS_TOO_LONG": "El nombre es demasiado largo",
-  "STOP_IT_TEXT1": "Es suficiente. Ordena los nombres de tus archivos.",
-  "STOP_IT_TEXT2": "¿Puedes dejar de copiar estos nombres, por favor?",
-  "REPLACER_TOOLTIP": "Haga clic con el botón derecho en el color de la paleta y elija 'Reemplazar' o suéltelo aquí.",
-  "CLICK_TO_CHOOSE_COLOR": "Haga clic para elegir el color",
-  "REPLACE_COLOR": "Sustituir color",
-  "PALETTE_COLOR_TOOLTIP": "Haga clic para seleccionarlo como color principal. Arrastre y suelte sobre otro color de la paleta para intercambiarlos.",
-  "ADD_FROM_SWATCHES": "Agregar a partir de muestras",
-  "ADD_COLOR_TO_PALETTE": "Agregar color a la paleta",
-  "USE_IN_CURRENT_IMAGE": "Uso en la imagen actual",
-  "ADD_TO_FAVORITES": "Agregar a favoritos",
-  "BROWSE_PALETTES": "Explorar paletas",
-  "LOAD_PALETTE": "Cargar paleta",
-  "SAVE_PALETTE": "Guardar paleta",
-  "FAVORITES": "Favoritos",
-  "ADD_FROM_CURRENT_PALETTE": "Añadir desde la paleta actual",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Abrir el directorio de paletas en el explorador",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Buscar paletas en Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Importar desde archivo",
-  "TOP_LEFT": "Arriba a la izquierda",
-  "TOP_CENTER": "Centro superior",
-  "TOP_RIGHT": "Arriba a la derecha",
-  "MIDDLE_LEFT": "Centro izquierda",
-  "MIDDLE_CENTER": "Centro",
-  "MIDDLE_RIGHT": "Centro derecha",
-  "BOTTOM_LEFT": "Abajo a la izquierda",
-  "BOTTOM_CENTER": "Abajo al centro",
-  "BOTTOM_RIGHT": "Abajo a la derecha",
-  "CLIP_TO_BELOW": "Recorte a la capa inferior",
-  "MOVE_UPWARDS": "Moverse hacia arriba",
-  "MOVE_DOWNWARDS": "Desplazarse hacia abajo",
-  "MERGE_SELECTED": "Fusión seleccionada",
-  "LOCK_TRANSPARENCY": "Bloquear la transparencia",
-  "COULD_NOT_LOAD_PALETTE": "No se pueden obtener paletas",
-  "NO_PALETTES_FOUND": "No se han encontrado paletas.",
-  "LOSPEC_LINK_TEXT": "He oído que puedes encontrar algunos aquí: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Navegador de paletas",
-  "DELETE_PALETTE_CONFIRMATION": "¿Está seguro de que desea eliminar esta paleta? Esto no se puede deshacer.",
-  "SHORTCUTS_IMPORTED": "Los accesos directos de {0} se han importado correctamente.",
-  "SHORTCUT_PROVIDER_DETECTED": "Hemos detectado que tiene {0} instalado. ¿Desea importar accesos directos desde él?",
-  "IMPORT_FROM_INSTALLATION": "Importar desde la instalación",
-  "IMPORT_INSTALLATION_OPTION1": "Importar desde la instalación",
-  "IMPORT_INSTALLATION_OPTION2": "Utilizar valores por defecto",
-  "IMPORT_FROM_TEMPLATE": "Importar desde plantilla",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Los accesos directos se han importado correctamente.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "¿Estás seguro de que quieres restablecer todos los accesos directos a su valor por defecto?",
-  "SUCCESS": "Éxito",
-  "WARNING": "Aviso",
-  "ERROR_IMPORTING_IMAGE": "Se ha producido un error al importar la imagen.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Archivo de accesos directos dañado",
-  "SHORTCUTS_CORRUPTED": "El archivo de accesos directos estaba dañado, restableciendo el valor por defecto.",
-  "FAILED_DOWNLOAD_PALETTE": "No se ha podido descargar la paleta",
-  "FILE_INCORRECT_FORMAT": "El archivo no tenía el formato correcto",
-  "INVALID_FILE": "Archivo no válido",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "El archivo de accesos directos no tenía el formato correcto",
-  "UNSUPPORTED_FILE_FORMAT": "Este formato de archivo no es compatible",
-  "ALREADY_ASSIGNED": "Ya asignado",
-  "REPLACE": "Sustituir",
-  "SWAP": "Intercambiar",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Este acceso directo ya está asignado a '{0}'.\n¿Quieres reemplazar el acceso directo existente o intercambiar los dos?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Este acceso directo ya está asignado a '{0}'.\n¿Desea sustituir el acceso directo existente?",
-  "UNSAVED_CHANGES": "Cambios no guardados",
-  "DOCUMENT_MODIFIED_SAVE": "El documento ha sido modificado. ¿Desea guardar los cambios?",
-  "SESSION_UNSAVED_DATA": "{0} con datos sin guardar. ¿Está seguro?",
-  "PROJECT_MAINTAINERS": "Mantenedores de proyectos",
-  "OTHER_AWESOME_CONTRIBUTORS": "Y otros increíbles colaboradores",
-  "HELP": "Ayuda",
-  "STOP_IT_TEXT3": "No, en serio, basta.",
-  "STOP_IT_TEXT4": "¿No tienes nada mejor que hacer?",
-  "LINEAR_DODGE_BLEND_MODE": "Esquiva lineal (Añadir)",
-  "PRESS_ANY_KEY": "Pulsar cualquier tecla",
-  "NONE_SHORTCUT": "Ninguno",
-  "REFERENCE": "Referencia",
-  "PUT_REFERENCE_LAYER_ABOVE": "Poner capa de referencia encima",
-  "PUT_REFERENCE_LAYER_BELOW": "Poner capa de referencia debajo",
-  "TOGGLE_VERTICAL_SYMMETRY": "Alternar simetría vertical",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Alternar simetría horizontal",
-  "RESET_VIEWPORT": "Restablecer vista",
-  "VIEWPORT_SETTINGS": "Viewport settings",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Mantenga pulsado el ratón para mover los píxeles de las capas seleccionadas.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Mantenga pulsado el ratón para mover todas las capas.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Renombrar",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Abrir la ventana de depuración de localización",
-  "FORCE_OTHER_FLOW_DIRECTION": "Forzar otra dirección de flujo",
-  "API_KEY": "Clave API",
-  "LOCALIZATION_VIEW_TYPE": "Localización tipo de vista",
-  "LOAD_LANGUAGE_FROM_FILE": "Cargar idioma desde archivo",
-  "LOG_IN": "Iniciar sesion",
-  "SYNC": "Sincronización",
-  "NOT_LOGGED_IN": "No ha iniciado sesión",
-  "POE_EDITOR_ERROR": "POEditor Error: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP Error: {0} {1}",
-  "LOGGED_IN": "Iniciado sesion",
-  "SYNCED_SUCCESSFULLY": "Sincronizado correctamente",
-  "EXCEPTION_ERROR": "Exception: {0}",
-  "DROP_PALETTE": "Suelte la paleta aquí",
-  "SECURITY_ERROR": "Error de seguridad",
-  "SECURITY_ERROR_MSG": "No hay derechos para escribir en la ubicación especificada.",
-  "IO_ERROR": "IO error",
-  "IO_ERROR_MSG": "Error al escribir en disco.",
-  "FAILED_ASSOCIATE_PIXI": "Error al asociar el archivo .pixi con PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Se ha producido un error al guardar la paleta.",
-  "NO_COLORS_TO_SAVE": "No hay colores que guardar.",
-  "ALL_LAYERS": "Todas las capas",
-  "SINGLE_LAYER": "Unica capa",
-  "CHOOSE": "Elija",
-  "REMOVE": "Eliminar",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "El archivo no es un archivo \".aseprite-keys",
-  "FILE_HAS_INVALID_SHORTCUT": "El archivo contiene un acceso directo no válido",
-  "FILE_EXTENSION_NOT_SUPPORTED": "No se admite el tipo de archivo '{0}",
-  "ERROR_READING_FILE": "Error al leer el archivo",
-  "DISCARD_PALETTE": "Descartar paleta",
-  "DISCARD_PALETTE_CONFIRMATION": "¿Está seguro de que desea descartar la paleta actual? Esto no se puede deshacer.",
-  "IMPORT_AS_NEW_LAYER": "Importar como nueva capa",
-  "PASTE_AS_PRIMARY_COLOR": "Pegar como color primario",
-  "IMPORT_AS_NEW_FILE": "Importar como archivo nuevo",
-  "IMPORT_PALETTE_FILE": "Importar archivo de paleta",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Importar colores a la paleta",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Importar color a la paleta",
-  "IMPORT_AS_REFERENCE_LAYER": "Importar como capa de referencia",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Haga clic con el botón derecho del ratón para seleccionar el color y pulse Mayús y haga clic con el botón derecho para copiar el color en el portapapeles",
-  "OPEN_FILE_FROM_CLIPBOARD": "Abrir desde el portapapeles",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Abrir desde el portapapeles",
-  "OPEN_LOCALIZATION_DATA": "¿Quiere abrir el archivo LocalizationData.json? La fecha actualizada se ha puesto en el portapapeles.\nTenga en cuenta que los cambios no se aplicarán hasta que se reinicie el sistema",
-  "DOWNLOADING_LANGUAGE_FAILED": "Error al descargar el idioma.\nEs posible que la clave API se haya utilizado en exceso.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Ruta de datos de localización no encontrada",
-  "APPLY": "Aplicar",
-  "UPDATE_SOURCE": "Actualizar source",
-  "COPY_TO_CLIPBOARD": "Copiar al portapapeles",
-  "LANGUAGE_FILE_NOT_FOUND": "Archivo de idioma no encontrado.\nBuscando {0}",
-  "PROJECT_ROOT_NOT_FOUND": "No se ha encontrado la raíz del proyecto PixiEditor.\nBuscando PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "No se ha encontrado la carpeta de localización.\nBuscando /Data/Localization",
-  "SELECT_A_LANGUAGE": "Seleccione un idioma",
-  "DONE": "Hecho",
-  "SOURCE_UNSET_OR_MISSING": "Fuente ausente/desactivada",
-  "SOURCE_NEWER": "Fuente más reciente",
-  "SOURCE_UP_TO_DATE": "La fuente está actualizada",
-  "SOURCE_OLDER": "Nube más reciente",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/hu.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Legutóbbi",
-  "OPEN_FILE": "Megnyitás",
-  "NEW_FILE": "Új",
-  "RECENT_EMPTY_TEXT": "Halló? Van itt valaki?",
-  "LANGUAGE": "Nyelv",
-  "GENERAL": "Általános",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Billentyűparancsok",
-  "MISC": "Egyéb",
-  "SHOW_STARTUP_WINDOW": "Indítási ablak megjelenítése",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Képek előnézetének megjelenítése a feladatlistában",
-  "RECENT_FILE_LENGTH": "Legutóbbi fájlok listájának hossza",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Ezzel beállíthatod, hogy hány dokumentum jelenjen meg a Fájl > Legutóbbi menüpont alatt. Alapértelmezett: 8",
-  "DEFAULT_NEW_SIZE": "Az új fájlok alapértelmezett méretei",
-  "WIDTH": "Szélesség",
-  "HEIGHT": "Magasság",
-  "TOOLS": "Eszközök",
-  "ENABLE_SHARED_TOOLBAR": "Megosztott eszköztár engedélyezése",
-  "AUTOMATIC_UPDATES": "Automatikus frissítések",
-  "CHECK_FOR_UPDATES": "Frissítések keresése indításkor",
-  "UPDATE_STREAM": "Frissítési csatorna",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "A frissítési csatornákat csak a telepített, önálló változatban (letölthető a https://pixieditor.net oldalról) lehet módosítani.\nA Steam és Microsoft Store verziók külön kezelik a frissítéseket.",
-  "DEBUG": "Debugolás",
-  "ENABLE_DEBUG_MODE": "Debug mód bekapcsolása",
-  "OPEN_CRASH_REPORTS_DIR": "Összeomlási jelentések könyvtárának megnyitása",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Engedélyezve",
-  "SHOW_IMAGE_NAME": "Szerkesztett kép nevének megjelenítése",
-  "SHOW_IMAGE_SIZE": "Szerkesztett kép méretének megjelenítése",
-  "SHOW_LAYER_COUNT": "Szerkesztett kép rétegszámának megjelenítése",
-  "FILE": "Fájl",
-  "RECENT": "Legutóbbi",
-  "OPEN": "Megnyitás",
-  "SAVE_PIXI": "Mentés (.pixi)",
-  "SAVE_AS_PIXI": "Mentés másként... (.pixi)",
-  "EXPORT_IMG": "Exportálás (.png, .jpg, stb.)",
-  "EDIT": "Szerkesztés",
-  "EXIT": "Kilépés",
-  "PERCENTAGE": "Átméretezés százalék alapján",
-  "ABSOLUTE": "Abszolút átméretezés",
-  "PRESERVE_ASPECT_RATIO": "Oldalarány megőrzése",
-  "ANCHOR_POINT": "Horgonyzópont",
-  "RESIZE_IMAGE": "Kép átméretezése",
-  "RESIZE": "Átméretezés",
-  "DOCUMENTATION": "Dokumentáció",
-  "WEBSITE": "Weboldal",
-  "OPEN_WEBSITE": "Weboldal megnyitása",
-  "REPOSITORY": "Repository",
-  "OPEN_REPOSITORY": "Repository megnyitása",
-  "LICENSE": "Licensz",
-  "OPEN_LICENSE": "Licensz megnyitása",
-  "THIRD_PARTY_LICENSES": "Harmadik féltől származó licenszek",
-  "OPEN_THIRD_PARTY_LICENSES": "Harmadik féltől származó licenszek megnyitása",
-  "APPLY_TRANSFORM": "Átalakítás alkalmazása",
-  "INCREASE_TOOL_SIZE": "Eszközméret növelése",
-  "DECREASE_TOOL_SIZE": "Eszközméret csökkentése",
-  "TO_INSTALL_UPDATE": "a {0} frissítés telepítéséhez",
-  "DOWNLOADING_UPDATE": "Frissítés letöltése folyamatban...",
-  "UPDATE_READY": "A frissítés telepítésre kész. Szeretnéd most telepíteni?",
-  "NEW_UPDATE": "Új frissítés",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Az adminisztrátori jogosultságok nélkül nem lehet frissíteni. Kérlek, futtassd a PixiEditort rendszergazdaként.",
-  "INSUFFICIENT_PERMISSIONS": "Elégtelen jogosultságok",
-  "UPDATE_CHECK_FAILED": "Frissítés ellenőrzése sikertelen volt",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Nem sikerült ellenőrizni, hogy elérhető-e frissítés.",
-  "VERSION": "{0} verzió",
-  "OPEN_TEMP_DIR": "Temp mappa megnyitása",
-  "OPEN_LOCAL_APPDATA_DIR": "Local AppData mappa megnyitása",
-  "OPEN_ROAMING_APPDATA_DIR": "Roaming AppData mappa megnyitása",
-  "OPEN_INSTALLATION_DIR": "Telepítési mappa megnyitása",
-  "DUMP_ALL_COMMANDS": "Összes parancs dumpolása",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Összes parancs dumpolása (textfájlba)",
-  "CRASH": "Összeomlás",
-  "CRASH_APP": "Az alkalmazás összeomlasztása",
-  "DELETE_USR_PREFS": "Felhasználói beállítások törlése (Roaming AppData-ban)",
-  "DELETE_SHORTCUT_FILE": "Parancsikon fájl törlése (Roaming AppData-ban)",
-  "DELETE_EDITOR_DATA": "Editor adatok törlése (Local AppData-ban)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Billentyűkiosztás sablon generálása",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Billentyűkiosztás JSON sablon generálása",
-  "VALIDATE_SHORTCUT_MAP": "Parancsikontérkép ellenőrzése",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Ellenőrzi a parancsikontérképet",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Üres billentyűk: {0}\nIsmeretlen parancsok: {1}",
-  "RESULT": "Eredmény",
-  "CLEAR_RECENT_DOCUMENTS": "Legutóbbi dokumentumok törlése",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Törli a legutóbbi dokumentumokat",
-  "OPEN_CMD_DEBUG_WINDOW": "Debug ablak megnyitása",
-  "PATH_DOES_NOT_EXIST": "{0} nem létezik",
-  "LOCATION_DOES_NOT_EXIST": "A hely nem létezik.",
-  "FILE_NOT_FOUND": "Fájl nem található.",
-  "ARE_YOU_SURE": "Biztos vagy ebben?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Biztos, hogy törölni szeretnéd a(z) {0} fájlt?\nEz az adat véglegesen elveszik az összes telepítésről.\n(Teljes path: {1})",
-  "FAILED_TO_OPEN_FILE": "A fájl megnyitása sikertelen volt.",
-  "OLD_FILE_FORMAT": "Elavult fájlformátum",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Ez a .pixi fájl a régi, már elavult fájlformátumot használja, \nami már nem támogatott és nem megnyitható.",
-  "NOTHING_FOUND": "Nem találtunk semmit",
-  "EXPORT": "Exportálás",
-  "EXPORT_IMAGE": "Kép exportálása",
-  "IMPORT": "Importálás",
-  "SHORTCUT_TEMPLATES": "Shortcut sablonok",
-  "RESET_ALL": "Minden visszaállítása",
-  "LAYER": "Réteg",
-  "LAYER_DELETE_SELECTED": "Aktív réteg/mappa törlése",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Aktív réteg vagy mappa törlése",
-  "LAYER_DELETE_ALL_SELECTED": "Az összes kijelölt réteg/mappa törlése",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Az összes kijelölt réteg és/vagy mappa törlése",
-  "DELETE_SELECTED_PIXELS": "Kijelölt pixelek törlése",
-  "NEW_FOLDER": "Új mappa",
-  "CREATE_NEW_FOLDER": "Új mappa létrehozása",
-  "NEW_LAYER": "Új réteg",
-  "CREATE_NEW_LAYER": "Új réteg létrehozása",
-  "NEW_IMAGE": "Új kép",
-  "CREATE_NEW_IMAGE": "Új kép létrehozása",
-  "SAVE": "Mentés",
-  "SAVE_AS": "Mentés másként...",
-  "IMAGE": "Kép",
-  "SAVE_IMAGE": "Kép mentése",
-  "SAVE_IMAGE_AS": "Kép mentése másként",
-  "DUPLICATE": "Duplikálás",
-  "DUPLICATE_SELECTED_LAYER": "Kijelölt réteg duplikálása",
-  "CREATE_MASK": "Maszk létrehozása",
-  "DELETE_MASK": "Maszk törlése",
-  "TOGGLE_MASK": "Maszk váltása",
-  "APPLY_MASK": "Maszk alkalmazása",
-  "TOGGLE_VISIBILITY": "Láthatóság átkapcsolása",
-  "MOVE_MEMBER_UP": "Réteg felfelé mozgatása",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "A kijelölt réteg vagy mappa felfelé mozgatása",
-  "MOVE_MEMBER_DOWN": "Réteg lefelé mozgatása",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "A kijelölt réteg vagy mappa lefelé mozgatása",
-  "MERGE_ALL_SELECTED_LAYERS": "Az összes kijelölt réteg egyesítése",
-  "MERGE_WITH_ABOVE": "A kiválasztott réteg egyesítése a feljebbi réteggel",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "A kiválasztott réteg egyesítése a felette lévővel",
-  "MERGE_WITH_BELOW": "A kiválasztott réteg egyesítése az alábbi réteggel",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "A kijelölt réteg egyesítése az alatta lévővel",
-  "ADD_REFERENCE_LAYER": "Referenciaréteg hozzáadása",
-  "DELETE_REFERENCE_LAYER": "Referenciaréteg törlése",
-  "TRANSFORM_REFERENCE_LAYER": "Referenciaréteg átalakítása",
-  "TOGGLE_REFERENCE_LAYER_POS": "Referenciaréteg pozíciójának váltása",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Referenciaréteg váltása a legfelső vagy a legalsó pozíció között",
-  "RESET_REFERENCE_LAYER_POS": "Referenciaréteg pozíciójának visszaállítása",
-  "CLIP_CANVAS": "Clip vászon",
-  "FLIP_IMG_VERTICALLY": "Kép függőlegesen történő átfordítása",
-  "FLIP_IMG_HORIZONTALLY": "Kép vízszintes átfordítása",
-  "FLIP_LAYERS_VERTICALLY": "Kijelölt rétegek függőlegesen történő átfordítása",
-  "FLIP_LAYERS_HORIZONTALLY": "Kijelölt rétegek vízszintes átfordítása",
-  "ROT_IMG_90": "Kép elforgatása 90 fokkal",
-  "ROT_IMG_180": "Kép elforgatása 180 fokban",
-  "ROT_IMG_-90": "Kép elforgatása -90 fokban",
-  "ROT_LAYERS_90": "Kijelölt rétegek elforgatása 90 fokkal",
-  "ROT_LAYERS_180": "Kijelölt rétegek elforgatása 180 fokban",
-  "ROT_LAYERS_-90": "Kijelölt rétegek elforgatása -90 fokban",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Függőleges szimmetriatengely átkapcsolása",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Vízszintes szimmetriatengely átkapcsolása",
-  "DELETE_PIXELS": "Pixelek törlése",
-  "DELETE_PIXELS_DESCRIPTIVE": "Kijelölt pixelek törlése",
-  "RESIZE_DOCUMENT": "A dokumentum átméretezése",
-  "RESIZE_CANVAS": "Vászon átméretezése",
-  "CENTER_CONTENT": "Tartalom középre állítása",
-  "CUT": "Kivágás",
-  "CUT_DESCRIPTIVE": "Kiválasztott terület/rétegek kivágása",
-  "PASTE": "Beillesztés",
-  "PASTE_DESCRIPTIVE": "A vágólap tartalmának beillesztése",
-  "PASTE_AS_NEW_LAYER": "Beillesztés új rétegként",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Beillesztés a vágólapról új rétegként",
-  "PASTE_REFERENCE_LAYER": "Referenciaréteg beillesztése",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "A vágólap tartalmának beillesztése referenciarétegként",
-  "PASTE_COLOR": "Szín beillesztése",
-  "PASTE_COLOR_DESCRIPTIVE": "Szín beillesztése a vágólapról",
-  "PASTE_COLOR_SECONDARY": "Szín beillesztése másodlagosként",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Szín beillesztése a vágólapról másodlagos színként",
-  "CLIPBOARD": "Vágólap",
-  "COPY": "Másolás",
-  "COPY_DESCRIPTIVE": "Másolás a vágólapra",
-  "COPY_COLOR_HEX": "Elsődleges szín másolása (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Elsődleges szín másolása HEX-kódként",
-  "COPY_COLOR_RGB": "Elsődleges szín másolása (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Elsődleges szín másolása RGB kódként",
-  "COPY_COLOR_SECONDARY_HEX": "Másodlagos szín másolása (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Másodlagos szín másolása HEX kódként",
-  "COPY_COLOR_SECONDARY_RGB": "Másodlagos szín másolása (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Másodlagos szín másolása RGB kódként",
-  "PALETTE_COLORS": "Paletta színei",
-  "REPLACE_SECONDARY_BY_PRIMARY": "A másodlagos szín elsődleges színnel cserélése",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "A másodlagos színt az elsődleges színre cseréli",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Az elsődleges szín másodlagos színnel cserélése",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Az elsődleges színt a másodlagos színre cseréli",
-  "OPEN_PALETTE_BROWSER": "Paletta böngésző megnyitása",
-  "OVERWRITE_PALETTE_CONSENT": "A '{0}' paletta már létezik, felül akarja írni?",
-  "PALETTE_EXISTS": "Paletta már létezik",
-  "REPLACE_PALETTE_CONSENT": "Szeretnéd az aktuális palettát kicserélni a kiválasztott palettára?",
-  "REPLACE_PALETTE": "Jelenlegi paletta cseréje",
-  "SELECT_COLOR_1": "Szín 1 kiválasztása",
-  "SELECT_COLOR_2": "Szín 2 kiválasztása",
-  "SELECT_COLOR_3": "Szín 3 kiválasztása",
-  "SELECT_COLOR_4": "Szín 4 kiválasztása",
-  "SELECT_COLOR_5": "Szín 5 kiválasztása",
-  "SELECT_COLOR_6": "Szín 6 kiválasztása",
-  "SELECT_COLOR_7": "Szín 7 kiválasztása",
-  "SELECT_COLOR_8": "Szín 8 kiválasztása",
-  "SELECT_COLOR_9": "Szín 9 kiválasztása",
-  "SELECT_COLOR_10": "Szín 10 kiválasztása",
-  "SELECT_TOOL": "A {0} eszköz kiválasztása",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Kiválasztja az első színt a palettán",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Kiválasztja a második színt a palettán",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Kiválasztja a harmadik színt a palettán",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Kiválasztja a negyedik színt a palettán",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Kiválasztja az ötödik színt a palettán",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Kiválasztja a hatodik színt a palettán",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Kiválasztja a hetedik színt a palettán",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Kiválasztja a nyolcadik színt a palettán",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Kiválasztja a kilencedik színt a palettán",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Kiválasztja a tizedik színt a palettán",
-  "SWAP_COLORS": "Színek cseréje",
-  "SWAP_COLORS_DESCRIPTIVE": "Elsődleges és másodlagos színek cseréje",
-  "SEARCH": "Keresés",
-  "COMMAND_SEARCH": "Parancskeresés",
-  "OPEN_COMMAND_SEARCH": "Parancskereső ablak megnyitása",
-  "SELECT": "Kijelöl",
-  "DESELECT": "Kijelölés megszüntetése",
-  "INVERT": "Invertálás",
-  "SELECTION": "Kijelölés",
-  "SELECT_ALL": "Összes kijelölése",
-  "SELECT_ALL_DESCRIPTIVE": "Mindent kijelöl",
-  "CLEAR_SELECTION": "Kijelölés törlése",
-  "INVERT_SELECTION": "Kijelölés inverzálása",
-  "INVERT_SELECTION_DESCRIPTIVE": "Kijelölés inverzének készítése",
-  "TRANSFORM_SELECTED_AREA": "Kijelölt terület átalakítása",
-  "NUDGE_SELECTED_LEFT": "Kijelölt objektum elmozdítása balra",
-  "NUDGE_SELECTED_RIGHT": "Kijelölt objektum elmozdítása jobbra",
-  "NUDGE_SELECTED_UP": "Kijelölt objektum elmozdítása felfelé",
-  "NUDGE_SELECTED_DOWN": "Kijelölt objektum elmozdítása lefelé",
-  "MASK_FROM_SELECTION": "Új maszk a kijelölésből",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Kijelölés új maszkká konvertálása",
-  "ADD_SELECTION_TO_MASK": "Kijelölés hozzáadása a maszkhoz",
-  "SUBTRACT_SELECTION_FROM_MASK": "Kijelölés kivonása a maszkból",
-  "INTERSECT_SELECTION_MASK": "Kijelölés metszése a maszkkal",
-  "SELECTION_TO_MASK": "Kijelölés maszkká konvertálása",
-  "TO_NEW_MASK": "új maszkba",
-  "ADD_TO_MASK": "hozzáadás a maszkhoz",
-  "SUBTRACT_FROM_MASK": "kivonás a maszkból",
-  "INTERSECT_WITH_MASK": "metszet a maszkkal",
-  "STYLUS": "Stylus",
-  "TOGGLE_PEN_MODE": "Toll üzemmód váltása",
-  "UNDO": "Visszavonás",
-  "UNDO_DESCRIPTIVE": "Utolsó művelet visszavonása",
-  "REDO": "Újra",
-  "REDO_DESCRIPTIVE": "Utolsó művelet megismétlése",
-  "WINDOWS": "Ablakok",
-  "TOGGLE_GRIDLINES": "Rácsvonalak kapcsolása",
-  "ZOOM_IN": "Nagyítás",
-  "ZOOM_OUT": "Kicsinyítés",
-  "NEW_WINDOW_FOR_IMG": "Új ablak az aktuális képhez",
-  "CENTER_ACTIVE_VIEWPORT": "Aktív nézetablak központosítása",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Nézetablak vízszintesen átfordítása",
-  "FLIP_VIEWPORT_VERTICALLY": "Nézetablak függőlegesen történő átfordítása",
-  "SETTINGS": "Beállítások",
-  "OPEN_SETTINGS": "Beállítások megnyitása",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Beállítások ablak megnyitása",
-  "OPEN_STARTUP_WINDOW": "Indítási ablak megnyitása",
-  "OPEN_SHORTCUT_WINDOW": "Shortcuts ablak megnyitása",
-  "OPEN_ABOUT_WINDOW": "Névjegy ablak megnyitása",
-  "OPEN_NAVIGATION_WINDOW": "Navigációs ablak megnyitása",
-  "ERROR": "Hiba",
-  "INTERNAL_ERROR": "Belső hiba",
-  "ERROR_SAVE_LOCATION": "Nem sikerült a fájlt a megadott helyre menteni",
-  "ERROR_WHILE_SAVING": "Belső hiba történt a mentés közben. Kérlek próbáld meg újra.",
-  "UNKNOWN_ERROR_SAVING": "Hiba történt mentés közben.",
-  "FAILED_ASSOCIATE_LOSPEC": "Nem sikerült társítani a Lospec Palette protokollt.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Adományozás",
-  "YES": "Igen",
-  "NO": "Nem",
-  "CANCEL": "Mégse",
-  "UNNAMED": "Névtelen",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Debug parancsablak megnyitása",
-  "DELETE": "Törlés",
-  "USER_PREFS": "Felhasználói beállítások (Roaming)",
-  "SHORTCUT_FILE": "Shortcut fájl (Roaming)",
-  "EDITOR_DATA": "Szerkesztői adatok (Helyi)",
-  "MOVE_VIEWPORT_TOOLTIP": "Nézetpont mozgatása. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Kattints és húzz a nézetablak pásztázásához",
-  "MOVE_TOOL_TOOLTIP": "Kiválasztott pixelek mozgatása ({0}). Tartsd lenyomva a Ctrl-t az összes réteg mozgatásához.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Tartsd lenyomva az egeret a kijelölt pixelek mozgatásához. Tartsd lenyomva a Ctrl billentyűt az összes réteg mozgatásához.",
-  "PEN_TOOL_TOOLTIP": "Toll. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Kattints és húzd a rajzoláshoz.",
-  "PIXEL_PERFECT_SETTING": "Pixel pontos",
-  "RECTANGLE_TOOL_TOOLTIP": "Téglalap rajzolása a vásznon ({0}). Tartsd lenyomva a Shift-et egy négyzet rajzolásához.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Kattints és húzd a téglalap rajzolásához. Tartsd lenyomva a Shift-et egy négyzet rajzolásához.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Kattints és húzd az egyenlő oldalú négyzet rajzolásához.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Eredeti kép megtartása",
-  "ROTATE_VIEWPORT_TOOLTIP": "Nézetpont forgatása. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Kattints és húzd a nézetpont forgatásához.",
-  "SELECT_TOOL_TOOLTIP": "Terület kijelölése. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Kattints és húzd az egy terület kijelöléséhez. Tartsd lenyomva a Shift-et a meglévő kijelöléshez adáshoz. Tartsd lenyomva a Ctrl-t az eltávolításhoz.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Kattints és húzd a jelenlegi kijelölés kiegészítéséhez.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Kattints és húzd a jelenlegi kijelölés eltávolításához.",
-  "ZOOM_TOOL_TOOLTIP": "Nagyítás ({0}). Kattints a nagyításhoz, tartsd lenyomva az Alt-ot és kattints a kicsinyítéshez.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Kattints és húzd a nagyításhoz. Kattints a nagyításhoz, tartsd lenyomva a Ctrl-t és kattints a kicsinyítéshez.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Kattints és húzd a nagyításhoz. Kattints a kicsinyítéshez, engedd fel a Ctrl-t, majd kattints a nagyításhoz.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Pixel világosítása/sötétítése ({0}). Tartsd lenyomva a Ctrl-t a sötétítéshez.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Rajzolj a pixelekre, hogy világosabbá tedd őket. Sötétítéshez tartsd lenyomva a Ctrl billentyűt.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Rajzolj a pixelekre, hogy sötétebbé tegye őket. A Ctrl felengedésével világosabbá teheted őket.",
-  "COLOR_PICKER_TOOLTIP": "Kiválasztja az elsődleges színt a vászonról. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Kattintson a színek kiválasztásához. Tartsa lenyomva a Ctrl billentyűt a vászon elrejtéséhez. Tartsa lenyomva a Shift billentyűt a referenciaréteg elrejtéséhez",
-  "ELLIPSE_TOOL_TOOLTIP": "Ellipszis rajzolása ({0}). Tartsa lenyomva a Shift billentyűt kör rajzolásához.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Kattintson és húzza az egeret az ellipszis rajzolásához. Tartsa lenyomva a Shift billentyűt a kör rajzolásához.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Kattintson és húzza az egeret egy kör rajzolásához.",
-  "ERASER_TOOL_TOOLTIP": "Törli a színt a pixelből. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Kattintson és húzza az egérrel a törléshez.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Színnel tölti ki a területet. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Kattintson a terület kiszínezéséhez. Tartsa lenyomva a Ctrl billentyűt az összes réteg figyelembevételéhez. Engedje fel a Ctrl billentyűt csak az aktuális rétegek figyelembevételéhez.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Kattintson a terület kiszínezéséhez. Engedje fel a Ctrl billentyűt csak az aktuális rétegek figyelembevételéhez.",
-  "LASSO_TOOL_TOOLTIP": "Lasszó. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Kattintson és húzza az egérrel a kívánt pixelek kijelöléséhez. Tartsa lenyomva a Shift billentyűt a meglévő kijelöléshez adáshoz. Tartsa lenyomva a Ctrl billentyűt a kijelölésből való kivonáshoz.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Kattintson és húzza az egéret, hogy a lasszón belüli pixeleket hozzáadja a kijelöléshez.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Kattintson és húzza az egéret, hogy kivonja a kijelölésből a lasszón belüli pixeleket.",
-  "LINE_TOOL_TOOLTIP": "Vonalat rajzol a vászonra ({0}). Tartsa lenyomva a Shift billentyűt a vonal igazításhoz.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Kattintson és húzza az egeret a vonal rajzolásához. Tartsa lenyomva a Shift billentyűt a vonal igazításhoz.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Kattintson és húzza az egeret egy igazított vonal rajzolásához.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Varázspálca ({0}). Kiönti a kijelölést",
-  "MAGIC_WAND_ACTION_DISPLAY": "Kattintson a kijelölés kiöntéséhez.",
-  "PEN_TOOL": "Toll",
-  "BRIGHTNESS_TOOL": "Fényerő",
-  "COLOR_PICKER_TOOL": "Színválasztó",
-  "ELLIPSE_TOOL": "Ellipszis",
-  "ERASER_TOOL": "Radír",
-  "FLOOD_FILL_TOOL": "Kitöltés",
-  "LASSO_TOOL": "Lasszó",
-  "LINE_TOOL": "Vonal",
-  "MAGIC_WAND_TOOL": "Varázspálca",
-  "MOVE_TOOL": "Mozgatás",
-  "MOVE_VIEWPORT_TOOL": "Nézetablak mozgatása",
-  "RECTANGLE_TOOL": "Téglalap",
-  "ROTATE_VIEWPORT_TOOL": "Nézetablak elforgatása",
-  "SELECT_TOOL_NAME": "Kijelölés",
-  "ZOOM_TOOL": "Nagyítás",
-  "SHAPE_LABEL": "Alakzat",
-  "MODE_LABEL": "Mód",
-  "SCOPE_LABEL": "Hatósugár",
-  "FILL_SHAPE_LABEL": "Alakzat kitöltése",
-  "FILL_COLOR_LABEL": "Szín kitöltése",
-  "TOOL_SIZE_LABEL": "Eszközméret",
-  "STRENGTH_LABEL": "Erősség",
-  "NEW": "Új",
-  "ADD": "Hozzáadás",
-  "SUBTRACT": "Kivonás",
-  "INTERSECT": "Metszet",
-  "RECTANGLE": "Téglalap",
-  "CIRCLE": "Kör",
-  "ABOUT": "Névjegy",
-  "MINIMIZE": "Kis méret",
-  "RESTORE": "Visszaállítás",
-  "MAXIMIZE": "Teljes képernyő",
-  "CLOSE": "Bezárás",
-  "EXPORT_SIZE_HINT": "Ha meg szeretné osztani a képet, próbálja ki a {0}%-ot a legjobb tisztaság érdekében",
-  "CREATE": "Létrehozás",
-  "BASE_LAYER_NAME": "Alapréteg",
-  "ENABLE_MASK": "Maszk engedélyezése",
-  "SELECTED_AREA_EMPTY": "A kiválasztott terület üres",
-  "NOTHING_TO_COPY": "Semmi másolnivaló",
-  "REFERENCE_LAYER_PATH": "Referenciaréteg útvonala",
-  "FLIP": "Tükrözés",
-  "ROTATION": "Forgatás",
-  "ROT_IMG_90_D": "Kép elforgatása 90°-kal",
-  "ROT_IMG_180_D": "Kép elforgatása 180°-kal",
-  "ROT_IMG_-90_D": "Kép elforgatása -90°-kal",
-  "ROT_LAYERS_90_D": "Kijelölt rétegek elforgatása 90°-kal",
-  "ROT_LAYERS_180_D": "Kijelölt rétegek elforgatása 180°-kal",
-  "ROT_LAYERS_-90_D": "Kijelölt rétegek elforgatása -90°-kal",
-  "UNNAMED_PALETTE": "Névtelen paletta",
-  "CLICK_SELECT_PRIMARY": "Kattintson a főszín kiválasztásához.",
-  "PEN_MODE": "Toll mód",
-  "VIEW": "Nézet",
-  "HORIZONTAL_LINE_SYMMETRY": "Vízszintes vonalszimmetria",
-  "VERTICAL_LINE_SYMMETRY": "Függőleges vonalszimmetria",
-  "COLOR_PICKER_TITLE": "Színválasztó",
-  "COLOR_SLIDERS_TITLE": "Szín csúszkák",
-  "PALETTE_TITLE": "Paletta",
-  "SWATCHES_TITLE": "Minták",
-  "LAYERS_TITLE": "Rétegek",
-  "NAVIGATION_TITLE": "Navigáció",
-  "NORMAL_BLEND_MODE": "Normál",
-  "DARKEN_BLEND_MODE": "Sötétítés",
-  "MULTIPLY_BLEND_MODE": "Szorzás",
-  "COLOR_BURN_BLEND_MODE": "Színtüzelés",
-  "LIGHTEN_BLEND_MODE": "Világosítás",
-  "SCREEN_BLEND_MODE": "Képernyő",
-  "COLOR_DODGE_BLEND_MODE": "Szín kioltás",
-  "OVERLAY_BLEND_MODE": "Átfedés",
-  "SOFT_LIGHT_BLEND_MODE": "Lágy fény",
-  "HARD_LIGHT_BLEND_MODE": "Kemény fény",
-  "DIFFERENCE_BLEND_MODE": "Különbség",
-  "EXCLUSION_BLEND_MODE": "Kizárás",
-  "HUE_BLEND_MODE": "Színárnyalat",
-  "SATURATION_BLEND_MODE": "Telítettség",
-  "LUMINOSITY_BLEND_MODE": "Fényesség",
-  "COLOR_BLEND_MODE": "Szín",
-  "NOT_SUPPORTED_BLEND_MODE": "Nem támogatott",
-  "RESTART": "Újraindítás",
-  "SORT_BY": "Rendezés",
-  "NAME": "Név",
-  "COLORS": "Színek",
-  "DEFAULT": "Alapértelmezett",
-  "ALPHABETICAL": "Betűrendes",
-  "COLOR_COUNT": "Színszám",
-  "ANY": "Bármelyik",
-  "MAX": "Max",
-  "MIN": "Min",
-  "EXACT": "Exact",
-  "ASCENDING": "Növekvő",
-  "DESCENDING": "Csökkenő",
-  "NAME_IS_TOO_LONG": "A név túl hosszú",
-  "STOP_IT_TEXT1": "Ennyi elég. Tedd már rendbe a fájlneveidet!",
-  "STOP_IT_TEXT2": "Abbahagynád a nevek másolását, kérlek?",
-  "REPLACER_TOOLTIP": "Kattintson a jobb gombbal a paletta színére, és válassza a 'Csere' lehetőséget, vagy húzza ide.",
-  "CLICK_TO_CHOOSE_COLOR": "Kattintson a szín kiválasztásához",
-  "REPLACE_COLOR": "Szín cseréje",
-  "PALETTE_COLOR_TOOLTIP": "Kattintson a főszín kiválasztásához. Húzza és ejtse egy másik paletta színre a cseréhez.",
-  "ADD_FROM_SWATCHES": "Hozzáadás a mintákból",
-  "ADD_COLOR_TO_PALETTE": "Szín hozzáadása a palettához",
-  "USE_IN_CURRENT_IMAGE": "Használja az aktuális képen",
-  "ADD_TO_FAVORITES": "Hozzáadás a kedvencekhez",
-  "BROWSE_PALETTES": "Paletták böngészése",
-  "LOAD_PALETTE": "Paletta betöltése",
-  "SAVE_PALETTE": "Paletta mentése",
-  "FAVORITES": "Kedvencek",
-  "ADD_FROM_CURRENT_PALETTE": "Hozzáadás az aktuális palettáról",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Paletták mappa megnyitása a fájlkezelőben",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Paletták böngészése a Lospec oldalon",
-  "IMPORT_FROM_FILE_TOOLTIP": "Importálás fájlból",
-  "TOP_LEFT": "Bal felső",
-  "TOP_CENTER": "Felső közép",
-  "TOP_RIGHT": "Jobb felső",
-  "MIDDLE_LEFT": "Bal közép",
-  "MIDDLE_CENTER": "Közép",
-  "MIDDLE_RIGHT": "Jobb közép",
-  "BOTTOM_LEFT": "Balra lent",
-  "BOTTOM_CENTER": "Alsó közép",
-  "BOTTOM_RIGHT": "Jobbra lent",
-  "CLIP_TO_BELOW": "Illesztés az alábbi rétegre",
-  "MOVE_UPWARDS": "Mozgatás felfelé",
-  "MOVE_DOWNWARDS": "Mozgatás lefelé",
-  "MERGE_SELECTED": "Kijelölt rétegek egyesítése",
-  "LOCK_TRANSPARENCY": "Átlátszóság zárolása",
-  "COULD_NOT_LOAD_PALETTE": "Nem sikerült lekérni a palettákat",
-  "NO_PALETTES_FOUND": "Nem találtunk palettákat.",
-  "LOSPEC_LINK_TEXT": "Úgy hallottam, hogy itt találsz néhányat: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Paletta böngésző",
-  "DELETE_PALETTE_CONFIRMATION": "Biztosan törölni szeretné ezt a palettát? Ez nem visszavonható.",
-  "SHORTCUTS_IMPORTED": "A(z) {0} gyorsbillentyűi sikeresen importálva lettek.",
-  "SHORTCUT_PROVIDER_DETECTED": "Az észleltük, hogy van telepítve a(z) {0}. Szeretné importálni az abból származó gyorsbillentyűket?",
-  "IMPORT_FROM_INSTALLATION": "Importálás telepítésből",
-  "IMPORT_INSTALLATION_OPTION1": "Importálás telepítésből",
-  "IMPORT_INSTALLATION_OPTION2": "Alapértelmezett értékek használata",
-  "IMPORT_FROM_TEMPLATE": "Importálás sablonból",
-  "SHORTCUTS_IMPORTED_SUCCESS": "A gyorsbillentyűk sikeresen importálva lettek.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Biztos, hogy vissza akarja állítani az összes gyorsbillenytű alapértelmezett értékét?",
-  "SUCCESS": "Siker",
-  "WARNING": "Figyelmeztetés",
-  "ERROR_IMPORTING_IMAGE": "Hiba történt a kép importálása során.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Sérült gyorsbillentyű fájl",
-  "SHORTCUTS_CORRUPTED": "A gyorsbillentyű fájl megsérült, visszaállítás az alapértelmezett értékre.",
-  "FAILED_DOWNLOAD_PALETTE": "Nem sikerült letölteni a palettát",
-  "FILE_INCORRECT_FORMAT": "A fájl nem megfelelő formátumú volt",
-  "INVALID_FILE": "Érvénytelen fájl",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "A gyorsbillentyű fájl helytelen formátumban van.",
-  "UNSUPPORTED_FILE_FORMAT": "Ez a fájlformátum nem támogatott",
-  "ALREADY_ASSIGNED": "Már hozzárendelve",
-  "REPLACE": "Felülírás",
-  "SWAP": "Felcserélés",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Ez a parancsikon már a '{0}'-hoz van rendelve.\nA meglévő parancsikont szeretné felülírni, vagy felcserélni a kettőt?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Ez a gyorsbillentyű már hozzá van rendelve '{0}'-hoz. \nSzeretné lecserélni a meglévő gyorsbillentyűt?",
-  "UNSAVED_CHANGES": "Nem mentett módosítások",
-  "DOCUMENT_MODIFIED_SAVE": "A dokumentum módosítva lett. Szeretné menteni a változtatásokat?",
-  "SESSION_UNSAVED_DATA": "{0} nem mentett adatokkal rendelkezik. Biztos benne, hogy folytatni szeretné?",
-  "PROJECT_MAINTAINERS": "Projektkarbantartók",
-  "OTHER_AWESOME_CONTRIBUTORS": "És más fantasztikus közreműködők",
-  "HELP": "Súgó",
-  "STOP_IT_TEXT3": "Nem, tényleg, hagyd abba.",
-  "STOP_IT_TEXT4": "Nincs jobb dolgod?",
-  "LINEAR_DODGE_BLEND_MODE": "Lineáris világosítás (Hozzáadás)",
-  "PRESS_ANY_KEY": "Nyomjon meg bármilyen billentyűt",
-  "NONE_SHORTCUT": "Nincs hozzárendelve",
-  "REFERENCE": "Referencia",
-  "PUT_REFERENCE_LAYER_ABOVE": "Helyezze a referencia réteget az előtte lévő réteg fölé",
-  "PUT_REFERENCE_LAYER_BELOW": "Helyezze a referencia réteget az alatta lévő réteg alá",
-  "TOGGLE_VERTICAL_SYMMETRY": "Függőleges szimmetria kapcsolása",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Vízszintes szimmetria kapcsolása",
-  "RESET_VIEWPORT": "Nézetablak visszaállítása",
-  "VIEWPORT_SETTINGS": "Nézetablak beállítások",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Kattintson és tartsa lenyomva az egeret a pixelek mozgatásához a kijelölt rétegekben.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Tartsa lenyomva az egeret az összes réteg mozgatásához.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Átnevezés",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Lokalizációs hibakeresési ablak megnyitása",
-  "FORCE_OTHER_FLOW_DIRECTION": "Kényszerített másik irányú folyás",
-  "API_KEY": "API kulcs",
-  "LOCALIZATION_VIEW_TYPE": "Nyelvi nézet típusa",
-  "LOAD_LANGUAGE_FROM_FILE": "Nyelvi beállítások betöltése fájlból",
-  "LOG_IN": "Bejelentkezés",
-  "SYNC": "Szinkronizálás",
-  "NOT_LOGGED_IN": "Nincs bejelentkezve",
-  "POE_EDITOR_ERROR": "POEditor hiba: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP-hiba: {0} {1}",
-  "LOGGED_IN": "Bejelentkezett",
-  "SYNCED_SUCCESSFULLY": "Sikeresen szinkronizálva",
-  "EXCEPTION_ERROR": "HIba: {0}",
-  "DROP_PALETTE": "Húzza ide a palettát",
-  "SECURITY_ERROR": "Biztonsági hiba",
-  "SECURITY_ERROR_MSG": "Nincs jogosultsága a megadott helyre írni.",
-  "IO_ERROR": "IO hiba",
-  "IO_ERROR_MSG": "Hiba a lemezre írás közben.",
-  "FAILED_ASSOCIATE_PIXI": "Nem sikerült társítani a .pixi fájlt a PixiEditorral.",
-  "COULD_NOT_SAVE_PALETTE": "Hiba történt a paletta mentése közben.",
-  "NO_COLORS_TO_SAVE": "Nincsenek menthető színek.",
-  "ALL_LAYERS": "Minden réteg",
-  "SINGLE_LAYER": "Egyetlen réteg",
-  "CHOOSE": "Választás",
-  "REMOVE": "Eltávolítás",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "A fájl nem \".aseprite-keys\" fájl",
-  "FILE_HAS_INVALID_SHORTCUT": "A fájl érvénytelen gyorsbillentyűt tartalmaz",
-  "FILE_EXTENSION_NOT_SUPPORTED": "A '{0}' fájltípus nem támogatott",
-  "ERROR_READING_FILE": "Hiba a fájl olvasása közben",
-  "DISCARD_PALETTE": "Paletta elvetése",
-  "DISCARD_PALETTE_CONFIRMATION": "Biztos benne, hogy el akarja vetni az aktuális palettát? Ezt nem lehet visszavonni.",
-  "IMPORT_AS_NEW_LAYER": "Importálás új rétegként",
-  "PASTE_AS_PRIMARY_COLOR": "Beillesztés elsődleges színként",
-  "IMPORT_AS_NEW_FILE": "Importálás új fájlként",
-  "IMPORT_PALETTE_FILE": "Palettafájl importálása",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Színek importálása a palettába",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Szín importálása a palettába",
-  "IMPORT_AS_REFERENCE_LAYER": "Importálás referenciarétegként",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "A szín kiválasztásához kattintson jobb egérgombbal, a szín vágólapra másolásához Shift + jobb egérgombbal kattintson.",
-  "OPEN_FILE_FROM_CLIPBOARD": "Megnyitás a vágólapról",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Megnyitás a vágólapról",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Downloading language failed.\nAPI Key might have been overused.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Localization data path not found",
-  "APPLY": "Apply",
-  "UPDATE_SOURCE": "Update source",
-  "COPY_TO_CLIPBOARD": "Copy to clipboard",
-  "LANGUAGE_FILE_NOT_FOUND": "Language file not found.\nLooking for {0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor Project root not found.\nLooking for PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Localization folder not found.\nLooking for /Data/Localization",
-  "SELECT_A_LANGUAGE": "Select a language",
-  "DONE": "Done",
-  "SOURCE_UNSET_OR_MISSING": "Source missing/unset",
-  "SOURCE_NEWER": "Source newer",
-  "SOURCE_UP_TO_DATE": "Source is up to date",
-  "SOURCE_OLDER": "Cloud newer",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/pl.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Ostatnie pliki",
-  "OPEN_FILE": "Otwórz plik",
-  "NEW_FILE": "Nowy",
-  "RECENT_EMPTY_TEXT": "Ale tu pusto",
-  "LANGUAGE": "Język",
-  "GENERAL": "Ogólne",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Skróty klawiszowe",
-  "MISC": "Inne",
-  "SHOW_STARTUP_WINDOW": "Otwórz okno powitalne na starcie",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Pokaż podgląd obrazu w pasku zadań",
-  "RECENT_FILE_LENGTH": "Ilość ostatnich plików",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Ile plików jest wyświetlanych w menu Plik -> Ostatnie. Domyślnie 8",
-  "DEFAULT_NEW_SIZE": "Domyslny rozmiar nowego obrazu",
-  "WIDTH": "Szerokość",
-  "HEIGHT": "Wysokość",
-  "TOOLS": "Narzędzia",
-  "ENABLE_SHARED_TOOLBAR": "Włącz wspólny pasek narzędzi",
-  "AUTOMATIC_UPDATES": "Automatyczne aktualizacje",
-  "CHECK_FOR_UPDATES": "Sprawdzaj aktualizacje na starcie",
-  "UPDATE_STREAM": "Kanał aktualizacji",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Kanały aktualizacji mogą być tylko ustawione w wersji samodzielnej (pobranej z https://pixieditor.net).\nSteam i Microsoft Store zajmuje się aktualizacjami osobno.",
-  "DEBUG": "Debugowanie",
-  "ENABLE_DEBUG_MODE": "Włącz tryb debugowania",
-  "OPEN_CRASH_REPORTS_DIR": "Otwórz folder z raportami o awariach",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Włączony",
-  "SHOW_IMAGE_NAME": "Pokaż nazwę obrazu",
-  "SHOW_IMAGE_SIZE": "Pokaż wielkość obrazu",
-  "SHOW_LAYER_COUNT": "Pokaż ilość warstw",
-  "FILE": "Plik",
-  "RECENT": "Ostatnie",
-  "OPEN": "Otwórz",
-  "SAVE_PIXI": "Zapisz (.pixi)",
-  "SAVE_AS_PIXI": "Zapisz jako... (.pixi)",
-  "EXPORT_IMG": "Eksportuj (.png, .jpg, itp.)",
-  "EDIT": "Edytuj",
-  "EXIT": "Wyjdź",
-  "PERCENTAGE": "Procentowo",
-  "ABSOLUTE": "Absolutnie",
-  "PRESERVE_ASPECT_RATIO": "Zachowaj proporcje",
-  "ANCHOR_POINT": "Punkt zaczepienia",
-  "RESIZE_IMAGE": "Zmień rozmiar obrazu",
-  "RESIZE": "Zmień rozmiar",
-  "DOCUMENTATION": "Dokumentacja",
-  "WEBSITE": "Strona internetowa",
-  "OPEN_WEBSITE": "Otwórz stronę internetową",
-  "REPOSITORY": "Repozytorium",
-  "OPEN_REPOSITORY": "Otwórz repozytorium",
-  "LICENSE": "Licencja",
-  "OPEN_LICENSE": "Otwórz licencję",
-  "THIRD_PARTY_LICENSES": "Licencje stron trzecich",
-  "OPEN_THIRD_PARTY_LICENSES": "Otwórz licencje stron trzecich",
-  "APPLY_TRANSFORM": "Zastosuj transformację",
-  "INCREASE_TOOL_SIZE": "Zwiększ rozmiar narzędzia",
-  "DECREASE_TOOL_SIZE": "Zmniejsz rozmiar narzędzia",
-  "TO_INSTALL_UPDATE": "aby zainstalować aktualizacje {0}",
-  "DOWNLOADING_UPDATE": "Pobieranie aktualizacji...",
-  "UPDATE_READY": "Aktualizacja jest gotowa do instalacji. Czy chcesz ją zainstalować teraz?",
-  "NEW_UPDATE": "Nowa aktualizacja",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Nie można zaaktualizować bez uprawnien administratora. Włącz PixiEditor jako administrator.",
-  "INSUFFICIENT_PERMISSIONS": "Niewystarczające uprawnienia",
-  "UPDATE_CHECK_FAILED": "Sprawdzanie aktualizacji nie powiodło się",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Nie udało się sprawdzić aktualizacji",
-  "VERSION": "Wersja {0}",
-  "OPEN_TEMP_DIR": "Otwórz folder temp",
-  "OPEN_LOCAL_APPDATA_DIR": "Otwórz folder Local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "Otwórz folder Roaming AppData",
-  "OPEN_INSTALLATION_DIR": "Otwórz folder instalacji",
-  "DUMP_ALL_COMMANDS": "Wypisz wszystkie komendy",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Wypisz wszystkie komendy do pliku",
-  "CRASH": "Crash",
-  "CRASH_APP": "Zcrashuj aplikację",
-  "DELETE_USR_PREFS": "Usuń preferencje użytkownika (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Usuń plik skrótów klawiszowych (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Usuń dane edytora (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Stwórz szablon skrótów klawiszowych",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Stwórz szablon JSON skrótów klawiszowych",
-  "VALIDATE_SHORTCUT_MAP": "Sprawdź poprawność mapy skrótów",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Sprawdza poprawność mapy skrótów",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Puste klucze: {0}\nNieznane komendy: {1}",
-  "RESULT": "Wynik",
-  "CLEAR_RECENT_DOCUMENTS": "Wyczyść ostatnie dokumenty",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Wyczyść ostatnio otwarte dokumenty",
-  "OPEN_CMD_DEBUG_WINDOW": "Otwórz okno do debugowania komend",
-  "PATH_DOES_NOT_EXIST": "{0} nie istnieje.",
-  "LOCATION_DOES_NOT_EXIST": "Lokalizacja nie istnieje.",
-  "FILE_NOT_FOUND": "Plik nie znaleziony.",
-  "ARE_YOU_SURE": "Jesteś pewien?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Czy na pewno chcesz usunąć {0}?\nDane zostaną utracone dla wszystkich instalacji.\n(Pełna ścieżka: {1})",
-  "FAILED_TO_OPEN_FILE": "Nie udało się otworzyć pliku",
-  "OLD_FILE_FORMAT": "Stary format pliku",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Ten plik .pixi używa starego formatu, który nie jest już wspierany i nie można go otworzyć.",
-  "NOTHING_FOUND": "Nic nie znaleziono",
-  "EXPORT": "Eksportuj",
-  "EXPORT_IMAGE": "Eksportuj obraz",
-  "IMPORT": "Importuj",
-  "SHORTCUT_TEMPLATES": "Szablony",
-  "RESET_ALL": "Resetuj wszystko",
-  "LAYER": "Warstwa",
-  "LAYER_DELETE_SELECTED": "Usuń aktywną warstwę/folder",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Usuń aktywną warstwę lub folder",
-  "LAYER_DELETE_ALL_SELECTED": "Usuń wszystkie zaznaczone warstwy/foldery",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Usuń wszystkie zaznaczone warstwy i/lub foldery",
-  "DELETE_SELECTED_PIXELS": "Usuń zaznaczone piksele",
-  "NEW_FOLDER": "Nowy folder",
-  "CREATE_NEW_FOLDER": "Stwórz nowy folder",
-  "NEW_LAYER": "Nowa warstwa",
-  "CREATE_NEW_LAYER": "Stwórz nową warstwę",
-  "NEW_IMAGE": "Nowy obraz",
-  "CREATE_NEW_IMAGE": "Stwórz nowy obraz",
-  "SAVE": "Zapisz",
-  "SAVE_AS": "Zapisz jako...",
-  "IMAGE": "Obraz",
-  "SAVE_IMAGE": "Zapisz obraz",
-  "SAVE_IMAGE_AS": "Zapisz obraz jako",
-  "DUPLICATE": "Duplikuj",
-  "DUPLICATE_SELECTED_LAYER": "Duplikuj zaznaczoną warstwę",
-  "CREATE_MASK": "Stwórz maskę",
-  "DELETE_MASK": "Usuń maskę",
-  "TOGGLE_MASK": "Przełącz maskę",
-  "APPLY_MASK": "Zastosuj maskę",
-  "TOGGLE_VISIBILITY": "Przełącz widoczność",
-  "MOVE_MEMBER_UP": "Przesuń obiekt wyżej",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Przesuń zaznaczoną warstwę lub folder wyżej",
-  "MOVE_MEMBER_DOWN": "Przesuń obiekt niżej",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Przesuń zaznaczoną warstwę lub folder niżej",
-  "MERGE_ALL_SELECTED_LAYERS": "Scal wszystkie warstwy",
-  "MERGE_WITH_ABOVE": "Scal zaznaczoną warstwę z obiektem wyżej",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Scal zaznaczoną warstwę z warstwą wyżej",
-  "MERGE_WITH_BELOW": "Scal zaznaczoną warstwę z obiektem niżej",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Scal zaznaczoną warstwę z warstwą niżej",
-  "ADD_REFERENCE_LAYER": "Dodaj warstwę referencyjną",
-  "DELETE_REFERENCE_LAYER": "Usuń warstwę referencyjną",
-  "TRANSFORM_REFERENCE_LAYER": "Modyfikuj warstwę referencyjną",
-  "TOGGLE_REFERENCE_LAYER_POS": "Przełącz pozycję warstwy referencyjnej",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Przełącz warstwę referencyjną pomiędzy górą a dołem",
-  "RESET_REFERENCE_LAYER_POS": "Resetuj pozycję warstwy referencyjnej",
-  "CLIP_CANVAS": "Dopasuj płótno do zawartości",
-  "FLIP_IMG_VERTICALLY": "Przerzuć obraz w pionie",
-  "FLIP_IMG_HORIZONTALLY": "Przerzuć obraz w poziomie",
-  "FLIP_LAYERS_VERTICALLY": "Przerzuć zaznaczone warstwy w pionie",
-  "FLIP_LAYERS_HORIZONTALLY": "Przerzuć zaznaczone warstwy w poziomie",
-  "ROT_IMG_90": "Obróć obraz 90 stopni",
-  "ROT_IMG_180": "Obróć obraz 180 stopni",
-  "ROT_IMG_-90": "Obróć obraz -90 stopni",
-  "ROT_LAYERS_90": "Obróć zaznaczone warstwy 90 stopni",
-  "ROT_LAYERS_180": "Obróć zaznaczone warstwy 180 stopni",
-  "ROT_LAYERS_-90": "Obróć zaznaczone warstwy -90 stopni",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Przełącz oś symetrii w pionie",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Przełącz oś symetrii w poziomie",
-  "DELETE_PIXELS": "Usuń piksele",
-  "DELETE_PIXELS_DESCRIPTIVE": "Usuń zaznaczone piksele",
-  "RESIZE_DOCUMENT": "Zmień rozmiar dokumentu",
-  "RESIZE_CANVAS": "Zmien rozmiar płótna",
-  "CENTER_CONTENT": "Wyśrodkuj zawartość",
-  "CUT": "Wytnij",
-  "CUT_DESCRIPTIVE": "Wytnij zaznaczony obszar/warstwę",
-  "PASTE": "Wklej",
-  "PASTE_DESCRIPTIVE": "Wklej zawartość schowka",
-  "PASTE_AS_NEW_LAYER": "Wklej jako nowa warstwa",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Wklej ze schowka jako nowa warstwa",
-  "PASTE_REFERENCE_LAYER": "Wklej warstwę referencyjną",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Wklej zawartość schowka jako warstwa referencyjna",
-  "PASTE_COLOR": "Wklej kolor",
-  "PASTE_COLOR_DESCRIPTIVE": "Wklej kolor ze schowka",
-  "PASTE_COLOR_SECONDARY": "Wklej kolor jako drugorzędny",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Wklej kolor ze schowka jako drugorzędny",
-  "CLIPBOARD": "Schowek",
-  "COPY": "Kopiuj",
-  "COPY_DESCRIPTIVE": "Kopiuj do schowka",
-  "COPY_COLOR_HEX": "Kopiuj pierwszorzędny kolor (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Kopiuj pierwszorzędny kolor jako kod HEX",
-  "COPY_COLOR_RGB": "Kopiuj pierwszorzędny kolor (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Kopiuj pierwszorzędny kolor jako kod RGB",
-  "COPY_COLOR_SECONDARY_HEX": "Kopiuj drugorzędny kolor (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Kopiuj drugorzędny kolor jako kod HEX",
-  "COPY_COLOR_SECONDARY_RGB": "Kopiuj drugorzędny kolor (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Kopiuj drugorzędny kolor jako kod RGB",
-  "PALETTE_COLORS": "Paleta Kolorów",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Zastąp drugorzędny kolor pierwszorzędnym",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Zastąp drugorzędny kolor pierwszorzędnym",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Zastąp pierwszorzędny kolor drugorzędnym",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Zastąp pierwszorzędny kolor drugorzędnym",
-  "OPEN_PALETTE_BROWSER": "Otwórz przeglądarkę palet",
-  "OVERWRITE_PALETTE_CONSENT": "Paleta '{0}' już istnieje, czy chcesz ją nadpisać?",
-  "PALETTE_EXISTS": "Paleta już istnieje",
-  "REPLACE_PALETTE_CONSENT": "Zastąpić aktywną paletę zaznaczoną?",
-  "REPLACE_PALETTE": "Zastąp aktywną paletę",
-  "SELECT_COLOR_1": "Wybierz kolor 1",
-  "SELECT_COLOR_2": "Wybierz kolor 2",
-  "SELECT_COLOR_3": "Wybierz kolor 3",
-  "SELECT_COLOR_4": "Wybierz kolor 4",
-  "SELECT_COLOR_5": "Wybierz kolor 5",
-  "SELECT_COLOR_6": "Wybierz kolor 6",
-  "SELECT_COLOR_7": "Wybierz kolor 7",
-  "SELECT_COLOR_8": "Wybierz kolor 8",
-  "SELECT_COLOR_9": "Wybierz kolor 9",
-  "SELECT_COLOR_10": "Wybierz kolor 10",
-  "SELECT_TOOL": "Zaznacz narzędzie {0}",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Zaznacz pierwszy kolor w palecie",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Zaznacz drugi kolor w palecie",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Zaznacz trzeci kolor w palecie",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Zaznacz czwarty kolor w palecie",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Zaznacz piąty kolor w palecie",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Zaznacz szósty kolor w palecie",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Zaznacz siódmy kolor w palecie",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Zaznacz ósmy kolor w palecie",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Zaznacz dziewiąty kolor w palecie",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Zaznacz dziesiąty kolor w palecie",
-  "SWAP_COLORS": "Zamień kolory",
-  "SWAP_COLORS_DESCRIPTIVE": "Zamień pierwszorzędny kolor z drugorzędnym",
-  "SEARCH": "Szukaj",
-  "COMMAND_SEARCH": "Wyszukiwanie komend",
-  "OPEN_COMMAND_SEARCH": "Otwórz okno wyszukiwania komend",
-  "SELECT": "Zaznacz",
-  "DESELECT": "Odznacz",
-  "INVERT": "Odwróć",
-  "SELECTION": "Zaznaczenie",
-  "SELECT_ALL": "Zaznacz wszystko",
-  "SELECT_ALL_DESCRIPTIVE": "Zaznacz wszystko",
-  "CLEAR_SELECTION": "Wyczyść zaznaczenie",
-  "INVERT_SELECTION": "Odwróć zaznaczenie",
-  "INVERT_SELECTION_DESCRIPTIVE": "Odwróć zaznaczony obszar",
-  "TRANSFORM_SELECTED_AREA": "Transformuj zaznaczony obszar",
-  "NUDGE_SELECTED_LEFT": "Pstryknij zaznaczony obiekt w lewo",
-  "NUDGE_SELECTED_RIGHT": "Pstryknij zaznaczony obiekt w prawo",
-  "NUDGE_SELECTED_UP": "Pstryknij zaznaczony obiekt w górę",
-  "NUDGE_SELECTED_DOWN": "Pstryknij zaznaczony obiekt w dół",
-  "MASK_FROM_SELECTION": "Nowa maska z zaznaczenia",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Zrób nową maskę z zaznaczenia",
-  "ADD_SELECTION_TO_MASK": "Dodaj zaznaczenie do maski",
-  "SUBTRACT_SELECTION_FROM_MASK": "Odejmij zaznaczenie z maski",
-  "INTERSECT_SELECTION_MASK": "Wykonaj intersekcję zaznaczenia z maską",
-  "SELECTION_TO_MASK": "Zaznaczenie do maski",
-  "TO_NEW_MASK": "do nowej maski",
-  "ADD_TO_MASK": "dodaj do maski",
-  "SUBTRACT_FROM_MASK": "odejmij z maski",
-  "INTERSECT_WITH_MASK": "wykonaj intersekcję z maską",
-  "STYLUS": "Rysik",
-  "TOGGLE_PEN_MODE": "Przełącz tryb długopisu",
-  "UNDO": "Cofnij",
-  "UNDO_DESCRIPTIVE": "Cofnij ostatnią akcję",
-  "REDO": "Ponów",
-  "REDO_DESCRIPTIVE": "Ponów ostatnią akcję",
-  "WINDOWS": "Okna",
-  "TOGGLE_GRIDLINES": "Przełącz linie siatki",
-  "ZOOM_IN": "Przybliż",
-  "ZOOM_OUT": "Oddal",
-  "NEW_WINDOW_FOR_IMG": "Nowe okno dla aktywnego obrazu",
-  "CENTER_ACTIVE_VIEWPORT": "Wyśrodkuj aktywny widok",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Przerzuć widok w poziomie",
-  "FLIP_VIEWPORT_VERTICALLY": "Przerzuć widok w pionie",
-  "SETTINGS": "Ustawienia",
-  "OPEN_SETTINGS": "Otwórz ustawienia",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Otwórz okno ustawień",
-  "OPEN_STARTUP_WINDOW": "Otwórz okno startowe",
-  "OPEN_SHORTCUT_WINDOW": "Otwórz okno ze skrótami klawiszowymi",
-  "OPEN_ABOUT_WINDOW": "Otwórz okno informacji",
-  "OPEN_NAVIGATION_WINDOW": "Otwórz okno nawigacji",
-  "ERROR": "Błąd",
-  "INTERNAL_ERROR": "Wewnętrzny błąd",
-  "ERROR_SAVE_LOCATION": "Nie udało się zapisać pliku do wskazanej lokalizacji",
-  "ERROR_WHILE_SAVING": "Wystąpił wewnętrzny błąd podczas zapisu. Spróbuj ponownie.",
-  "UNKNOWN_ERROR_SAVING": "Wystąpił błąd poczas zapisu.",
-  "FAILED_ASSOCIATE_LOSPEC": "Nie udało się powiązać protokołu palet serwisu Lospec.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Dotacja",
-  "YES": "Tak",
-  "NO": "Nie",
-  "CANCEL": "Anuluj",
-  "UNNAMED": "Bez nazwy",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Otwórz okno debugowania komend",
-  "DELETE": "Usuń",
-  "USER_PREFS": "Preferencje użytkownika (Roaming)",
-  "SHORTCUT_FILE": "Plik skrótów klawiszowych (Roaming)",
-  "EDITOR_DATA": "Dane edytora (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Przesuwa widok. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Kliknij i porusz myszką, aby przesunąć widok",
-  "MOVE_TOOL_TOOLTIP": "Przesuwa zaznaczone piksele ({0}). Przytrzymaj Ctrl aby ruszyć wszystkimi warstwami.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Przytrzymaj myszkę, aby poruszyć zaznaczone piksele. Przytrzymaj Ctrl aby ruszyć wszystkimi warstwami.",
-  "PEN_TOOL_TOOLTIP": "Pióro. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Kliknij i porusz aby rysować.",
-  "PIXEL_PERFECT_SETTING": "Pixel perfect",
-  "RECTANGLE_TOOL_TOOLTIP": "Tworzy prostokąt na płótnie ({0}). Przytrzymaj Shift, żeby narysować kwadrat.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Tworzy prostokąt na płótnie. Przytrzymaj Shift, żeby narysować kwadrat.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz aby narysować kwadrat.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Zachowaj oryginalny obraz",
-  "ROTATE_VIEWPORT_TOOLTIP": "Obraca widok. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Kliknij i porusz aby obrócić widok",
-  "SELECT_TOOL_TOOLTIP": "Zaznacza obszar. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz aby zaznaczyć obszar. Przytrzymaj Shift aby dodać do istniejącego zaznaczenia. Przytrzymaj Ctrl aby usunąć z niego.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz aby dodać do aktywnego zaznaczenia.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką aby usunąć z aktywnego zaznaczenia.",
-  "ZOOM_TOOL_TOOLTIP": "Przybliża lub oddala widok ({0}). Kliknij aby przybliżyć, przytrzymaj ctrl i kliknij aby oddalić.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką, aby zmienić oddalenie. Kliknij aby przybliżyć, przytrzymaj ctrl i kliknij aby oddalić.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką aby zmienić oddalenie. Kliknij aby oddalić, puść ctrl i kliknij aby przybliżyć.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Rozjaśnia lub przyciemnia piksele ({0}). Przytrzymaj Ctrl aby przyciemniać.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Rysuj po pikselach aby je rozjaśnić. Przytrzymaj Ctrl aby przyciemnić.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Rysuj po pikselach aby je przyciemnić. Puść Ctrl aby rozjaśnić.",
-  "COLOR_PICKER_TOOLTIP": "Pobiera kolor z płótna i ustawia go jako pierwszorzędny. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Kliknij aby pobrać kolor. Przytrzymaj Ctrl aby ukryć płótno. Przytrzymaj Shift aby ukryć warstwę referencyjną.",
-  "ELLIPSE_TOOL_TOOLTIP": "Rysuje elipsę na płótnie ({0}). Przytrzymaj Shift aby narysować koło.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby narysować elipsę. Przytrzymaj Shift aby narysować koło.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby narysować koło.",
-  "ERASER_TOOL_TOOLTIP": "Wymazuje piksele z płótna. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Kliknij i porusz myszką aby zmazywać.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Zapełnia obszar kolorem. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij na obszar, aby go zapełnić. Przytrzymaj Ctrl aby zapełniać z uwzględnieniem wszystkich warstw.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Kliknij na obszar aby go zapełnić. Puść Ctrl żeby aby zapełniać tylko z uwzględnieniem aktywnej warstwy.",
-  "LASSO_TOOL_TOOLTIP": "Lasso. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby zaznaczyć piksele wewnątrz lassa. Przytrzymaj Shift aby dodać do istniejącego zaznaczenia. Przytrzymaj Ctrl aby usunąć z niego.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby dodać piksele wewnątrz lassa do zaznaczenia.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką, aby usunąć piksele wewnątrz lassa z aktywnego zaznaczenia.",
-  "LINE_TOOL_TOOLTIP": "Rysuje linie na płótnie ({0}). Przytrzymaj Shift aby rysować równe linie.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby narysować linie. Przytrzymaj Shify aby rysować równe linie.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby rysować równe linie.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Magiczna Różdżka ({0}). Zapełnia obszar zaznaczeniem",
-  "MAGIC_WAND_ACTION_DISPLAY": "Kliknij aby stworzyć zaznaczenie z obszaru.",
-  "PEN_TOOL": "Pióro",
-  "BRIGHTNESS_TOOL": "Rozświetlenie",
-  "COLOR_PICKER_TOOL": "Próbnik Kolorów",
-  "ELLIPSE_TOOL": "Elipsa",
-  "ERASER_TOOL": "Gumka",
-  "FLOOD_FILL_TOOL": "Wiadro",
-  "LASSO_TOOL": "Lasso",
-  "LINE_TOOL": "Linia",
-  "MAGIC_WAND_TOOL": "Magiczna Różdżka",
-  "MOVE_TOOL": "Przesuwanie",
-  "MOVE_VIEWPORT_TOOL": "Przesuwanie widoku",
-  "RECTANGLE_TOOL": "Prostokąt",
-  "ROTATE_VIEWPORT_TOOL": "Obracanie widoku",
-  "SELECT_TOOL_NAME": "Zaznaczenie",
-  "ZOOM_TOOL": "Powiększenie",
-  "SHAPE_LABEL": "Kształt",
-  "MODE_LABEL": "Tryb",
-  "SCOPE_LABEL": "Zakres",
-  "FILL_SHAPE_LABEL": "Zapełnij kształt",
-  "FILL_COLOR_LABEL": "Kolor zapełnienia",
-  "TOOL_SIZE_LABEL": "Wielkość narzędzia",
-  "STRENGTH_LABEL": "Siła",
-  "NEW": "Nowy",
-  "ADD": "Dodaj",
-  "SUBTRACT": "Odejmij",
-  "INTERSECT": "Intersekcja",
-  "RECTANGLE": "Prostokąt",
-  "CIRCLE": "Koło",
-  "ABOUT": "O nas",
-  "MINIMIZE": "Minimializuj",
-  "RESTORE": "Przywróć",
-  "MAXIMIZE": "Maksymalizuj",
-  "CLOSE": "Zamknij",
-  "EXPORT_SIZE_HINT": "Jeżeli chcesz udostępnić obraz, spróbuj {0}% dla najlepszej przejrzystości",
-  "CREATE": "Stwórz",
-  "BASE_LAYER_NAME": "Podstawowa warstwa",
-  "ENABLE_MASK": "Włącz maskę",
-  "SELECTED_AREA_EMPTY": "Zaznaczony obszar jest pusty",
-  "NOTHING_TO_COPY": "Nie ma nic do skopiowania",
-  "REFERENCE_LAYER_PATH": "Ścieżka warstwy referencyjnej",
-  "FLIP": "Przerzuć",
-  "ROTATION": "Obrót",
-  "ROT_IMG_90_D": "Obróć obraz 90°",
-  "ROT_IMG_180_D": "Obróć obraz 180°",
-  "ROT_IMG_-90_D": "Obróć obraz -90°",
-  "ROT_LAYERS_90_D": "Obróć zaznaczone warstwy 90°",
-  "ROT_LAYERS_180_D": "Obróć zaznaczone warstwy 180°",
-  "ROT_LAYERS_-90_D": "Obróć zaznaczone warstwy -90°",
-  "UNNAMED_PALETTE": "Paleta bez nazwy",
-  "CLICK_SELECT_PRIMARY": "Kilknij aby ustawić jako kolor główny.",
-  "PEN_MODE": "Tryb pióra",
-  "VIEW": "Widok",
-  "HORIZONTAL_LINE_SYMMETRY": "Pozioma oś symetrii",
-  "VERTICAL_LINE_SYMMETRY": "Pionowa oś symetrii",
-  "COLOR_PICKER_TITLE": "Próbnik Kolorów",
-  "COLOR_SLIDERS_TITLE": "Suwaki Kolorów",
-  "PALETTE_TITLE": "Paleta Kolorów",
-  "SWATCHES_TITLE": "Swatche",
-  "LAYERS_TITLE": "Warstwy",
-  "NAVIGATION_TITLE": "Nawigacja",
-  "NORMAL_BLEND_MODE": "Normalny",
-  "DARKEN_BLEND_MODE": "Przyciemnianie",
-  "MULTIPLY_BLEND_MODE": "Mnożenie",
-  "COLOR_BURN_BLEND_MODE": "Wypalenie koloru",
-  "LIGHTEN_BLEND_MODE": "Rozjaśnianie",
-  "SCREEN_BLEND_MODE": "Przesiewanie",
-  "COLOR_DODGE_BLEND_MODE": "Unikanie",
-  "OVERLAY_BLEND_MODE": "Narzuta",
-  "SOFT_LIGHT_BLEND_MODE": "Miękkie światło",
-  "HARD_LIGHT_BLEND_MODE": "Twarde światło",
-  "DIFFERENCE_BLEND_MODE": "Różnica",
-  "EXCLUSION_BLEND_MODE": "Wykluczenie",
-  "HUE_BLEND_MODE": "Odcień",
-  "SATURATION_BLEND_MODE": "Nasycenie",
-  "LUMINOSITY_BLEND_MODE": "Jasność",
-  "COLOR_BLEND_MODE": "Kolor",
-  "NOT_SUPPORTED_BLEND_MODE": "Nie wspierany",
-  "RESTART": "Restartuj",
-  "SORT_BY": "Sortuj po",
-  "NAME": "Nazwa",
-  "COLORS": "Kolory",
-  "DEFAULT": "Domyślnie",
-  "ALPHABETICAL": "Alfabetycznie",
-  "COLOR_COUNT": "Ilość kolorów",
-  "ANY": "Obojętnie",
-  "MAX": "Maksymalnie",
-  "MIN": "Minimalnie",
-  "EXACT": "Dokładnie",
-  "ASCENDING": "Rosnąco",
-  "DESCENDING": "Malejąco",
-  "NAME_IS_TOO_LONG": "Nazwa jest za długa",
-  "STOP_IT_TEXT1": "Wystarczy. Posprzątaj nazwy swoich plików.",
-  "STOP_IT_TEXT2": "Czy możesz proszę przestać kopiować te nazwy?",
-  "REPLACER_TOOLTIP": "Kliknij prawym przyciskiem myszy na kolor i wybierz 'Zamień' lub przeciągnij go tutaj.",
-  "CLICK_TO_CHOOSE_COLOR": "Kliknij aby wybrać kolor",
-  "REPLACE_COLOR": "Zastąp kolor",
-  "PALETTE_COLOR_TOOLTIP": "Kliknij aby ustawić jako główny kolor. Przeciągnij i upuść na inny kolor z palety, aby zamienić je miejscami.",
-  "ADD_FROM_SWATCHES": "Dodaj ze swatchy",
-  "ADD_COLOR_TO_PALETTE": "Dodaj kolor do palety",
-  "USE_IN_CURRENT_IMAGE": "Użyj w aktywnym obrazie",
-  "ADD_TO_FAVORITES": "Dodaj do ulubionych",
-  "BROWSE_PALETTES": "Przeglądaj palety",
-  "LOAD_PALETTE": "Załaduj paletę",
-  "SAVE_PALETTE": "Zapisz paletę",
-  "FAVORITES": "Ulubione",
-  "ADD_FROM_CURRENT_PALETTE": "Dodaj z aktywnej palety",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Otwórz folder z paletami w explorerze",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Przeglądaj palety w serwisie Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Importuj z pliku",
-  "TOP_LEFT": "Lewy górny",
-  "TOP_CENTER": "Środkowy górny",
-  "TOP_RIGHT": "Prawy górny",
-  "MIDDLE_LEFT": "Lewy środkowy",
-  "MIDDLE_CENTER": "Środek",
-  "MIDDLE_RIGHT": "Prawy środkowy",
-  "BOTTOM_LEFT": "Lewy dolny",
-  "BOTTOM_CENTER": "Środkowy dolny",
-  "BOTTOM_RIGHT": "Prawy dolny",
-  "CLIP_TO_BELOW": "Dopasuj do warstwy niżej",
-  "MOVE_UPWARDS": "Przesuń w górę",
-  "MOVE_DOWNWARDS": "Przesuń w dół",
-  "MERGE_SELECTED": "Scal zaznaczone",
-  "LOCK_TRANSPARENCY": "Zablokuj przeźroczystość",
-  "COULD_NOT_LOAD_PALETTE": "Nie udało się pobrać palet kolorów",
-  "NO_PALETTES_FOUND": "Nie znaleziono żadnych palet.",
-  "LOSPEC_LINK_TEXT": "Słyszałem, że trochę możesz znaleźć tutaj: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Przeglądarka Palet",
-  "DELETE_PALETTE_CONFIRMATION": "Czy jesteś pewien, że chcesz usunąć tę paletę? Tej akcji nie można cofnąć.",
-  "SHORTCUTS_IMPORTED": "Skróty klawiszowe z {0} zostały zaimportowane poprawnie.",
-  "SHORTCUT_PROVIDER_DETECTED": "Zauważyliśmy, że masz zainstalowane {0}. Czy chcesz zaimportować skróty z tego programu?",
-  "IMPORT_FROM_INSTALLATION": "Importuj z instalacji",
-  "IMPORT_INSTALLATION_OPTION1": "Importuj z instalacji",
-  "IMPORT_INSTALLATION_OPTION2": "Użyj domyślnych",
-  "IMPORT_FROM_TEMPLATE": "Importuj z szablonu",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Skróty klawiszowe zostały zaimportowane poprawnie.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Czy na pewno chcesz zresetować skróty klawiszowe do ich domyślnych wartości?",
-  "SUCCESS": "Sukces",
-  "WARNING": "Ostrzeżenie",
-  "ERROR_IMPORTING_IMAGE": "Wystąpił błąd podczas importowania obrazu.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Popsuty plik ze skrótami klawiszowymi",
-  "SHORTCUTS_CORRUPTED": "Plik skrótów klawiszowych jest popsuty, zresetowano do domyślnych wartości.",
-  "FAILED_DOWNLOAD_PALETTE": "Nie udało się pobrać palety",
-  "FILE_INCORRECT_FORMAT": "Plik nie jest w poprawnym formacie",
-  "INVALID_FILE": "Nieprawidłowy plik",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Plik ze skrótami klawiszowymi jest w niepoprawnym formacie",
-  "UNSUPPORTED_FILE_FORMAT": "Ten format plików nie jest wspierany",
-  "ALREADY_ASSIGNED": "Już przypisano",
-  "REPLACE": "Zastąp",
-  "SWAP": "Zamień",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Ten skrót został już przypisany do '{0}'\nChcesz go zastąpić czy je zamienić?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Ten skrót jest już przypisany do '{0}' \nCzy chcesz go zastąpić?",
-  "UNSAVED_CHANGES": "Niezapisane zmiany.",
-  "DOCUMENT_MODIFIED_SAVE": "Ten dokument został zmodyfikowany. Czy chcesz go zapisać?",
-  "SESSION_UNSAVED_DATA": "{0} ma niezapisane zmiany. Jesteś pewien?",
-  "PROJECT_MAINTAINERS": "Opiekunowie Projektu",
-  "OTHER_AWESOME_CONTRIBUTORS": "I inni świetni współtwórcy",
-  "HELP": "Pomoc",
-  "STOP_IT_TEXT3": "Nie no, serio, przestań.",
-  "STOP_IT_TEXT4": "Nie masz nic lepszego do roboty?",
-  "LINEAR_DODGE_BLEND_MODE": "Liniowe unikanie (Dodatnie)",
-  "PRESS_ANY_KEY": "Wciśnij klawisz",
-  "NONE_SHORTCUT": "Brak",
-  "REFERENCE": "Referencja",
-  "PUT_REFERENCE_LAYER_ABOVE": "Daj warstwę referencyjną do góry",
-  "PUT_REFERENCE_LAYER_BELOW": "Daj warstwę referencyjną w dół",
-  "TOGGLE_VERTICAL_SYMMETRY": "Przełącz pionową oś symetrii",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Przełącz poziomą oś symetrii",
-  "RESET_VIEWPORT": "Resetuj widok",
-  "VIEWPORT_SETTINGS": "Ustawienia widoku",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Kliknij i przytrzymaj myszkę, aby poruszyć piksele w zaznaczonej warstwie.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Przytrzymaj myszkę aby poruszyć wszystkie warstwy.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Zmień nazwę",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Otwórz okno debugowania lokalizacji",
-  "FORCE_OTHER_FLOW_DIRECTION": "Odwróć kierunek interfejsu",
-  "API_KEY": "Klucz API",
-  "LOCALIZATION_VIEW_TYPE": "Typ wyświetlania lokalizacji",
-  "LOAD_LANGUAGE_FROM_FILE": "Załaduj język z pliku",
-  "LOG_IN": "Zaloguj",
-  "SYNC": "Synchronizuj",
-  "NOT_LOGGED_IN": "Nie zalogowano",
-  "POE_EDITOR_ERROR": "Błąd POEditora: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "Błąd HTTP: {0} {1}",
-  "LOGGED_IN": "Zalogowano",
-  "SYNCED_SUCCESSFULLY": "Zsynchronizowano poprawnie",
-  "EXCEPTION_ERROR": "Błąd: {0}",
-  "DROP_PALETTE": "Upuść paletę tutaj",
-  "SECURITY_ERROR": "Błąd bezpieczeństwa",
-  "SECURITY_ERROR_MSG": "Brak uprawnień do zapisu w tej lokalizacji.",
-  "IO_ERROR": "Błąd I/O",
-  "IO_ERROR_MSG": "Błąd podczas zapisu na dysku.",
-  "FAILED_ASSOCIATE_PIXI": "Nie udało się powiązać pliku .pixi z PixiEditorem.",
-  "COULD_NOT_SAVE_PALETTE": "Wysąpił błąd poczas zapisu palety kolorów.",
-  "NO_COLORS_TO_SAVE": "Brak kolorów do zapisu.",
-  "ALL_LAYERS": "Wszystkie warstwy",
-  "SINGLE_LAYER": "Pojedyńcza warstwa",
-  "CHOOSE": "Wybierz",
-  "REMOVE": "Usuń",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "Plik nie jest typu \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "Ten plik zawiera niewłaściwe skróty klawiszowe",
-  "FILE_EXTENSION_NOT_SUPPORTED": "Plik '{0}' nie jest wspierany",
-  "ERROR_READING_FILE": "Błąd podczas czytania pliku",
-  "DISCARD_PALETTE": "Odrzuć paletę",
-  "DISCARD_PALETTE_CONFIRMATION": "Czy na pewno chcesz odrzucić aktywną paletę? Nie można tego cofnąć.",
-  "IMPORT_AS_NEW_LAYER": "Importuj jako nowa warstwa",
-  "PASTE_AS_PRIMARY_COLOR": "Wklej jako kolor podstawowy",
-  "IMPORT_AS_NEW_FILE": "Importuj jako nowy plik",
-  "IMPORT_PALETTE_FILE": "Importuj paletę kolorów",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Importuj kolory do palety",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Importuj kolor do palety",
-  "IMPORT_AS_REFERENCE_LAYER": "Importuj jako warstwa referencyjna",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Kilknij prawy przycisk myszy aby pobrać kolor, kliknij z Shiftem aby skopiować kolor do schowka",
-  "OPEN_FILE_FROM_CLIPBOARD": "Otwórz ze schowka",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Otwórz ze schowka",
-  "OPEN_LOCALIZATION_DATA": "Czy chcesz otworzyć plik LocalizationData.json? \nZaktualizowane dane zostały skopiowane do schowka. Zmiany zostaną zaaplikowane dopiero po restarcie aplikacji",
-  "DOWNLOADING_LANGUAGE_FAILED": "Nie udało się pobrać języka. \nMożliwe że klucz API został użyty zbyt wiele razy.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Ścieżka z danymi lokalizacji nie została odnaleziona",
-  "APPLY": "Zastosuj",
-  "UPDATE_SOURCE": "Zaktualizuj źródło",
-  "COPY_TO_CLIPBOARD": "Kopiuj do schowka",
-  "LANGUAGE_FILE_NOT_FOUND": "Język nie znaleziony.\nSzukanie {0}",
-  "PROJECT_ROOT_NOT_FOUND": "Źródło projektu PixiEditor nie zostało odnalezione.\nSzukanie PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Folder z danymi lokalizacji nie został odnaleziony.\nSzukanie /Data/Localization",
-  "SELECT_A_LANGUAGE": "Wybierz język",
-  "DONE": "Zrobione",
-  "SOURCE_UNSET_OR_MISSING": "Brakujące/Nie ustawione źródło",
-  "SOURCE_NEWER": "Źródło jest nowsze",
-  "SOURCE_UP_TO_DATE": "Źródło jest aktualne",
-  "SOURCE_OLDER": "Chmura jest nowsza",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Kliknij aby pobrać kolory z warstwy referencyjnej.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Kliknij aby pobrać kolory z płótna.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Okno debugowania lokalizacji",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Okno debugowania komend",
-  "SHORTCUTS_TITLE": "Skróty klawiszowe",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Przeciągnij uchwyty aby skalować transformację. Przytrzymaj Ctrl i przeciągnij aby przemieścić uchwyt swobodnie. Przytrzymaj Shify aby skalować proporcjonalnie. Przytrzymaj Alt i przeciągnij boczny uchwyt aby ściąć. Porusz zewnętrzne uchwyty aby obracać.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Przeciągnij uchwyty aby skalować transformację. Przytrzymaj Shify aby zrobić to proporcjonalnie. Przytrzymaj Alt i przeciągnij aby ściąć. Przeciągnij zewnętrzne uchwyty aby obracać.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Przeciągnij uchwyty aby skalować transformację. Przytrzymaj Shify aby skalować proporcjonalnie. Przeciągnij zewnętrzne uchwyty aby obracać.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Przeciągnij uchwyty aby skalować transformację. Przytrzymaj Shift aby skalować proporcjonalnie."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/pt-br.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Arquivos Recentes",
-  "OPEN_FILE": "Abrir Arquivo",
-  "NEW_FILE": "Novo",
-  "RECENT_EMPTY_TEXT": "Sem arquivos recentes",
-  "LANGUAGE": "Linguagem",
-  "GENERAL": "Geral",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Atalhos de Teclado",
-  "MISC": "Diversos",
-  "SHOW_STARTUP_WINDOW": "Mostrar janela de inicialização",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Mostrar prévia da imagem na barra de tarefas",
-  "RECENT_FILE_LENGTH": "Número de arquivos recentes exibidos",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Quantos documentos são exibidos em Arquivo > Recentes. Padrão: 8",
-  "DEFAULT_NEW_SIZE": "Novo tamanho padrão de arquivo",
-  "WIDTH": "Largura",
-  "HEIGHT": "Altura",
-  "TOOLS": "Ferramentas",
-  "ENABLE_SHARED_TOOLBAR": "Habilitar barra de ferramentas compartilhada",
-  "AUTOMATIC_UPDATES": "Atualizações Automáticas",
-  "CHECK_FOR_UPDATES": "Verificar as atualizações na inicialização",
-  "UPDATE_STREAM": "Atualizar stream",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Os canais de atualização só podem ser alterados na versão standalone (baixada de https://pixieditor.net).\nAs versões do Steam e da Microsoft Store tratam as atualizações de forma separada.",
-  "DEBUG": "Depurar",
-  "ENABLE_DEBUG_MODE": "Habilitar o modo de depuração",
-  "OPEN_CRASH_REPORTS_DIR": "Abrir o diretório de relatórios de falhas",
-  "DISCORD_RICH_PRESENCE": "Estado de Presença",
-  "ENABLED": "Habilitado",
-  "SHOW_IMAGE_NAME": "Mostrar o nome da imagem",
-  "SHOW_IMAGE_SIZE": "Mostrar o tamanho da imagem",
-  "SHOW_LAYER_COUNT": "Mostrar a contagem de camadas",
-  "FILE": "Arquivo",
-  "RECENT": "Recente",
-  "OPEN": "Abrir",
-  "SAVE_PIXI": "Salvar (.pixi)",
-  "SAVE_AS_PIXI": "Salvar como... (.pixi)",
-  "EXPORT_IMG": "Exportar (.png, .jpg, etc.)",
-  "EDIT": "Editar",
-  "EXIT": "Sair",
-  "PERCENTAGE": "Porcentagem",
-  "ABSOLUTE": "Absoluto",
-  "PRESERVE_ASPECT_RATIO": "Preservar a relação de aspecto",
-  "ANCHOR_POINT": "Ponto de ancoragem",
-  "RESIZE_IMAGE": "Redimensionar imagem",
-  "RESIZE": "Redimensionar",
-  "DOCUMENTATION": "Documentação",
-  "WEBSITE": "Website",
-  "OPEN_WEBSITE": "Abrir website",
-  "REPOSITORY": "Repositório",
-  "OPEN_REPOSITORY": "Abrir repositório",
-  "LICENSE": "Licença",
-  "OPEN_LICENSE": "Abrir licença",
-  "THIRD_PARTY_LICENSES": "Licenças de terceiros",
-  "OPEN_THIRD_PARTY_LICENSES": "Abrir licenças de terceiros",
-  "APPLY_TRANSFORM": "Aplicar a transformação",
-  "INCREASE_TOOL_SIZE": "Aumentar o tamanho da ferramenta",
-  "DECREASE_TOOL_SIZE": "Diminuir o tamanho da ferramenta",
-  "TO_INSTALL_UPDATE": "para instalar a atualização {0}",
-  "DOWNLOADING_UPDATE": "Download da atualização...",
-  "UPDATE_READY": "A atualização está pronta para ser instalada. Deseja instalá-la agora?",
-  "NEW_UPDATE": "Nova atualização",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Não foi possível atualizar sem privilégios de administrador. Execute o PixiEditor como administrador.",
-  "INSUFFICIENT_PERMISSIONS": "Permissões insuficientes",
-  "UPDATE_CHECK_FAILED": "Falha na verificação da atualização",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Não foi possível verificar se há uma atualização disponível.",
-  "VERSION": "Versão {0}",
-  "OPEN_TEMP_DIR": "Abrir o diretório temporário",
-  "OPEN_LOCAL_APPDATA_DIR": "Abra o diretório local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "Abrir o diretório AppData do Roaming",
-  "OPEN_INSTALLATION_DIR": "Abrir o diretório de instalação",
-  "DUMP_ALL_COMMANDS": "Exportar o arquivo de despejo de todos os comandos",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Exportar o arquivo de despejo de todos os comandos para txt",
-  "CRASH": "Falha",
-  "CRASH_APP": "Falha no aplicativo",
-  "DELETE_USR_PREFS": "Excluir as preferências do usuário (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Excluir arquivo de atalho (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Excluir dados do editor (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Gerar modelo de associações de teclas de atalho",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Gerar modelo json de associações de teclas de atalho",
-  "VALIDATE_SHORTCUT_MAP": "Validar mapa de atalhos",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Valida o mapa de atalhos",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Chaves vazias: {0}\nComandos desconhecidos: {1}",
-  "RESULT": "Resultado",
-  "CLEAR_RECENT_DOCUMENTS": "Limpar documentos recentes",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Limpar os documentos abertos recentemente",
-  "OPEN_CMD_DEBUG_WINDOW": "Abrir a janela de depuração de comandos",
-  "PATH_DOES_NOT_EXIST": "{0} não existe.",
-  "LOCATION_DOES_NOT_EXIST": "A localização não existe.",
-  "FILE_NOT_FOUND": "Arquivo não encontrado.",
-  "ARE_YOU_SURE": "Você tem certeza?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Tem certeza de que deseja excluir {0}?\nEsses dados serão perdidos em todas as instalações.\n(Caminho completo: {1})",
-  "FAILED_TO_OPEN_FILE": "Falha ao abrir o arquivo",
-  "OLD_FILE_FORMAT": "Formato de arquivo antigo",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Esse arquivo .pixi usa o formato antigo,\n que não é mais suportado e não pode ser aberto.",
-  "NOTHING_FOUND": "Nada encontrado",
-  "EXPORT": "Exportar",
-  "EXPORT_IMAGE": "Exportar imagem",
-  "IMPORT": "Importar",
-  "SHORTCUT_TEMPLATES": "Modelos de atalho",
-  "RESET_ALL": "Redefinir tudo",
-  "LAYER": "Camada",
-  "LAYER_DELETE_SELECTED": "Excluir a camada/pasta ativa",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Excluir camada ou pasta ativa",
-  "LAYER_DELETE_ALL_SELECTED": "Excluir todas as camadas/pastas selecionadas",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Excluir todas as camadas e/ou pastas selecionadas",
-  "DELETE_SELECTED_PIXELS": "Excluir pixels selecionados",
-  "NEW_FOLDER": "Nova pasta",
-  "CREATE_NEW_FOLDER": "Criar nova pasta",
-  "NEW_LAYER": "Nova camada",
-  "CREATE_NEW_LAYER": "Criar uma nova camada",
-  "NEW_IMAGE": "Nova imagem",
-  "CREATE_NEW_IMAGE": "Criar uma nova imagem",
-  "SAVE": "Salvar",
-  "SAVE_AS": "Salvar como...",
-  "IMAGE": "Imagem",
-  "SAVE_IMAGE": "Salvar a imagem",
-  "SAVE_IMAGE_AS": "Salvar a imagem como nova",
-  "DUPLICATE": "Duplicar",
-  "DUPLICATE_SELECTED_LAYER": "Duplicar camada selecionada",
-  "CREATE_MASK": "Criar máscara",
-  "DELETE_MASK": "Deletar máscara",
-  "TOGGLE_MASK": "Alternar a visibilidade da máscara",
-  "APPLY_MASK": "Aplicar máscara",
-  "TOGGLE_VISIBILITY": "Alternar a visibilidade",
-  "MOVE_MEMBER_UP": "Mova a barra para cima",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Mover para cima a camada ou pasta selecionada",
-  "MOVE_MEMBER_DOWN": "Mova a barra para baixo",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Mover a camada ou pasta selecionada para baixo",
-  "MERGE_ALL_SELECTED_LAYERS": "Mesclar todas as camadas selecionadas",
-  "MERGE_WITH_ABOVE": "Mesclar a camada com a camada acima",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Mesclar a camada selecionada com a camada acima",
-  "MERGE_WITH_BELOW": "Mesclar a camada com a camada abaixo",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Mesclar a camada selecionada com a camada abaixo",
-  "ADD_REFERENCE_LAYER": "Adicionar camada de referência",
-  "DELETE_REFERENCE_LAYER": "Deletar camada de referência",
-  "TRANSFORM_REFERENCE_LAYER": "Transformar a camada de referência",
-  "TOGGLE_REFERENCE_LAYER_POS": "Alternar posição da camada de referência",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Alternar a camada de referência entre a mais alta ou a mais baixa",
-  "RESET_REFERENCE_LAYER_POS": "Redefinir posição da camada de referência",
-  "CLIP_CANVAS": "Cortar tela",
-  "FLIP_IMG_VERTICALLY": "Virar a imagem verticalmente",
-  "FLIP_IMG_HORIZONTALLY": "Virar a imagem horizontalmente",
-  "FLIP_LAYERS_VERTICALLY": "Virar Camadas Selecionadas Verticalmente",
-  "FLIP_LAYERS_HORIZONTALLY": "Virar Camadas Selecionadas Horizontalmente",
-  "ROT_IMG_90": "Girar imagem 90 graus",
-  "ROT_IMG_180": "Girar imagem 180 graus",
-  "ROT_IMG_-90": "Girar imagem -90 graus",
-  "ROT_LAYERS_90": "Girar imagens selecionadas 90 graus",
-  "ROT_LAYERS_180": "Girar imagens selecionadas 180 graus",
-  "ROT_LAYERS_-90": "Girar imagens selecionadas -90 graus",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Alternar a visibilidade de simetria vertical",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Alternar a visibilidade de simetria horizontal",
-  "DELETE_PIXELS": "Deletar pixels",
-  "DELETE_PIXELS_DESCRIPTIVE": "Deletar pixels selecionados",
-  "RESIZE_DOCUMENT": "Redimensionar documento",
-  "RESIZE_CANVAS": "Redimensionar tela",
-  "CENTER_CONTENT": "Centralizar conteúdo",
-  "CUT": "Cortar",
-  "CUT_DESCRIPTIVE": "Cortar área/camadas selecionadas",
-  "PASTE": "Colar",
-  "PASTE_DESCRIPTIVE": "Colar área/camadas selecionadas",
-  "PASTE_AS_NEW_LAYER": "Colar como nova camada",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Colar da área de transferência como nova camada",
-  "PASTE_REFERENCE_LAYER": "Colar para a camada de referência",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Colar o conteúdo da área de transferência como camada de referência",
-  "PASTE_COLOR": "Colar Cor",
-  "PASTE_COLOR_DESCRIPTIVE": "Colar cor da área de transferência",
-  "PASTE_COLOR_SECONDARY": "Colar cor secundária",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Colar a cor da área de transferência como cor secundária",
-  "CLIPBOARD": "Área de transferência",
-  "COPY": "Copiar",
-  "COPY_DESCRIPTIVE": "Copiar para a área de transferência",
-  "COPY_COLOR_HEX": "Copiar cor primária (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Copiar a cor primária como código HEX",
-  "COPY_COLOR_RGB": "Copiar cor primária (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Copiar a cor primária como código RGB",
-  "COPY_COLOR_SECONDARY_HEX": "Copiar cor secundária (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Copiar a cor secundária como código HEX",
-  "COPY_COLOR_SECONDARY_RGB": "Copiar cor secundária (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Copiar a cor secundária como código RGB",
-  "PALETTE_COLORS": "Cores da paleta",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Substituir a cor secundária pela primária",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Substitua a cor secundária pela cor primária",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Substitua a cor primária pela secundária",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Substitua a cor primária pela cor secundária",
-  "OPEN_PALETTE_BROWSER": "Abrir o navegador da paleta",
-  "OVERWRITE_PALETTE_CONSENT": "A paleta '{0}' já existe, você deseja substituí-la?",
-  "PALETTE_EXISTS": "A paleta já existe",
-  "REPLACE_PALETTE_CONSENT": "Substituir a paleta atual pela selecionada?",
-  "REPLACE_PALETTE": "Substituir a paleta atual",
-  "SELECT_COLOR_1": "Selecione a cor 1",
-  "SELECT_COLOR_2": "Selecione a cor 2",
-  "SELECT_COLOR_3": "Selecione a cor 3",
-  "SELECT_COLOR_4": "Selecione a cor 4",
-  "SELECT_COLOR_5": "Selecione a cor 5",
-  "SELECT_COLOR_6": "Selecione a cor 6",
-  "SELECT_COLOR_7": "Selecione a cor 7",
-  "SELECT_COLOR_8": "Selecione a cor 8",
-  "SELECT_COLOR_9": "Selecione a cor 9",
-  "SELECT_COLOR_10": "Selecione a cor 10",
-  "SELECT_TOOL": "Selecionar {0} Ferramenta",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Selecione a primeira cor na paleta",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Selecione a segunda cor na paleta",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Selecione a terceira cor na paleta",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Selecione a quarta cor na paleta",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Selecione a quinta cor na paleta",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Selecione a sexta cor na paleta",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Selecione a sétima cor na paleta",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Selecione a oitava cor na paleta",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Selecione a nona cor na paleta",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Selecione a décima cor na paleta",
-  "SWAP_COLORS": "Trocar cores",
-  "SWAP_COLORS_DESCRIPTIVE": "Trocar cores primárias e secundárias",
-  "SEARCH": "Pesquisar",
-  "COMMAND_SEARCH": "Pesquisa de comandos",
-  "OPEN_COMMAND_SEARCH": "Abrir a janela de pesquisa de comandos",
-  "SELECT": "Selecionar",
-  "DESELECT": "Desselecionar",
-  "INVERT": "Inverter",
-  "SELECTION": "Seleção",
-  "SELECT_ALL": "Selecionar tudo",
-  "SELECT_ALL_DESCRIPTIVE": "Selecione tudo",
-  "CLEAR_SELECTION": "Limpar seleção",
-  "INVERT_SELECTION": "Inverter seleção",
-  "INVERT_SELECTION_DESCRIPTIVE": "Inverter a seleção",
-  "TRANSFORM_SELECTED_AREA": "Transformar área selecionada",
-  "NUDGE_SELECTED_LEFT": "Deslocar o objeto selecionado para a esquerda",
-  "NUDGE_SELECTED_RIGHT": "Deslocar o objeto selecionado para a direita",
-  "NUDGE_SELECTED_UP": "Deslocar o objeto selecionado para acima",
-  "NUDGE_SELECTED_DOWN": "Deslocar o objeto selecionado para abaixo",
-  "MASK_FROM_SELECTION": "Nova máscara a partir da seleção",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Seleção para nova máscara",
-  "ADD_SELECTION_TO_MASK": "Adicionar seleção à máscara",
-  "SUBTRACT_SELECTION_FROM_MASK": "Subtrair a seleção da máscara",
-  "INTERSECT_SELECTION_MASK": "Seleção de interseção com máscara",
-  "SELECTION_TO_MASK": "Seleção para máscara",
-  "TO_NEW_MASK": "Para a nova máscara",
-  "ADD_TO_MASK": "Adicionar à máscara",
-  "SUBTRACT_FROM_MASK": "Subtrair da máscara",
-  "INTERSECT_WITH_MASK": "Interseção com máscara",
-  "STYLUS": "Caneta",
-  "TOGGLE_PEN_MODE": "Alternar o modo de caneta",
-  "UNDO": "Desfazer",
-  "UNDO_DESCRIPTIVE": "Desfazer a última ação",
-  "REDO": "Refazer",
-  "REDO_DESCRIPTIVE": "Refazer a última ação",
-  "WINDOWS": "Janelas",
-  "TOGGLE_GRIDLINES": "Alternar linhas guia",
-  "ZOOM_IN": "Aumentar o zoom",
-  "ZOOM_OUT": "Diminuir o zoom",
-  "NEW_WINDOW_FOR_IMG": "Nova janela para a imagem atual",
-  "CENTER_ACTIVE_VIEWPORT": "Centralizar a janela de exibição ativa",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Inverter a janela de exibição horizontalmente",
-  "FLIP_VIEWPORT_VERTICALLY": "Inverter a janela de visualização verticalmente",
-  "SETTINGS": "Configurações",
-  "OPEN_SETTINGS": "Abrir configurações",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Abrir a janela de configurações",
-  "OPEN_STARTUP_WINDOW": "Abrir a janela de inicialização",
-  "OPEN_SHORTCUT_WINDOW": "Abrir a janela de atalhos",
-  "OPEN_ABOUT_WINDOW": "Abrir a janela sobre",
-  "OPEN_NAVIGATION_WINDOW": "Abrir a janela de navegação",
-  "ERROR": "Erro",
-  "INTERNAL_ERROR": "Erro interno",
-  "ERROR_SAVE_LOCATION": "Não foi possível salvar o arquivo no local especificado",
-  "ERROR_WHILE_SAVING": "Ocorreu um erro interno ao salvar. Tente novamente.",
-  "UNKNOWN_ERROR_SAVING": "Ocorreu um erro ao salvar.",
-  "FAILED_ASSOCIATE_LOSPEC": "Falha ao associar o protocolo da paleta Lospec.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Doação",
-  "YES": "Sim",
-  "NO": "Não",
-  "CANCEL": "Cancelar",
-  "UNNAMED": "Sem nome",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Abrir a janela de depuração de comandos",
-  "DELETE": "Deletar",
-  "USER_PREFS": "Preferências do usuário (Roaming)",
-  "SHORTCUT_FILE": "Arquivo de atalho (Roaming)",
-  "EDITOR_DATA": "Dados do editor (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Move a janela de visualização. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Clique e mova para deslocar a janela de visualização",
-  "MOVE_TOOL_TOOLTIP": "Move os pixels selecionados ({0}). Mantenha pressionada a tecla Ctrl para mover todas as camadas.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Mantenha o mouse pressionado para mover os pixels selecionados. Mantenha pressionada a tecla Ctrl para mover todas as camadas.",
-  "PEN_TOOL_TOOLTIP": "Caneta. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Clique e movimente para desenhar.",
-  "PIXEL_PERFECT_SETTING": "Pixel perfeito",
-  "RECTANGLE_TOOL_TOOLTIP": "Desenha um retângulo na tela ({0}). Mantenha pressionada a tecla Shift para desenhar um quadrado.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova para desenhar um retângulo. Mantenha pressionada a tecla Shift para desenhar um quadrado.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Clique e movimente para desenhar um quadrado.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Manter imagem original",
-  "ROTATE_VIEWPORT_TOOLTIP": "Gira a janela de visualização. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Clique e mova para girar a janela de visualização",
-  "SELECT_TOOL_TOOLTIP": "Seleciona a área. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova para selecionar uma área. Mantenha pressionada a tecla Shift para adicionar à seleção existente. Mantenha pressionada a tecla Ctrl para subtraí-la.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Clique e mova para adicionar à seleção atual.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Clique e mova para subtrair da seleção atual.",
-  "ZOOM_TOOL_TOOLTIP": "Amplia a janela de visualização ({0}). Clique para aumentar o zoom, mantenha pressionada a tecla Alt e clique para diminuir o zoom.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova para dar zoom. Clique para aumentar o zoom, mantenha pressionada a tecla Ctrl e clique para diminuir o zoom.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Clique e mova para dar zoom. Clique para diminuir o zoom, solte a tecla Ctrl e clique para aumentar o zoom.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Torna os pixels mais claros ou mais escuros ({0}). Mantenha pressionada a tecla Ctrl para tornar os pixels mais escuros.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Desenhe nos pixels para torná-los mais brilhantes. Mantenha pressionada a tecla Ctrl para escurecer.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Desenhe nos pixels para torná-los mais escuros. Solte a tecla Ctrl para clarear.",
-  "COLOR_PICKER_TOOLTIP": "Seleciona a cor primária da tela. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Clique para escolher as cores. Mantenha pressionada a tecla Ctrl para ocultar a tela. Mantenha pressionada a tecla Shift para ocultar a camada de referência",
-  "ELLIPSE_TOOL_TOOLTIP": "Desenha uma elipse na tela ({0}). Mantenha pressionada a tecla Shift para desenhar um círculo.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova o mouse para desenhar uma elipse. Mantenha pressionada a tecla Shift para desenhar um círculo.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Clique e mova o mouse para desenhar um círculo.",
-  "ERASER_TOOL_TOOLTIP": "Apaga a cor do pixel. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Clique e movimente para apagar.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Preenche a área com cor. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Pressione em uma área para preenchê-la. Mantenha pressionada a tecla Ctrl para considerar todas as camadas.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Pressione em uma área para preenchê-la. Solte a tecla Ctrl para considerar apenas as camadas atuais.",
-  "LASSO_TOOL_TOOLTIP": "Laço. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova para selecionar pixels dentro do laço. Mantenha pressionada a tecla Shift para adicionar à seleção existente. Mantenha pressionada a tecla Ctrl para subtraí-la.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Clique e mova para adicionar pixels dentro do laço à seleção.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Clique e mova para subtrair da seleção os pixels dentro do laço.",
-  "LINE_TOOL_TOOLTIP": "Desenha uma linha na tela ({0}). Mantenha pressionada a tecla Shift para ativar o encaixe.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Clique e mova para desenhar uma linha. Mantenha pressionada a tecla Shift para ativar o encaixe.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Clique e mova o mouse para desenhar uma linha com o encaixe ativado.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Varinha mágica ({0}). Ferramenta de seleção contígua",
-  "MAGIC_WAND_ACTION_DISPLAY": "Clique para preencher a seleção.",
-  "PEN_TOOL": "Caneta",
-  "BRIGHTNESS_TOOL": "Brilho",
-  "COLOR_PICKER_TOOL": "Seletor de cores",
-  "ELLIPSE_TOOL": "Elipse",
-  "ERASER_TOOL": "Borracha",
-  "FLOOD_FILL_TOOL": "Preenchimento",
-  "LASSO_TOOL": "Laço",
-  "LINE_TOOL": "Linha",
-  "MAGIC_WAND_TOOL": "Varinha mágica",
-  "MOVE_TOOL": "Mover",
-  "MOVE_VIEWPORT_TOOL": "Mover a tela",
-  "RECTANGLE_TOOL": "Retângulo",
-  "ROTATE_VIEWPORT_TOOL": "Girar a tela",
-  "SELECT_TOOL_NAME": "Selecionar",
-  "ZOOM_TOOL": "Zoom",
-  "SHAPE_LABEL": "Forma",
-  "MODE_LABEL": "Modo",
-  "SCOPE_LABEL": "Referência",
-  "FILL_SHAPE_LABEL": "Preencher forma",
-  "FILL_COLOR_LABEL": "Cor de preenchimento",
-  "TOOL_SIZE_LABEL": "Tamanho da ferramenta",
-  "STRENGTH_LABEL": "Força",
-  "NEW": "novo",
-  "ADD": "Adicionar",
-  "SUBTRACT": "Subtrair",
-  "INTERSECT": "Intersectar",
-  "RECTANGLE": "Retângulo",
-  "CIRCLE": "Círculo",
-  "ABOUT": "Sobre",
-  "MINIMIZE": "Minimizar",
-  "RESTORE": "Restaurar",
-  "MAXIMIZE": "Maximizar",
-  "CLOSE": "Fechar",
-  "EXPORT_SIZE_HINT": "Se quiser compartilhar a imagem, tente {0}% para obter a melhor nitidez",
-  "CREATE": "Criar",
-  "BASE_LAYER_NAME": "Camada base",
-  "ENABLE_MASK": "Habilitar máscara",
-  "SELECTED_AREA_EMPTY": "A área selecionada está vazia",
-  "NOTHING_TO_COPY": "Não há nada para copiar",
-  "REFERENCE_LAYER_PATH": "Caminho de camada de referência",
-  "FLIP": "Virar",
-  "ROTATION": "Girar",
-  "ROT_IMG_90_D": "Girar a imagem 90°",
-  "ROT_IMG_180_D": "Girar a imagem 180°",
-  "ROT_IMG_-90_D": "Girar a imagem -90°",
-  "ROT_LAYERS_90_D": "Girar a imagem selecionada a 90°",
-  "ROT_LAYERS_180_D": "Girar a imagem selecionada a 180°",
-  "ROT_LAYERS_-90_D": "Girar a imagem selecionada a -90°",
-  "UNNAMED_PALETTE": "Paleta sem nome",
-  "CLICK_SELECT_PRIMARY": "Clique para selecionar a cor principal.",
-  "PEN_MODE": "Modo caneta",
-  "VIEW": "Exibir",
-  "HORIZONTAL_LINE_SYMMETRY": "Simetria de linha horizontal",
-  "VERTICAL_LINE_SYMMETRY": "Simetria de linha vertical",
-  "COLOR_PICKER_TITLE": "Seletor de cor",
-  "COLOR_SLIDERS_TITLE": "Controle deslizante de cores",
-  "PALETTE_TITLE": "Paleta",
-  "SWATCHES_TITLE": "Amostras",
-  "LAYERS_TITLE": "Camadas",
-  "NAVIGATION_TITLE": "Navegador",
-  "NORMAL_BLEND_MODE": "Normal",
-  "DARKEN_BLEND_MODE": "Escurecer",
-  "MULTIPLY_BLEND_MODE": "Multiplicar",
-  "COLOR_BURN_BLEND_MODE": "Queimar",
-  "LIGHTEN_BLEND_MODE": "Clarear",
-  "SCREEN_BLEND_MODE": "Tela",
-  "COLOR_DODGE_BLEND_MODE": "Subexposição",
-  "OVERLAY_BLEND_MODE": "Sobreposição",
-  "SOFT_LIGHT_BLEND_MODE": "Luz suave",
-  "HARD_LIGHT_BLEND_MODE": "Luz forte",
-  "DIFFERENCE_BLEND_MODE": "Diferença",
-  "EXCLUSION_BLEND_MODE": "Exclusão",
-  "HUE_BLEND_MODE": "Matiz",
-  "SATURATION_BLEND_MODE": "Saturação",
-  "LUMINOSITY_BLEND_MODE": "Luminosidade",
-  "COLOR_BLEND_MODE": "Cor",
-  "NOT_SUPPORTED_BLEND_MODE": "Não suportado",
-  "RESTART": "Reiniciar",
-  "SORT_BY": "Ordenar por",
-  "NAME": "Nome",
-  "COLORS": "Cores",
-  "DEFAULT": "Padrão",
-  "ALPHABETICAL": "Alfabético",
-  "COLOR_COUNT": "Contagem de cores",
-  "ANY": "Qualquer",
-  "MAX": "Máx",
-  "MIN": "Min",
-  "EXACT": "Exato",
-  "ASCENDING": "Crescente",
-  "DESCENDING": "Decrescente",
-  "NAME_IS_TOO_LONG": "O nome é muito longo",
-  "STOP_IT_TEXT1": "É o bastante. Arrume seus nomes de arquivo.",
-  "STOP_IT_TEXT2": "Você pode parar de copiar esses nomes, por favor?",
-  "REPLACER_TOOLTIP": "Clique com o botão direito na cor da paleta e escolha 'Substituir' ou solte-a aqui.",
-  "CLICK_TO_CHOOSE_COLOR": "Clique para escolher a cor",
-  "REPLACE_COLOR": "Substituir cor",
-  "PALETTE_COLOR_TOOLTIP": "Clique para selecionar como cor principal. Arraste e solte em outra cor da paleta para trocá-los.",
-  "ADD_FROM_SWATCHES": "Adicionar de amostras",
-  "ADD_COLOR_TO_PALETTE": "Adicionar cor à paleta",
-  "USE_IN_CURRENT_IMAGE": "Usar na imagem atual",
-  "ADD_TO_FAVORITES": "Adicionar aos favoritos",
-  "BROWSE_PALETTES": "Procurar paletas",
-  "LOAD_PALETTE": "Carregar paleta",
-  "SAVE_PALETTE": "Salvar paleta",
-  "FAVORITES": "Favoritos",
-  "ADD_FROM_CURRENT_PALETTE": "Adicionar da paleta atual",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Abrir o diretório de paletas no Explorer",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Procure paletas na Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Importar de um arquivo",
-  "TOP_LEFT": "Superior esquerdo",
-  "TOP_CENTER": "Centro superior",
-  "TOP_RIGHT": "Superior direito",
-  "MIDDLE_LEFT": "Meio à esquerda",
-  "MIDDLE_CENTER": "Centro médio",
-  "MIDDLE_RIGHT": "Meio à direita",
-  "BOTTOM_LEFT": "Inferior esquerdo",
-  "BOTTOM_CENTER": "Centro inferior",
-  "BOTTOM_RIGHT": "Inferior direito",
-  "CLIP_TO_BELOW": "Clipar para a camada abaixo",
-  "MOVE_UPWARDS": "Mover para acima",
-  "MOVE_DOWNWARDS": "Mover para abaixo",
-  "MERGE_SELECTED": "Mesclar selecionados",
-  "LOCK_TRANSPARENCY": "Bloquear transparência",
-  "COULD_NOT_LOAD_PALETTE": "Não foi possível obter paletas",
-  "NO_PALETTES_FOUND": "Nenhuma paleta encontrada.",
-  "LOSPEC_LINK_TEXT": "Ouvi dizer que você pode encontrar algumas aqui: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Navegador de paleta",
-  "DELETE_PALETTE_CONFIRMATION": "Tem certeza de que deseja excluir essa paleta? Isso não pode ser desfeito.",
-  "SHORTCUTS_IMPORTED": "Os atalhos de {0} foram importados com êxito.",
-  "SHORTCUT_PROVIDER_DETECTED": "Detectamos que você tem o {0} instalado. Deseja importar atalhos dele?",
-  "IMPORT_FROM_INSTALLATION": "Importar a partir da instalação",
-  "IMPORT_INSTALLATION_OPTION1": "Importar da instalação",
-  "IMPORT_INSTALLATION_OPTION2": "Usar padrões",
-  "IMPORT_FROM_TEMPLATE": "Importar do modelo",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Os atalhos foram importados com sucesso.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Tem certeza de que deseja redefinir todos os atalhos para o valor padrão?",
-  "SUCCESS": "Sucesso",
-  "WARNING": "Atenção",
-  "ERROR_IMPORTING_IMAGE": "Ocorreu um erro ao importar a imagem.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Arquivo de atalhos corrompido",
-  "SHORTCUTS_CORRUPTED": "O arquivo de atalhos foi corrompido, sendo redefinido para o padrão.",
-  "FAILED_DOWNLOAD_PALETTE": "Falha no download da paleta",
-  "FILE_INCORRECT_FORMAT": "O arquivo não estava no formato correto",
-  "INVALID_FILE": "Arquivo inválido",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "O arquivo de atalhos não estava em um formato correto",
-  "UNSUPPORTED_FILE_FORMAT": "Este formato de arquivo não é suportado",
-  "ALREADY_ASSIGNED": "Já atribuído",
-  "REPLACE": "Substituir",
-  "SWAP": "Trocar",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Esse atalho já está atribuído a '{0}'\nVocê deseja substituir o atalho existente ou trocar os dois?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Esse atalho já está atribuído a '{0}'\nDeseja substituir o atalho existente?",
-  "UNSAVED_CHANGES": "Alterações não salvas",
-  "DOCUMENT_MODIFIED_SAVE": "O documento foi modificado. Deseja salvar as alterações?",
-  "SESSION_UNSAVED_DATA": "{0} com dados não salvos. Tem certeza?",
-  "PROJECT_MAINTAINERS": "Mantenedores do Projeto",
-  "OTHER_AWESOME_CONTRIBUTORS": "E outros colaboradores incríveis",
-  "HELP": "Ajuda",
-  "STOP_IT_TEXT3": "Não, sério, pare com isso.",
-  "STOP_IT_TEXT4": "Não tem nada melhor para fazer?",
-  "LINEAR_DODGE_BLEND_MODE": "Subexposição linear (Adicionar)",
-  "PRESS_ANY_KEY": "Pressione qualquer tecla",
-  "NONE_SHORTCUT": "Nenhum",
-  "REFERENCE": "Referência",
-  "PUT_REFERENCE_LAYER_ABOVE": "Coloque a camada de referência acima",
-  "PUT_REFERENCE_LAYER_BELOW": "Coloque a camada de referência abaixo",
-  "TOGGLE_VERTICAL_SYMMETRY": "Alternar simetria vertical",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Alternar simetria horizontal",
-  "RESET_VIEWPORT": "Redefinir a janela de exibição",
-  "VIEWPORT_SETTINGS": "Configurações de janela de visualização",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Clique e mantenha o mouse pressionado para mover os pixels nas camadas selecionadas.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Mantenha o mouse pressionado para mover todas as camadas.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Renomear",
-  "PIXEL_UNIT": "px",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Abrir janela de depuração de localização",
-  "FORCE_OTHER_FLOW_DIRECTION": "Forçar outra direção de fluxo",
-  "API_KEY": "Chave API",
-  "LOCALIZATION_VIEW_TYPE": "Tipo de visualização da localização",
-  "LOAD_LANGUAGE_FROM_FILE": "Carregar idioma de um arquivo",
-  "LOG_IN": "Fazer login",
-  "SYNC": "Sincronizar",
-  "NOT_LOGGED_IN": "Não conectado",
-  "POE_EDITOR_ERROR": "POEditor Error: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP Error: {0} {1}",
-  "LOGGED_IN": "Conectado",
-  "SYNCED_SUCCESSFULLY": "Sincronização bem-sucedida",
-  "EXCEPTION_ERROR": "Exceção: {0}",
-  "DROP_PALETTE": "Solte a paleta aqui",
-  "SECURITY_ERROR": "Erro de segurança",
-  "SECURITY_ERROR_MSG": "Sem permissão para gravação no local especificado.",
-  "IO_ERROR": "Erro de IO",
-  "IO_ERROR_MSG": "Erro ao gravar no disco.",
-  "FAILED_ASSOCIATE_PIXI": "Falha ao associar o arquivo .pixi ao PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Ocorreu um erro ao salvar a paleta.",
-  "NO_COLORS_TO_SAVE": "Não há cores para salvar.",
-  "ALL_LAYERS": "Todas as camadas",
-  "SINGLE_LAYER": "Camada única",
-  "CHOOSE": "Selecionar",
-  "REMOVE": "Remover",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "O arquivo não é um arquivo \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "O arquivo contém um atalho inválido",
-  "FILE_EXTENSION_NOT_SUPPORTED": "O tipo de arquivo '{0}' não é compatível",
-  "ERROR_READING_FILE": "Erro ao ler o arquivo",
-  "DISCARD_PALETTE": "Descartar paleta",
-  "DISCARD_PALETTE_CONFIRMATION": "Tem certeza de que deseja descartar a paleta atual? Isso não pode ser desfeito.",
-  "IMPORT_AS_NEW_LAYER": "Importar como uma nova camada",
-  "PASTE_AS_PRIMARY_COLOR": "Colar como cor primária",
-  "IMPORT_AS_NEW_FILE": "Importar como novo arquivo",
-  "IMPORT_PALETTE_FILE": "Importar arquivo da paleta",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Importar cores para a paleta",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Importar cor para a paleta",
-  "IMPORT_AS_REFERENCE_LAYER": "Importar como camada de referência",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Clique com o botão direito do mouse para escolher a cor, Shift e clique com o botão direito do mouse para copiar a cor para a área de transferência",
-  "OPEN_FILE_FROM_CLIPBOARD": "Abrir da área de transferência",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Abrir a partir da área de transferência",
-  "OPEN_LOCALIZATION_DATA": "Deseja abrir o LocalizationData.json? A data atualizada foi colocada na área de transferência.\nObserve que as alterações não serão aplicadas até a reinicialização",
-  "DOWNLOADING_LANGUAGE_FAILED": "O download do idioma falhou.\nA chave da API pode ter sido usada em excesso.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Caminho de dados de localização não encontrado",
-  "APPLY": "Aplicar",
-  "UPDATE_SOURCE": "Atualizar fonte",
-  "COPY_TO_CLIPBOARD": "Copiar para a área de transferência",
-  "LANGUAGE_FILE_NOT_FOUND": "Arquivo de idioma não encontrado.\nProcurando por {0}",
-  "PROJECT_ROOT_NOT_FOUND": "Raiz do projeto PixiEditor não encontrada.\nProcurando por PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Pasta de localização não encontrada.\nProcurando por /Data/Localization",
-  "SELECT_A_LANGUAGE": "Selecione um idioma",
-  "DONE": "Concluído",
-  "SOURCE_UNSET_OR_MISSING": "Fonte ausente/não definida",
-  "SOURCE_NEWER": "Fonte mais recente",
-  "SOURCE_UP_TO_DATE": "A fonte está atualizada",
-  "SOURCE_OLDER": "Mais recente na nuvem",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/ru.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Недавние файлы",
-  "OPEN_FILE": "Открыть файл",
-  "NEW_FILE": "Новый",
-  "RECENT_EMPTY_TEXT": "Чего-то тут пустовато",
-  "LANGUAGE": "Язык",
-  "GENERAL": "Общие",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Сочетания клавиш",
-  "MISC": "Разное",
-  "SHOW_STARTUP_WINDOW": "Показывать окно приветствия",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Отображать редактируемую картинку на иконке на панели задач",
-  "RECENT_FILE_LENGTH": "Длина списка недавних файлов",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Сколько файлов показывать в списке Файл > Недавние. По умолчанию - 8.",
-  "DEFAULT_NEW_SIZE": "Размер нового файла по умолчанию",
-  "WIDTH": "Ширина",
-  "HEIGHT": "Высота",
-  "TOOLS": "Инструменты",
-  "ENABLE_SHARED_TOOLBAR": "Использовать одни и те же настройки для всех инструментов",
-  "AUTOMATIC_UPDATES": "Автообновление",
-  "CHECK_FOR_UPDATES": "Проверять наличие обновлений при запуске",
-  "UPDATE_STREAM": "Поток обновлений",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Потоки обновлений можно выбирать только в версии PixiEditor, скачанной с сайта https://pixieditor.net.\nВерсии из Steam и Microsoft Store обновляются сами через соответствующие площадки.",
-  "DEBUG": "Отладка",
-  "ENABLE_DEBUG_MODE": "Включить режим отладки",
-  "OPEN_CRASH_REPORTS_DIR": "Открыть папку с отчетами об ошибках",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Включить",
-  "SHOW_IMAGE_NAME": "Показывать имя файла",
-  "SHOW_IMAGE_SIZE": "Показывать размер холста",
-  "SHOW_LAYER_COUNT": "Показывать кол-во слоев",
-  "FILE": "Файл",
-  "RECENT": "Недавнее",
-  "OPEN": "Открыть",
-  "SAVE_PIXI": "Сохранить (.pixi)",
-  "SAVE_AS_PIXI": "Сохранить как... (.pixi)",
-  "EXPORT_IMG": "Экспорт (.png, .jpg, и т.п.)",
-  "EDIT": "Редактирование",
-  "EXIT": "Выход",
-  "PERCENTAGE": "Процент",
-  "ABSOLUTE": "Абсолютный размер",
-  "PRESERVE_ASPECT_RATIO": "Сохранять пропорции",
-  "ANCHOR_POINT": "Расположение",
-  "RESIZE_IMAGE": "Размер изображения...",
-  "RESIZE": "Изменить размер",
-  "DOCUMENTATION": "Документация",
-  "WEBSITE": "Сайт",
-  "OPEN_WEBSITE": "Открыть сайт",
-  "REPOSITORY": "Репозиторий",
-  "OPEN_REPOSITORY": "Открыть репозиторий",
-  "LICENSE": "Лицензия",
-  "OPEN_LICENSE": "Открыть лицензию",
-  "THIRD_PARTY_LICENSES": "Лицензии третьих сторон",
-  "OPEN_THIRD_PARTY_LICENSES": "Открыть лицензии третьих сторон",
-  "APPLY_TRANSFORM": "Применить трансформирование",
-  "INCREASE_TOOL_SIZE": "Увеличить размер кисти",
-  "DECREASE_TOOL_SIZE": "Уменьшить размер кисти",
-  "TO_INSTALL_UPDATE": "для установки обновления {0}",
-  "DOWNLOADING_UPDATE": "Скачивается обновление...",
-  "UPDATE_READY": "Обновление готово к установке. Установить его сейчас?",
-  "NEW_UPDATE": "Обновление",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Для обновления нужны права администратора. Пожалуйста, запустите PixiEditor от имени администратора.",
-  "INSUFFICIENT_PERMISSIONS": "Недостаточно прав",
-  "UPDATE_CHECK_FAILED": "Проверка обновлений не удалась",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Не удалось проверить наличие обновлений",
-  "VERSION": "Версия {0}",
-  "OPEN_TEMP_DIR": "Открыть папку Temp",
-  "OPEN_LOCAL_APPDATA_DIR": "Открыть папку Local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "Открыть папку Roaming AppData",
-  "OPEN_INSTALLATION_DIR": "Открыть папку установки",
-  "DUMP_ALL_COMMANDS": "Выгрузить команды",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Выгрузить все команды в файл",
-  "CRASH": "Крашнуть",
-  "CRASH_APP": "Крашнуть",
-  "DELETE_USR_PREFS": "Удалить файл с настройками пользователя (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Удалить файл с сочетаниями клавиш (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Удалить данные редактора (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Сгенерировать шаблон файла с сочетаниями клавиш",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Сгенерировать шаблон json-файла с сочетаниями клавиш",
-  "VALIDATE_SHORTCUT_MAP": "Проверить файл с сочетаниями клавиш",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Проверить файл с сочетаниями клавиш",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Пустые ключи: {0}\nНеизвестные команды: {1}",
-  "RESULT": "Итог",
-  "CLEAR_RECENT_DOCUMENTS": "Очистить недавнее",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Очистить список недавно открытых файлов",
-  "OPEN_CMD_DEBUG_WINDOW": "Открыть окно для отладки команд",
-  "PATH_DOES_NOT_EXIST": "Папки или файла {0} не существует.",
-  "LOCATION_DOES_NOT_EXIST": "Неверный путь.",
-  "FILE_NOT_FOUND": "Файл не найден.",
-  "ARE_YOU_SURE": "Точно?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Вы точно хотите удалить {0}? Данные будут стерты из всех установленных версий PixiEditor.\n(Полный путь: {1})",
-  "FAILED_TO_OPEN_FILE": "Не удалось открыть файл",
-  "OLD_FILE_FORMAT": "Файл устаревшего формата",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Этот файл .pixi был создан в старой версии PixiEditor и имеет формат, который больше не поддерживается.",
-  "NOTHING_FOUND": "Ничего не найдено",
-  "EXPORT": "Экспорт",
-  "EXPORT_IMAGE": "Экспорт изображения",
-  "IMPORT": "Импорт",
-  "SHORTCUT_TEMPLATES": "Шаблоны сочетаний клавиш",
-  "RESET_ALL": "Сбросить",
-  "LAYER": "Слои",
-  "LAYER_DELETE_SELECTED": "Удалить активный слой/папку",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Удалить активный слой или папку",
-  "LAYER_DELETE_ALL_SELECTED": "Удалить все выбранные слои/папки",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Удалить все выбранные слои и/или папки",
-  "DELETE_SELECTED_PIXELS": "Очистить выделенную область",
-  "NEW_FOLDER": "Новая папка",
-  "CREATE_NEW_FOLDER": "Создать новую папку",
-  "NEW_LAYER": "Новый слой",
-  "CREATE_NEW_LAYER": "Создать новый слой",
-  "NEW_IMAGE": "Новый файл",
-  "CREATE_NEW_IMAGE": "Создать новый файл",
-  "SAVE": "Сохранить",
-  "SAVE_AS": "Сохранить как...",
-  "IMAGE": "Изображение",
-  "SAVE_IMAGE": "Сохранить файл",
-  "SAVE_IMAGE_AS": "Сохранить в новый файл",
-  "DUPLICATE": "Создать дубликат слоя",
-  "DUPLICATE_SELECTED_LAYER": "Дублировать выбранный слой",
-  "CREATE_MASK": "Создать маску",
-  "DELETE_MASK": "Удалить маску",
-  "TOGGLE_MASK": "Вкл/выкл маску",
-  "APPLY_MASK": "Применить маску",
-  "TOGGLE_VISIBILITY": "Вкл/выкл видимость слоя",
-  "MOVE_MEMBER_UP": "Переместить выше",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Переместить выбранные слои или папки выше",
-  "MOVE_MEMBER_DOWN": "Переместить ниже",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Переместить выбранные слои или папки ниже",
-  "MERGE_ALL_SELECTED_LAYERS": "Объединить выбранные слои",
-  "MERGE_WITH_ABOVE": "Объединить со слоем выше",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Объединить выбранный слой со слоем выше от него",
-  "MERGE_WITH_BELOW": "Объединить со слоем ниже",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Объединить выбранный слой со слоем ниже от него",
-  "ADD_REFERENCE_LAYER": "Добавить референс",
-  "DELETE_REFERENCE_LAYER": "Удалить референс",
-  "TRANSFORM_REFERENCE_LAYER": "Трансформировать референс",
-  "TOGGLE_REFERENCE_LAYER_POS": "Изменить позицию референса",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Переключение между двумя положениями референса: поверх рисунка и ниже рисунка",
-  "RESET_REFERENCE_LAYER_POS": "Сбросить положение референса",
-  "CLIP_CANVAS": "Обрезать прозрачные края",
-  "FLIP_IMG_VERTICALLY": "Отразить по вертикали",
-  "FLIP_IMG_HORIZONTALLY": "Отразить по горизонтали",
-  "FLIP_LAYERS_VERTICALLY": "Отразить выбранные слои по вертикали",
-  "FLIP_LAYERS_HORIZONTALLY": "Отразить выбранные слои по горизонтали",
-  "ROT_IMG_90": "Повернуть холст на 90 градусов",
-  "ROT_IMG_180": "Повернуть холст на 180 градусов",
-  "ROT_IMG_-90": "Повернуть холст на -90 градусов",
-  "ROT_LAYERS_90": "Повернуть выбранные слои на 90 градусов",
-  "ROT_LAYERS_180": "Повернуть выбранные слои на 180 градусов",
-  "ROT_LAYERS_-90": "Повернуть выбранные слои на -90 градусов",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Вкл/выкл вертикальную ось симметрии",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Вкл/выкл горизонтальную ось симметрии",
-  "DELETE_PIXELS": "Очистить",
-  "DELETE_PIXELS_DESCRIPTIVE": "Очистить выделенную область",
-  "RESIZE_DOCUMENT": "Изменить размер изображения",
-  "RESIZE_CANVAS": "Изменить размер холста",
-  "CENTER_CONTENT": "Выровнять содержимое по центру",
-  "CUT": "Вырезать",
-  "CUT_DESCRIPTIVE": "Вырезать выбранную область или слои",
-  "PASTE": "Вставить",
-  "PASTE_DESCRIPTIVE": "Вставить из буфера обмена",
-  "PASTE_AS_NEW_LAYER": "Вставить в новый слой",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Вставить изображение из буфера обмена в новый слой",
-  "PASTE_REFERENCE_LAYER": "Вставить референс",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Вставить изображение-референс из буфера обмена",
-  "PASTE_COLOR": "Вставить цвет",
-  "PASTE_COLOR_DESCRIPTIVE": "Вставить HEX-код цвета из буфера обмена",
-  "PASTE_COLOR_SECONDARY": "Вставить цвет как дополнительный",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Вставить HEX-код цвета из буфера обмена как дополнительный цвет",
-  "CLIPBOARD": "Буфер обмена",
-  "COPY": "Копировать",
-  "COPY_DESCRIPTIVE": "Копировать в буфер обмена",
-  "COPY_COLOR_HEX": "Копировать основной цвет (HEX-код)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Копировать HEX-код основного цвета",
-  "COPY_COLOR_RGB": "Копировать основной цвет (RBG)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Копировать RGB-код основного цвета",
-  "COPY_COLOR_SECONDARY_HEX": "Копировать дополнительный цвет (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Копировать HEX-код дополнительного цвета",
-  "COPY_COLOR_SECONDARY_RGB": "Копировать дополнительный цвет (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Копировать RGB-код дополнительного цвета",
-  "PALETTE_COLORS": "Цвета палитры",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Перекрасить области дополнительного цвета в основной",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Выбирает на картинке все пиксели дополнительного цвета, и перекрашивает их в основной цвет",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Перекрасить области основного цвета в дополнительный",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Выбирает на картинке все пиксели основного цвета, и перекрашивает их в дополнительный цвет",
-  "OPEN_PALETTE_BROWSER": "Открыть библиотеку палитр",
-  "OVERWRITE_PALETTE_CONSENT": "Палитра с именем '{0}' уже существует, перезаписать?",
-  "PALETTE_EXISTS": "Такая палитра уже есть",
-  "REPLACE_PALETTE_CONSENT": "Заменить текущую палитру выбранной?",
-  "REPLACE_PALETTE": "Заменить палитру",
-  "SELECT_COLOR_1": "Выбрать цвет 1",
-  "SELECT_COLOR_2": "Выбрать цвет 2",
-  "SELECT_COLOR_3": "Выбрать цвет 3",
-  "SELECT_COLOR_4": "Выбрать цвет 4",
-  "SELECT_COLOR_5": "Выбрать цвет 5",
-  "SELECT_COLOR_6": "Выбрать цвет 6",
-  "SELECT_COLOR_7": "Выбрать цвет 7",
-  "SELECT_COLOR_8": "Выбрать цвет 8",
-  "SELECT_COLOR_9": "Выбрать цвет 9",
-  "SELECT_COLOR_10": "Выбрать цвет 10",
-  "SELECT_TOOL": "Выбрать инструмент \"{0}\"",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Взять первый цвет из палитры",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Взять второй цвет из палитры",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Взять третий цвет из палитры",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Взять четвертый цвет из палитры",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Взять пятый цвет из палитры",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Взять шестой цвет из палитры",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Взять седьмой цвет из палитры",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Взять восьмой цвет из палитры",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Взять девятый цвет из палитры",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Взять десятый цвет из палитры",
-  "SWAP_COLORS": "Поменять цвета местами",
-  "SWAP_COLORS_DESCRIPTIVE": "Меняет местами основной и дополнительный цвета",
-  "SEARCH": "Поиск",
-  "COMMAND_SEARCH": "Поиск действий",
-  "OPEN_COMMAND_SEARCH": "Открыть окно поиска действий",
-  "SELECT": "Выделение",
-  "DESELECT": "Снять выделение",
-  "INVERT": "Инвертировать выделение",
-  "SELECTION": "Выделение",
-  "SELECT_ALL": "Выделить всё",
-  "SELECT_ALL_DESCRIPTIVE": "Выделить весь холст",
-  "CLEAR_SELECTION": "Снять выделение",
-  "INVERT_SELECTION": "Инвертировать выделение",
-  "INVERT_SELECTION_DESCRIPTIVE": "Инвертировать выделенную область",
-  "TRANSFORM_SELECTED_AREA": "Трансформировать выбранную область",
-  "NUDGE_SELECTED_LEFT": "Сдвинуть выделение влево",
-  "NUDGE_SELECTED_RIGHT": "Сдвинуть выделение вправо",
-  "NUDGE_SELECTED_UP": "Сдвинуть выделение вверх",
-  "NUDGE_SELECTED_DOWN": "Сдвинуть выделение вниз",
-  "MASK_FROM_SELECTION": "Создать маску из выделения",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Создать маску из выделения",
-  "ADD_SELECTION_TO_MASK": "Добавить выделение к маске",
-  "SUBTRACT_SELECTION_FROM_MASK": "Вычесть выделение из маски",
-  "INTERSECT_SELECTION_MASK": "Пересечь выделение с маской",
-  "SELECTION_TO_MASK": "Выделение в маску...",
-  "TO_NEW_MASK": "создать маску",
-  "ADD_TO_MASK": "добавить к маске",
-  "SUBTRACT_FROM_MASK": "вычесть из маски",
-  "INTERSECT_WITH_MASK": "пересечь с маской",
-  "STYLUS": "Перо",
-  "TOGGLE_PEN_MODE": "Включить/выключить режим пера",
-  "UNDO": "Отменить",
-  "UNDO_DESCRIPTIVE": "Отменить последнее действие",
-  "REDO": "Вернуть",
-  "REDO_DESCRIPTIVE": "Вернуть последнее действие",
-  "WINDOWS": "Окна",
-  "TOGGLE_GRIDLINES": "Отобразить/скрыть сетку",
-  "ZOOM_IN": "Приблизить",
-  "ZOOM_OUT": "Отдалить",
-  "NEW_WINDOW_FOR_IMG": "Новое окно для данного изображения",
-  "CENTER_ACTIVE_VIEWPORT": "Центрировать область просмотра",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Отразить область просмотра по горизонтали",
-  "FLIP_VIEWPORT_VERTICALLY": "Отразить область просмотра по вертикали",
-  "SETTINGS": "Настройки",
-  "OPEN_SETTINGS": "Открыть настройки",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Открыть окно настроек",
-  "OPEN_STARTUP_WINDOW": "Открыть окно запуска",
-  "OPEN_SHORTCUT_WINDOW": "Открыть окно сочетаний клавиш",
-  "OPEN_ABOUT_WINDOW": "Открыть окно \"о программе\"",
-  "OPEN_NAVIGATION_WINDOW": "Открыть окно навигации",
-  "ERROR": "Ошибка",
-  "INTERNAL_ERROR": "Внутренняя ошибка",
-  "ERROR_SAVE_LOCATION": "Невозможно сохранить файл в выбранную папку",
-  "ERROR_WHILE_SAVING": "Произошла внутренняя ошибка при сохранении. Пожалуйста, попробуйте заново.",
-  "UNKNOWN_ERROR_SAVING": "Произошла ошибка при сохранении.",
-  "FAILED_ASSOCIATE_LOSPEC": "Не удалось связать протокол Lospec Palette.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Задонатить",
-  "YES": "Да",
-  "NO": "Нет",
-  "CANCEL": "Отмена",
-  "UNNAMED": "Безымянный",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Открыть окно отладки команд",
-  "DELETE": "Удалить",
-  "USER_PREFS": "Предпочтения пользователя (Локальные)",
-  "SHORTCUT_FILE": "Сочетания клавиш (Локальные)",
-  "EDITOR_DATA": "Данные редактора (Локальные)",
-  "MOVE_VIEWPORT_TOOLTIP": "Передвигает область просмотра.",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Нажмите и двигайте чтобы изменить область просмотра",
-  "MOVE_TOOL_TOOLTIP": "Двигает выделенные пиксели ({0}). Удерживайте Ctrl чтобы двигать все слои.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Удерживайте мышь чтобы двигать выделенные пиксели. Удерживайте Ctrl чтобы двигать все слои.",
-  "PEN_TOOL_TOOLTIP": "Карандаш. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Нажмите и двигайте чтобы рисовать.",
-  "PIXEL_PERFECT_SETTING": "Сглаживание зубчатости",
-  "RECTANGLE_TOOL_TOOLTIP": "Рисуйте прямоугольники на холсте ({0}). Удерживайте Shift чтобы нарисовать квадрат.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте чтобы нарисовать прямоугольник. Удерживайте Shift чтобы нарисовать квадрат.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Нажмите и двигайте чтобы нарисовать квадрат.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Оставлять изначальное изображение",
-  "ROTATE_VIEWPORT_TOOLTIP": "Вращает область просмотра. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Нажмите и двигайте чтобы повернуть область просмотра",
-  "SELECT_TOOL_TOOLTIP": "Выделяет область. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте чтобы выделить область. Удерживайте Shift чтобы добавить к выделенной области. Удерживайте Ctrl чтобы вычесть из выделенной области.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Нажмите и двигайте чтобы добавить к выделенной области.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Нажмите и двигайте чтобы вычесть из выделенной области.",
-  "ZOOM_TOOL_TOOLTIP": "Изменяет масштаб области просмотра ({0}). Нажмите чтобы приблизить, удерживайте alt и нажмите чтобы отдалить.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте чтобы изменить масштаб. Нажмите чтобы приблизить, удерживайте alt и нажмите чтобы отдалить.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Нажмите и двигайте изменить масштаб. Нажмите чтобы отдалить, отпустите ctrl и нажмите чтобы приблизить.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Делает пиксели более светлыми или тёмными ({0}). Удерживайте Ctrl для затемнения.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Рисуйте на пикселях чтобы сделать их ярче. Удерживайте Ctrl чтобы сделать их темнее.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Рисуйте на пикселях чтобы сделать их темнее. Отпустите Ctrl чтобы сделать их светлее.",
-  "COLOR_PICKER_TOOLTIP": "Берёт главный цвет с холста. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Нажмите чтобы взять цвет. Удерживайте Ctrl чтобы спрятать холст. Удерживайте Shift чтобы спрятать слой референса",
-  "ELLIPSE_TOOL_TOOLTIP": "Рисует эллипс на холсте({0}). Удерживайте Shift чтобы нарисовать круг.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте мышью чтобы нарисовать эллипс. Удерживайте Shift чтобы нарисовать круг.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Нажмите и двигайте мышью чтобы нарисовать круг.",
-  "ERASER_TOOL_TOOLTIP": "Стирает пиксели. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Нажмите и двигайте чтобы стереть.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Заполняет область цветом. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите на область чтобы заполнить её. Удерживайте Ctrl чтобы заполнить все слои.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Нажмите на область чтобы заполнить её. Отпустите Ctrl чтобы выбрать один слой.",
-  "LASSO_TOOL_TOOLTIP": "Лассо. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте чтобы выделить пиксели внутри лассо. Удерживайте Shift чтобы добавить их в выделенной области. Удерживайте Ctrl чтобы убрать из выделенной области.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Нажмите и двигайте чтобы добавить пиксели внутри лассо к выделенной области.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Нажмите и двигайте чтобы убрать пиксели внутри лассо из выделенной области.",
-  "LINE_TOOL_TOOLTIP": "Рисует линии на холсте ({0}). Удерживайте Shift чтобы включить привязку.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Нажмите и двигайте чтобы нарисовать линию. Удерживайте Shift чтобы включить привязку.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Нажмите и двигайте мышь чтобы нарисовать линию с привязкой.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Волшебная палочка ({0}). Выделяет область.",
-  "MAGIC_WAND_ACTION_DISPLAY": "Нажмите чтобы выделить область.",
-  "PEN_TOOL": "Карандаш",
-  "BRIGHTNESS_TOOL": "Яркость",
-  "COLOR_PICKER_TOOL": "Пипетка",
-  "ELLIPSE_TOOL": "Эллипс",
-  "ERASER_TOOL": "Ластик",
-  "FLOOD_FILL_TOOL": "Заливка",
-  "LASSO_TOOL": "Лассо",
-  "LINE_TOOL": "Линия",
-  "MAGIC_WAND_TOOL": "Волшебная Палочка",
-  "MOVE_TOOL": "Передвинуть",
-  "MOVE_VIEWPORT_TOOL": "Передвинуть область просмотра",
-  "RECTANGLE_TOOL": "Прямоугольник",
-  "ROTATE_VIEWPORT_TOOL": "Повернуть область просмотра",
-  "SELECT_TOOL_NAME": "Выбрать",
-  "ZOOM_TOOL": "Масштаб",
-  "SHAPE_LABEL": "Форма",
-  "MODE_LABEL": "Режим",
-  "SCOPE_LABEL": "Выделение",
-  "FILL_SHAPE_LABEL": "Заливка",
-  "FILL_COLOR_LABEL": "Цвет заливки",
-  "TOOL_SIZE_LABEL": "Размер",
-  "STRENGTH_LABEL": "Сила",
-  "NEW": "Новое",
-  "ADD": "Добавить",
-  "SUBTRACT": "Убрать",
-  "INTERSECT": "Пересечение",
-  "RECTANGLE": "Прямоугольник",
-  "CIRCLE": "Круг",
-  "ABOUT": "О программе",
-  "MINIMIZE": "Свернуть",
-  "RESTORE": "Свернуть в окно",
-  "MAXIMIZE": "Развернуть",
-  "CLOSE": "Закрыть",
-  "EXPORT_SIZE_HINT": "Если хотите поделиться изображением, попробуйте {0}% для лучшего качества",
-  "CREATE": "Создать",
-  "BASE_LAYER_NAME": "Основной слой",
-  "ENABLE_MASK": "Включить маску",
-  "SELECTED_AREA_EMPTY": "Выбранная область пуста",
-  "NOTHING_TO_COPY": "Нечего копировать",
-  "REFERENCE_LAYER_PATH": "Путь к референс слою",
-  "FLIP": "Отразить",
-  "ROTATION": "Поворот",
-  "ROT_IMG_90_D": "Повернуть изображение на 90°",
-  "ROT_IMG_180_D": "Повернуть изображение на 180°",
-  "ROT_IMG_-90_D": "Повернуть изображение на -90°",
-  "ROT_LAYERS_90_D": "Повернуть выделенные слои на 90°",
-  "ROT_LAYERS_180_D": "Повернуть выделенные слои на 180°",
-  "ROT_LAYERS_-90_D": "Повернуть выделенные слои на -90°",
-  "UNNAMED_PALETTE": "Безымянная палитра",
-  "CLICK_SELECT_PRIMARY": "Нажмите чтобы выбрать как главный цвет.",
-  "PEN_MODE": "Режим пера",
-  "VIEW": "Просмотр",
-  "HORIZONTAL_LINE_SYMMETRY": "Горизонтальная ось симметрии",
-  "VERTICAL_LINE_SYMMETRY": "Вертикальная ось симметрии",
-  "COLOR_PICKER_TITLE": "Выбор цвета",
-  "COLOR_SLIDERS_TITLE": "Ползунки цвета",
-  "PALETTE_TITLE": "Палитра",
-  "SWATCHES_TITLE": "Образцы",
-  "LAYERS_TITLE": "Слои",
-  "NAVIGATION_TITLE": "Навигация",
-  "NORMAL_BLEND_MODE": "Нормальный",
-  "DARKEN_BLEND_MODE": "Затемнение",
-  "MULTIPLY_BLEND_MODE": "Умножение",
-  "COLOR_BURN_BLEND_MODE": "Затемнение основы",
-  "LIGHTEN_BLEND_MODE": "Замена светлым",
-  "SCREEN_BLEND_MODE": "Экран",
-  "COLOR_DODGE_BLEND_MODE": "Осветление основы",
-  "OVERLAY_BLEND_MODE": "Перекрытие",
-  "SOFT_LIGHT_BLEND_MODE": "Мягкий свет",
-  "HARD_LIGHT_BLEND_MODE": "Жесткий свет",
-  "DIFFERENCE_BLEND_MODE": "Разница",
-  "EXCLUSION_BLEND_MODE": "Исключение",
-  "HUE_BLEND_MODE": "Цветовой тон",
-  "SATURATION_BLEND_MODE": "Насыщенность",
-  "LUMINOSITY_BLEND_MODE": "Яркость",
-  "COLOR_BLEND_MODE": "Цветность",
-  "NOT_SUPPORTED_BLEND_MODE": "Не поддерживается",
-  "RESTART": "Перезапустите",
-  "SORT_BY": "Сортировать по",
-  "NAME": "Название",
-  "COLORS": "Цвета",
-  "DEFAULT": "Умолчанию",
-  "ALPHABETICAL": "Алфавиту",
-  "COLOR_COUNT": "Количеству цветов",
-  "ANY": "Не важно",
-  "MAX": "Больше",
-  "MIN": "Меньше",
-  "EXACT": "Ровно",
-  "ASCENDING": "Возрастание",
-  "DESCENDING": "Убывание",
-  "NAME_IS_TOO_LONG": "Имя слишком длинное",
-  "STOP_IT_TEXT1": "Достаточно. Разберись со своими названиями палитр.",
-  "STOP_IT_TEXT2": "чел.",
-  "REPLACER_TOOLTIP": "Нажмите ПКМ на цвете в палитре и выберите 'Заметить' или перетащите его сюда.",
-  "CLICK_TO_CHOOSE_COLOR": "Нажмите чтобы выбрать цвет",
-  "REPLACE_COLOR": "Заменить цвет",
-  "PALETTE_COLOR_TOOLTIP": "Нажмите чтобы выбрать как главный цвет. перетащите на другой цвет палитры чтобы поменять их местами.",
-  "ADD_FROM_SWATCHES": "Добавить из образцов",
-  "ADD_COLOR_TO_PALETTE": "Добавить цвет к палитре",
-  "USE_IN_CURRENT_IMAGE": "Использовать в данном изображении",
-  "ADD_TO_FAVORITES": "Добавить в избранное",
-  "BROWSE_PALETTES": "Смотреть палитры",
-  "LOAD_PALETTE": "Загрузить палитру",
-  "SAVE_PALETTE": "Сохранить палитру",
-  "FAVORITES": "Избранное",
-  "ADD_FROM_CURRENT_PALETTE": "Добавить из текущей палитры",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Открыть папку палитр",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Открыть палитры на Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Импортировать из файла",
-  "TOP_LEFT": "Вверху слева",
-  "TOP_CENTER": "Вверху по центру",
-  "TOP_RIGHT": "Вверху справа",
-  "MIDDLE_LEFT": "Середина слева",
-  "MIDDLE_CENTER": "Середина по центру",
-  "MIDDLE_RIGHT": "Середина справа",
-  "BOTTOM_LEFT": "Снизу слева",
-  "BOTTOM_CENTER": "Снизу по центру",
-  "BOTTOM_RIGHT": "Снизу справа",
-  "CLIP_TO_BELOW": "Обтравочная маска",
-  "MOVE_UPWARDS": "Подвинуть вверх",
-  "MOVE_DOWNWARDS": "Подвинуть вниз",
-  "MERGE_SELECTED": "Объединить выделенные",
-  "LOCK_TRANSPARENCY": "Заблокировать прозрачность",
-  "COULD_NOT_LOAD_PALETTE": "Невозможно загрузить палитры",
-  "NO_PALETTES_FOUND": "Палитры не найдены.",
-  "LOSPEC_LINK_TEXT": "Слышал, тут можно найти палитры: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Палитры",
-  "DELETE_PALETTE_CONFIRMATION": "Вы уверены что хотите удалить это изображение? Это действие необратимо.",
-  "SHORTCUTS_IMPORTED": "Сочетания клавиш были успешно импортированы из {0}.",
-  "SHORTCUT_PROVIDER_DETECTED": "Мы заметили что у вас установлен {0}. Хотите импортировать сочетания клавиш оттуда?",
-  "IMPORT_FROM_INSTALLATION": "Импортировать из другой программы",
-  "IMPORT_INSTALLATION_OPTION1": "Импортировать",
-  "IMPORT_INSTALLATION_OPTION2": "Использовать стандартные",
-  "IMPORT_FROM_TEMPLATE": "Импортировать из шаблона",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Сочетания клавиш были успешно импортированы.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Вы уверены что хотите сбросить все сочетания клавиш?",
-  "SUCCESS": "Успех",
-  "WARNING": "Внимание",
-  "ERROR_IMPORTING_IMAGE": "Произошла ошибка при импорте изображения.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Повреждённый путь к сочетаниям клавиш",
-  "SHORTCUTS_CORRUPTED": "Не удалось загрузить сочетания клавиш из файла. Был произведен сброс к стандартным.",
-  "FAILED_DOWNLOAD_PALETTE": "Ошибка при скачивании палитры",
-  "FILE_INCORRECT_FORMAT": "Файл был в некорректном формате",
-  "INVALID_FILE": "Некорректный файл",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Неправильный формат файла сочетаний клавиш",
-  "UNSUPPORTED_FILE_FORMAT": "Этот тип файла не поддерживается",
-  "ALREADY_ASSIGNED": "Уже присвоен",
-  "REPLACE": "Заменить",
-  "SWAP": "Поменять местами",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Это сочетание клавиш уже присвоен к '{0}'\nХотите заменить существующее сочетание или поменять их местами?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Это сочетание клавиш уже присвоен к '{0}'\nХотите заменить существующее сочетание?",
-  "UNSAVED_CHANGES": "Несохранённые изменения",
-  "DOCUMENT_MODIFIED_SAVE": "Этот файл был изменён. Вы хотите сохранить изменения?",
-  "SESSION_UNSAVED_DATA": "В {0} есть несохранённые данные. Вы уверены?",
-  "PROJECT_MAINTAINERS": "Авторы проекта",
-  "OTHER_AWESOME_CONTRIBUTORS": "И другие участники проекта",
-  "HELP": "Помощь",
-  "STOP_IT_TEXT3": "НЕНАДО ДЯДЯ",
-  "STOP_IT_TEXT4": "sans undertale reference omg so cool",
-  "LINEAR_DODGE_BLEND_MODE": "Линейный осветлитель (добавить)",
-  "PRESS_ANY_KEY": "Нажмите любую клавишу",
-  "NONE_SHORTCUT": "Ничего",
-  "REFERENCE": "Референс",
-  "PUT_REFERENCE_LAYER_ABOVE": "Показать слой референса",
-  "PUT_REFERENCE_LAYER_BELOW": "Спрятать слой референса",
-  "TOGGLE_VERTICAL_SYMMETRY": "Переключить вертикальную ось симметрии",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Переключить горизонтальную ось симметрии",
-  "RESET_VIEWPORT": "Сбросить область просмотра",
-  "VIEWPORT_SETTINGS": "Настройки области просмотра",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Нажмите и двигайте мышь чтобы двигать пиксели в выбранных слоях.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Удерживайте мышь чтобы подвинуть все слои.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Переименовать",
-  "PIXEL_UNIT": "пикс",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Открыть окно отладки локализации",
-  "FORCE_OTHER_FLOW_DIRECTION": "Инвертировать направление письма",
-  "API_KEY": "Ключ API",
-  "LOCALIZATION_VIEW_TYPE": "Отображение локализации",
-  "LOAD_LANGUAGE_FROM_FILE": "Загрузить язык из файла",
-  "LOG_IN": "Войти",
-  "SYNC": "Синхронизировать",
-  "NOT_LOGGED_IN": "Не авторизован",
-  "POE_EDITOR_ERROR": "Ошибка POEditor: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "Ошибка HTTP: {0} {1}",
-  "LOGGED_IN": "Авторизован",
-  "SYNCED_SUCCESSFULLY": "Успешная синхронизация",
-  "EXCEPTION_ERROR": "Исключение: {0}",
-  "DROP_PALETTE": "Перетащите палитру сюда",
-  "SECURITY_ERROR": "Ошибка безопасности",
-  "SECURITY_ERROR_MSG": "Отсутствуют права для записи в данной локации.",
-  "IO_ERROR": "Ошибка IO",
-  "IO_ERROR_MSG": "Ошибка записи на диск.",
-  "FAILED_ASSOCIATE_PIXI": "Не удалось связать расширение файлов .pixi с PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Произошла ошибка при сохранении палитры.",
-  "NO_COLORS_TO_SAVE": "Нет цветов для сохранения.",
-  "ALL_LAYERS": "Все слои",
-  "SINGLE_LAYER": "Один слой",
-  "CHOOSE": "Выбрать",
-  "REMOVE": "Убрать",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "Файл не в формате \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "Файл содержит недействительные сочетания клавиш",
-  "FILE_EXTENSION_NOT_SUPPORTED": "Файлы типа '{0}' не поддерживаются",
-  "ERROR_READING_FILE": "Ошибка при чтении файла",
-  "DISCARD_PALETTE": "Очистить палитру",
-  "DISCARD_PALETTE_CONFIRMATION": "Вы уверены что вы хотите очистить палитру? Это действие необратимо.",
-  "IMPORT_AS_NEW_LAYER": "Импортировать как новый слой",
-  "PASTE_AS_PRIMARY_COLOR": "Вставить как главный цвет",
-  "IMPORT_AS_NEW_FILE": "Импортировать как новый файл",
-  "IMPORT_PALETTE_FILE": "Импортировать файл палитры",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Импортировать цвета в палитру",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Импортировать цвет в палитру",
-  "IMPORT_AS_REFERENCE_LAYER": "Импортировать как слой референса",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "ПКМ чтобы взять цвет, Shift + ПКМ чтобы скопировать цвет в буфер обмена",
-  "OPEN_FILE_FROM_CLIPBOARD": "Открыть из буфера обмена",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Открыть из буфера обмена",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Downloading language failed.\nAPI Key might have been overused.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Localization data path not found",
-  "APPLY": "Apply",
-  "UPDATE_SOURCE": "Update source",
-  "COPY_TO_CLIPBOARD": "Copy to clipboard",
-  "LANGUAGE_FILE_NOT_FOUND": "Language file not found.\nLooking for {0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor Project root not found.\nLooking for PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Localization folder not found.\nLooking for /Data/Localization",
-  "SELECT_A_LANGUAGE": "Select a language",
-  "DONE": "Done",
-  "SOURCE_UNSET_OR_MISSING": "Source missing/unset",
-  "SOURCE_NEWER": "Source newer",
-  "SOURCE_UP_TO_DATE": "Source is up to date",
-  "SOURCE_OLDER": "Cloud newer",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/uk.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "Недавні файли",
-  "OPEN_FILE": "Відкрити файл",
-  "NEW_FILE": "Новий",
-  "RECENT_EMPTY_TEXT": "Так багато порожнього місця",
-  "LANGUAGE": "Мова",
-  "GENERAL": "Головна",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "Прив'язки клавіш",
-  "MISC": "Різне",
-  "SHOW_STARTUP_WINDOW": "Показати вікно запуску",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "Показати попередній перегляд зображення на панелі завдань",
-  "RECENT_FILE_LENGTH": "Довжина списку останніх файлів",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Скільки документів показано в розділі «Файл» > «Останні». Типове значення: 8",
-  "DEFAULT_NEW_SIZE": "Новий розмір файлу за замовчуванням",
-  "WIDTH": "Ширина",
-  "HEIGHT": "Висота",
-  "TOOLS": "Інструменти",
-  "ENABLE_SHARED_TOOLBAR": "Увімкнути спільну панель інструментів",
-  "AUTOMATIC_UPDATES": "Автооновлення",
-  "CHECK_FOR_UPDATES": "Перевіряти оновлення під час запуску",
-  "UPDATE_STREAM": "Канал оновлення",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "Канали оновлення можна змінити лише в автономній версії (що завантажена з https://pixieditor.net).\nВерсії для Steam і Microsoft Store оновлюються іншим чином.",
-  "DEBUG": "Налагодження",
-  "ENABLE_DEBUG_MODE": "Увімкнути режим налагодження",
-  "OPEN_CRASH_REPORTS_DIR": "Відкрити каталог звітів про збої",
-  "DISCORD_RICH_PRESENCE": "Rich Presence",
-  "ENABLED": "Увімкнено",
-  "SHOW_IMAGE_NAME": "Показати назву зображення",
-  "SHOW_IMAGE_SIZE": "Показати розмір зображення",
-  "SHOW_LAYER_COUNT": "Показати кількість шарів",
-  "FILE": "Файл",
-  "RECENT": "Останні",
-  "OPEN": "Відкрити",
-  "SAVE_PIXI": "Зберегти (.pixi)",
-  "SAVE_AS_PIXI": "Зберегти як... (.pixi)",
-  "EXPORT_IMG": "Експортувати (.png, .jpg, etc.)",
-  "EDIT": "Редагувати",
-  "EXIT": "Вийти",
-  "PERCENTAGE": "У відсотках",
-  "ABSOLUTE": "Абсолютне значення",
-  "PRESERVE_ASPECT_RATIO": "Зберегти співвідношення сторін",
-  "ANCHOR_POINT": "Точка прив’язки",
-  "RESIZE_IMAGE": "Змінити розмір зображення",
-  "RESIZE": "Змінити розмір",
-  "DOCUMENTATION": "Документація",
-  "WEBSITE": "Веб-сайт",
-  "OPEN_WEBSITE": "Відкрити веб-сайт",
-  "REPOSITORY": "Репозиторій",
-  "OPEN_REPOSITORY": "Відкрити репозиторій",
-  "LICENSE": "Ліцензія",
-  "OPEN_LICENSE": "Відкрити ліцензію",
-  "THIRD_PARTY_LICENSES": "Ліцензії третіх осіб",
-  "OPEN_THIRD_PARTY_LICENSES": "Відкрити ліцензії третіх осіб",
-  "APPLY_TRANSFORM": "Застосувати трансформацію",
-  "INCREASE_TOOL_SIZE": "Збільшити розмір інструменту",
-  "DECREASE_TOOL_SIZE": "Зменшити розмір інструменту",
-  "TO_INSTALL_UPDATE": "для встановлення оновлення {0}",
-  "DOWNLOADING_UPDATE": "Завантаження оновлення...",
-  "UPDATE_READY": "Оновлення готове до встановлення. Ви хочете встановити його зараз?",
-  "NEW_UPDATE": "Нове оновлення",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Не вдалося оновити без прав адміністратора. Запустіть PixiEditor від імені адміністратора.",
-  "INSUFFICIENT_PERMISSIONS": "Недостатньо дозволів",
-  "UPDATE_CHECK_FAILED": "Не вдалося перевірити оновлення",
-  "COULD_NOT_CHECK_FOR_UPDATES": "Не вдалося перевірити, чи є доступне оновлення.",
-  "VERSION": "Версія {0}",
-  "OPEN_TEMP_DIR": "Відкрити тимчасовий каталог",
-  "OPEN_LOCAL_APPDATA_DIR": "Відкрити каталог Local AppData",
-  "OPEN_ROAMING_APPDATA_DIR": "Відкрити каталог Roaming AppData",
-  "OPEN_INSTALLATION_DIR": "Відкрити каталог встановлення",
-  "DUMP_ALL_COMMANDS": "Скинути всі команди",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Скинути всі команди до текстового файлу",
-  "CRASH": "Збій",
-  "CRASH_APP": "Збій програми",
-  "DELETE_USR_PREFS": "Видалити налаштування користувача (Roaming AppData)",
-  "DELETE_SHORTCUT_FILE": "Видалити файл комбінацій клавіш (Roaming AppData)",
-  "DELETE_EDITOR_DATA": "Видалити дані редактора (Local AppData)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "Створити шаблон прив'язки клавіш",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Створити шаблон json прив’язки клавіш",
-  "VALIDATE_SHORTCUT_MAP": "Перевірити мару комбінацій клавіш",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Перевірка мапи комбінацій клавіш",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "Порожні ключі: {0}\nНевідомі команди: {1}",
-  "RESULT": "Результат",
-  "CLEAR_RECENT_DOCUMENTS": "Очистити останні документи",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Очистити нещодавно відкриті документи",
-  "OPEN_CMD_DEBUG_WINDOW": "Відкрити вікно команд налагодження",
-  "PATH_DOES_NOT_EXIST": "{0} не існує.",
-  "LOCATION_DOES_NOT_EXIST": "Розташування не існує.",
-  "FILE_NOT_FOUND": "Файл не знайдено.",
-  "ARE_YOU_SURE": "Ви впевнені?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "Ви впевнені, що хочете видалити {0}?\nЦі дані буде втрачено для всіх установок.\n(Повний шлях: {1})",
-  "FAILED_TO_OPEN_FILE": "Не вдалося відкрити файл",
-  "OLD_FILE_FORMAT": "Старий формат файлу",
-  "OLD_FILE_FORMAT_DESCRIPTION": "Цей файл .pixi використовує старий формат,\n  який більше не підтримується та не може бути відкритий.",
-  "NOTHING_FOUND": "Нічого не знайдено",
-  "EXPORT": "Експорт",
-  "EXPORT_IMAGE": "Експорт зображення",
-  "IMPORT": "Імпорт",
-  "SHORTCUT_TEMPLATES": "Шаблони комбінацій клавіш",
-  "RESET_ALL": "Скинути все",
-  "LAYER": "Шар",
-  "LAYER_DELETE_SELECTED": "Видалити активний шар/папку",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Видалити активний шар або папку",
-  "LAYER_DELETE_ALL_SELECTED": "Видалити всі вибрані шари/папки",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Видалити всі вибрані шари та/або папки",
-  "DELETE_SELECTED_PIXELS": "Видалити вибрані пікселі",
-  "NEW_FOLDER": "Нова папка",
-  "CREATE_NEW_FOLDER": "Створити нову папку",
-  "NEW_LAYER": "Новий шар",
-  "CREATE_NEW_LAYER": "Створити новий шар",
-  "NEW_IMAGE": "Нове зображення",
-  "CREATE_NEW_IMAGE": "Створити нове зображення",
-  "SAVE": "Зберегти",
-  "SAVE_AS": "Зберегти як...",
-  "IMAGE": "Зображення",
-  "SAVE_IMAGE": "Зберегти зображення",
-  "SAVE_IMAGE_AS": "Зберегти зображення як нове",
-  "DUPLICATE": "Дублікат",
-  "DUPLICATE_SELECTED_LAYER": "Дублювати виділений шар",
-  "CREATE_MASK": "Створити маску",
-  "DELETE_MASK": "Видалити маску",
-  "TOGGLE_MASK": "Перемкнути маску",
-  "APPLY_MASK": "Застосувати маску",
-  "TOGGLE_VISIBILITY": "Перемкнути видимість",
-  "MOVE_MEMBER_UP": "Перемістити вгору",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "Перемістити вибраний шар або папку вгору",
-  "MOVE_MEMBER_DOWN": "Перемістити вниз",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Перемістити вибраний шар або папку вниз",
-  "MERGE_ALL_SELECTED_LAYERS": "Об’єднати всі виділені шари",
-  "MERGE_WITH_ABOVE": "Об’єднати вибраний шар із верхнім",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "Об’єднати вибраний шар із шаром над ним",
-  "MERGE_WITH_BELOW": "Об’єднати вибраний шар із нижнім",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "Об’єднати вибраний шар із шаром під ним",
-  "ADD_REFERENCE_LAYER": "Додати опорний шар",
-  "DELETE_REFERENCE_LAYER": "Видалити опорний шар",
-  "TRANSFORM_REFERENCE_LAYER": "Трансформувати опорний шар",
-  "TOGGLE_REFERENCE_LAYER_POS": "Перемкнути положення опорного шару",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Перемикання опорного шару між верхнім і нижнім",
-  "RESET_REFERENCE_LAYER_POS": "Скинути положення опорного шару",
-  "CLIP_CANVAS": "Обрізати полотно",
-  "FLIP_IMG_VERTICALLY": "Перевернути зображення по вертикалі",
-  "FLIP_IMG_HORIZONTALLY": "Перевернути зображення по горизонталі",
-  "FLIP_LAYERS_VERTICALLY": "Перевернути вибрані шари по вертикалі",
-  "FLIP_LAYERS_HORIZONTALLY": "Перевернути вибрані шари по горизонталі",
-  "ROT_IMG_90": "Повернути зображення на 90 градусів",
-  "ROT_IMG_180": "Повернути зображення на 180 градусів",
-  "ROT_IMG_-90": "Повернути зображення на -90 градусів",
-  "ROT_LAYERS_90": "Повернути виділені шари на 90 градусів",
-  "ROT_LAYERS_180": "Повернути виділені шари на 180 градусів",
-  "ROT_LAYERS_-90": "Повернути виділені шари на -90 градусів",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "Перемкнути вертикальну вісь симетрії",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "Перемкнути горизонтальну вісь симетрії",
-  "DELETE_PIXELS": "Видалити пікселі",
-  "DELETE_PIXELS_DESCRIPTIVE": "Видалити вибрані пікселі",
-  "RESIZE_DOCUMENT": "Змінити розмір документа",
-  "RESIZE_CANVAS": "Змінити розмір полотна",
-  "CENTER_CONTENT": "Центр вмісту",
-  "CUT": "Вирізати",
-  "CUT_DESCRIPTIVE": "Вирізати вибрану область/шари",
-  "PASTE": "Вставити",
-  "PASTE_DESCRIPTIVE": "Вставити вміст буфера обміну",
-  "PASTE_AS_NEW_LAYER": "Вставити як новий шар",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Вставити з буфера обміну як новий шар",
-  "PASTE_REFERENCE_LAYER": "Вставити опорний шар",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Вставити вміст буфера обміну як опорний шар",
-  "PASTE_COLOR": "Вставити колір",
-  "PASTE_COLOR_DESCRIPTIVE": "Вставити колір із буфера обміну",
-  "PASTE_COLOR_SECONDARY": "Вставте колір як додатковий",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Вставити колір із буфера обміну як додатковий колір",
-  "CLIPBOARD": "Буфер обміну",
-  "COPY": "Копіювати",
-  "COPY_DESCRIPTIVE": "Копіювати в буфер обміну",
-  "COPY_COLOR_HEX": "Копіювати основний колір (HEX)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "Скопіювати основний колір як шістнадцятковий код",
-  "COPY_COLOR_RGB": "Копіювати основний колір (RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "Копіювати основний колір як код RGB",
-  "COPY_COLOR_SECONDARY_HEX": "Копіювати додатковий колір (HEX)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Скопіювати допоміжний колір як шістнадцятковий код",
-  "COPY_COLOR_SECONDARY_RGB": "Копіювати додатковий колір (RGB)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Скопіювати додатковий колір як код RGB",
-  "PALETTE_COLORS": "Палітра кольорів",
-  "REPLACE_SECONDARY_BY_PRIMARY": "Замінити додатковий колір основним",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Замінити додатковий колір на основний",
-  "REPLACE_PRIMARY_BY_SECONDARY": "Замінити основний колір додатковим",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Замінити основний колір додатковим",
-  "OPEN_PALETTE_BROWSER": "Відкрити браузер палітри",
-  "OVERWRITE_PALETTE_CONSENT": "Палітра '{0}' уже існує, перезаписати її?",
-  "PALETTE_EXISTS": "Палітра вже існує",
-  "REPLACE_PALETTE_CONSENT": "Замінити поточну палітру вибраною?",
-  "REPLACE_PALETTE": "Замінити поточну палітру",
-  "SELECT_COLOR_1": "Виберіть колір 1",
-  "SELECT_COLOR_2": "Виберіть колір 2",
-  "SELECT_COLOR_3": "Виберіть колір 3",
-  "SELECT_COLOR_4": "Виберіть колір 4",
-  "SELECT_COLOR_5": "Виберіть колір 5",
-  "SELECT_COLOR_6": "Виберіть колір 6",
-  "SELECT_COLOR_7": "Виберіть колір 7",
-  "SELECT_COLOR_8": "Виберіть колір 8",
-  "SELECT_COLOR_9": "Виберіть колір 9",
-  "SELECT_COLOR_10": "Виберіть колір 10",
-  "SELECT_TOOL": "Виберіть інструмент {0}",
-  "SELECT_COLOR_1_DESCRIPTIVE": "Виберіть перший колір у палітрі",
-  "SELECT_COLOR_2_DESCRIPTIVE": "Виберіть другий колір у палітрі",
-  "SELECT_COLOR_3_DESCRIPTIVE": "Виберіть третій колір у палітрі",
-  "SELECT_COLOR_4_DESCRIPTIVE": "Виберіть четвертий колір у палітрі",
-  "SELECT_COLOR_5_DESCRIPTIVE": "Виберіть п'ятий колір у палітрі",
-  "SELECT_COLOR_6_DESCRIPTIVE": "Виберіть шостий колір на палітрі",
-  "SELECT_COLOR_7_DESCRIPTIVE": "Виберіть сьомий колір на палітрі",
-  "SELECT_COLOR_8_DESCRIPTIVE": "Виберіть восьмий колір на палітрі",
-  "SELECT_COLOR_9_DESCRIPTIVE": "Виберіть дев'ятий колір на палітрі",
-  "SELECT_COLOR_10_DESCRIPTIVE": "Виберіть десятий колір на палітрі",
-  "SWAP_COLORS": "Поміняти місцями кольори",
-  "SWAP_COLORS_DESCRIPTIVE": "Поміняти основний і додатковий кольори",
-  "SEARCH": "Пошук",
-  "COMMAND_SEARCH": "Пошук команди",
-  "OPEN_COMMAND_SEARCH": "Відкрити вікно пошуку команд",
-  "SELECT": "Обрати",
-  "DESELECT": "Зняти вибір",
-  "INVERT": "Інвертувати",
-  "SELECTION": "Вибране",
-  "SELECT_ALL": "Вибрати все",
-  "SELECT_ALL_DESCRIPTIVE": "Вибрати все",
-  "CLEAR_SELECTION": "Очистити вибір",
-  "INVERT_SELECTION": "Інвертувати виділення",
-  "INVERT_SELECTION_DESCRIPTIVE": "Інвертувати виділену область",
-  "TRANSFORM_SELECTED_AREA": "Трансформувати виділену область",
-  "NUDGE_SELECTED_LEFT": "Зсунути вибраний об’єкт ліворуч",
-  "NUDGE_SELECTED_RIGHT": "Зсунути вибраний об’єкт праворуч",
-  "NUDGE_SELECTED_UP": "Зсунути вибраний об’єкт угору",
-  "NUDGE_SELECTED_DOWN": "Зсунути вибраний об’єкт вниз",
-  "MASK_FROM_SELECTION": "Нова маска з виділення",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "Виділення до нової маски",
-  "ADD_SELECTION_TO_MASK": "Додати виділення до маски",
-  "SUBTRACT_SELECTION_FROM_MASK": "Відняти виділення від маски",
-  "INTERSECT_SELECTION_MASK": "Перетин виділення маскою",
-  "SELECTION_TO_MASK": "Виділення до маски",
-  "TO_NEW_MASK": "до нової маски",
-  "ADD_TO_MASK": "додати до маски",
-  "SUBTRACT_FROM_MASK": "відняти від маски",
-  "INTERSECT_WITH_MASK": "перетин з маскою",
-  "STYLUS": "Стилус",
-  "TOGGLE_PEN_MODE": "Перемикання режиму пера",
-  "UNDO": "Скасувати",
-  "UNDO_DESCRIPTIVE": "Скасувати останню дію",
-  "REDO": "Повторити",
-  "REDO_DESCRIPTIVE": "Повторити останню дію",
-  "WINDOWS": "Вікна",
-  "TOGGLE_GRIDLINES": "Перемкнути лінії сітки",
-  "ZOOM_IN": "Збільшити масштаб",
-  "ZOOM_OUT": "Зменшити масштаб",
-  "NEW_WINDOW_FOR_IMG": "Нове вікно для поточного зображення",
-  "CENTER_ACTIVE_VIEWPORT": "Центр активного вікна перегляду",
-  "FLIP_VIEWPORT_HORIZONTALLY": "Перевернути вікно перегляду горизонтально",
-  "FLIP_VIEWPORT_VERTICALLY": "Перевернути вікно перегляду вертикально",
-  "SETTINGS": "Налаштування",
-  "OPEN_SETTINGS": "Відкрити налаштування",
-  "OPEN_SETTINGS_DESCRIPTIVE": "Відкрити вікно налаштувань",
-  "OPEN_STARTUP_WINDOW": "Відкрити вікно запуску",
-  "OPEN_SHORTCUT_WINDOW": "Відкрити вікно комбінацій клавіш",
-  "OPEN_ABOUT_WINDOW": "Відкрийте вікно з інформацією",
-  "OPEN_NAVIGATION_WINDOW": "Відкрити вікно навігації",
-  "ERROR": "Помилка",
-  "INTERNAL_ERROR": "Внутрішня помилка",
-  "ERROR_SAVE_LOCATION": "Не вдалося зберегти файл у вказаному розташуванні",
-  "ERROR_WHILE_SAVING": "Під час збереження сталася внутрішня помилка. Будь ласка спробуйте ще раз.",
-  "UNKNOWN_ERROR_SAVING": "Під час збереження сталася помилка.",
-  "FAILED_ASSOCIATE_LOSPEC": "Не вдалося зв’язати протокол Lospec Palette.",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "Пожертвувати",
-  "YES": "Так",
-  "NO": "Ні",
-  "CANCEL": "Скасувати",
-  "UNNAMED": "Без_назви",
-  "OPEN_COMMAND_DEBUG_WINDOW": "Відкрити вікно команд налагодження",
-  "DELETE": "Видалити",
-  "USER_PREFS": "Налаштування користувача (Roaming)",
-  "SHORTCUT_FILE": "Файл комбінацій клавіш (Roaming)",
-  "EDITOR_DATA": "Дані редактора (Local)",
-  "MOVE_VIEWPORT_TOOLTIP": "Перемістити вікно перегляду. ({0})",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "Натисніть і перемістіть, щоб панорамувати вікно перегляду",
-  "MOVE_TOOL_TOOLTIP": "Перемістити вибрані пікселі ({0}). Утримуйте Ctrl, щоб перемістити всі шари.",
-  "MOVE_TOOL_ACTION_DISPLAY": "Утримуйте мишу, щоб перемістити вибрані пікселі. Утримуйте Ctrl, щоб перемістити всі шари.",
-  "PEN_TOOL_TOOLTIP": "Перо. ({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "Натисніть і перемістіть, щоб намалювати.",
-  "PIXEL_PERFECT_SETTING": "Ідеальний піксель",
-  "RECTANGLE_TOOL_TOOLTIP": "Малювати прямокутник на полотні ({0}). Утримуйте Shift, щоб намалювати квадрат.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть, щоб намалювати прямокутник. Утримуйте Shift, щоб намалювати квадрат.",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Натисніть і перемістіть, щоб намалювати квадрат.",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "Зберегти оригінальне зображення",
-  "ROTATE_VIEWPORT_TOOLTIP": "Поворот вікна перегляду. ({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "Натисніть і перемістіть, щоб повернути вікно перегляду",
-  "SELECT_TOOL_TOOLTIP": "Вибирати область. ({0})",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть, щоб вибрати область. Утримуйте Shift, щоб додати до наявного виділення. Утримуйте Ctrl, щоб відняти від нього.",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Натисніть і перемістіть, щоб додати до поточного виділення.",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Натисніть і перемістіть, щоб відняти з поточного виділення.",
-  "ZOOM_TOOL_TOOLTIP": "Масштабування області перегляду ({0}). Натисніть, щоб збільшити, утримуйте клавішу Alt і натисніть, щоб зменшити.",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть для збільшення. Клацніть, щоб збільшити, утримуйте ctrl і натисніть, щоб зменшити.",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Натисніть і перемістіть для збільшення. Клацніть, щоб зменшити, відпустіть ctrl і натисніть, щоб збільшити.",
-  "BRIGHTNESS_TOOL_TOOLTIP": "Робить пікселі яскравішими або темнішими ({0}). Утримуйте Ctrl, щоб зробити пікселі темнішими.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Малюйте на пікселях, щоб зробити їх яскравішими. Утримуйте Ctrl, щоб затемнити.",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Малюйте на пікселях, щоб зробити їх темнішими. Відпустіть Ctrl, щоб зробити яскравішими.",
-  "COLOR_PICKER_TOOLTIP": "Вибір основного кольору з полотна. ({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Натисніть, щоб вибрати кольори. Утримуйте Ctrl, щоб приховати полотно. Утримуйте Shift, щоб приховати опорний шар",
-  "ELLIPSE_TOOL_TOOLTIP": "Малювати еліпс на полотні ({0}). Утримуйте Shift, щоб намалювати коло.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть мишу, щоб намалювати еліпс. Утримуйте Shift, щоб намалювати коло.",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Натисніть і перемістіть мишу, щоб намалювати коло.",
-  "ERASER_TOOL_TOOLTIP": "Гумки забарвлюють з пікселя. ({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "Натисніть і перемістіть, щоб стерти.",
-  "FLOOD_FILL_TOOL_TOOLTIP": "Заповнити область кольором. ({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть на область, щоб заповнити її. Утримуйте Ctrl, щоб розглянути всі шари.",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Натисніть на область, щоб заповнити її. Відпустіть Ctrl, щоб розглянути лише поточні шари.",
-  "LASSO_TOOL_TOOLTIP": "Ласо. ({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть, щоб вибрати пікселі всередині ласо. Утримуйте Shift, щоб додати до наявного виділення. Утримуйте Ctrl, щоб відняти від нього.",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Натисніть і перемістіть, щоб додати до виділення пікселі всередині ласо.",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Натисніть і перемістіть, щоб відняти пікселі всередині ласо з виділення.",
-  "LINE_TOOL_TOOLTIP": "Малювати лінію на полотні ({0}). Утримуйте Shift, щоб увімкнути прив’язку.",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Натисніть і перемістіть, щоб намалювати лінію. Утримуйте Shift, щоб увімкнути прив’язку.",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Клацніть і перемістіть мишу, щоб намалювати лінію з увімкненою прив’язкою.",
-  "MAGIC_WAND_TOOL_TOOLTIP": "Чарівна паличка ({0}).",
-  "MAGIC_WAND_ACTION_DISPLAY": "Натисніть, щоб залити виділення.",
-  "PEN_TOOL": "Перо",
-  "BRIGHTNESS_TOOL": "Яскравість",
-  "COLOR_PICKER_TOOL": "Палітра кольорів",
-  "ELLIPSE_TOOL": "Еліпс",
-  "ERASER_TOOL": "Гумка",
-  "FLOOD_FILL_TOOL": "Заливка",
-  "LASSO_TOOL": "Ласо",
-  "LINE_TOOL": "Лінія",
-  "MAGIC_WAND_TOOL": "Чарівна паличка",
-  "MOVE_TOOL": "Переміщення",
-  "MOVE_VIEWPORT_TOOL": "Переміщення вікна перегляду",
-  "RECTANGLE_TOOL": "Прямокутник",
-  "ROTATE_VIEWPORT_TOOL": "Обернути вікно перегляду",
-  "SELECT_TOOL_NAME": "Вибір",
-  "ZOOM_TOOL": "Масштабування",
-  "SHAPE_LABEL": "Форма",
-  "MODE_LABEL": "Режим",
-  "SCOPE_LABEL": "Область застосування",
-  "FILL_SHAPE_LABEL": "Залити форму",
-  "FILL_COLOR_LABEL": "Колір заливки",
-  "TOOL_SIZE_LABEL": "Розмір інструменту",
-  "STRENGTH_LABEL": "Сила",
-  "NEW": "Новий",
-  "ADD": "Додати",
-  "SUBTRACT": "Відняти",
-  "INTERSECT": "Перетин",
-  "RECTANGLE": "Прямокутник",
-  "CIRCLE": "Коло",
-  "ABOUT": "Про програму",
-  "MINIMIZE": "Згорнути",
-  "RESTORE": "Відновити",
-  "MAXIMIZE": "Розгорнути",
-  "CLOSE": "Закрити",
-  "EXPORT_SIZE_HINT": "Якщо ви хочете поділитися зображенням, спробуйте {0}% для найкращої чіткості",
-  "CREATE": "Створити",
-  "BASE_LAYER_NAME": "Базовий шар",
-  "ENABLE_MASK": "Увімкнути маску",
-  "SELECTED_AREA_EMPTY": "Вибрана область порожня",
-  "NOTHING_TO_COPY": "Копіювати нічого",
-  "REFERENCE_LAYER_PATH": "Шлях опорного шару",
-  "FLIP": "Перевернути",
-  "ROTATION": "Обертання",
-  "ROT_IMG_90_D": "Повернути зображення на 90°",
-  "ROT_IMG_180_D": "Повернути зображення на 180°",
-  "ROT_IMG_-90_D": "Повернути зображення на -90°",
-  "ROT_LAYERS_90_D": "Повернути виділені шари на 90°",
-  "ROT_LAYERS_180_D": "Повернути вибрані шари на 180°",
-  "ROT_LAYERS_-90_D": "Повернути виділені шари на -90°",
-  "UNNAMED_PALETTE": "Безіменна палітра",
-  "CLICK_SELECT_PRIMARY": "Натисніть, щоб вибрати основний колір.",
-  "PEN_MODE": "Режим пера",
-  "VIEW": "Переглянути",
-  "HORIZONTAL_LINE_SYMMETRY": "Симетрія горизонтальних ліній",
-  "VERTICAL_LINE_SYMMETRY": "Симетрія вертикальної лінії",
-  "COLOR_PICKER_TITLE": "Палітра кольорів",
-  "COLOR_SLIDERS_TITLE": "Кольорові повзунки",
-  "PALETTE_TITLE": "Палітра",
-  "SWATCHES_TITLE": "Зразки",
-  "LAYERS_TITLE": "Шари",
-  "NAVIGATION_TITLE": "Навігація",
-  "NORMAL_BLEND_MODE": "Нормальний",
-  "DARKEN_BLEND_MODE": "Затемнений",
-  "MULTIPLY_BLEND_MODE": "Помножити",
-  "COLOR_BURN_BLEND_MODE": "Випалювання кольору",
-  "LIGHTEN_BLEND_MODE": "Освітлений",
-  "SCREEN_BLEND_MODE": "Екран",
-  "COLOR_DODGE_BLEND_MODE": "Кольорове ухилення",
-  "OVERLAY_BLEND_MODE": "Накладання",
-  "SOFT_LIGHT_BLEND_MODE": "М'яке світло",
-  "HARD_LIGHT_BLEND_MODE": "Жорстке світло",
-  "DIFFERENCE_BLEND_MODE": "Різниця",
-  "EXCLUSION_BLEND_MODE": "Виключення",
-  "HUE_BLEND_MODE": "Відтінок",
-  "SATURATION_BLEND_MODE": "Насиченість",
-  "LUMINOSITY_BLEND_MODE": "Освітленість",
-  "COLOR_BLEND_MODE": "Колір",
-  "NOT_SUPPORTED_BLEND_MODE": "Не підтримується",
-  "RESTART": "Перезапустити",
-  "SORT_BY": "Сортувати за",
-  "NAME": "Назвою",
-  "COLORS": "Кольори",
-  "DEFAULT": "За замовчуванням",
-  "ALPHABETICAL": "Алфавітом",
-  "COLOR_COUNT": "Кількістю кольорів",
-  "ANY": "Будь-яке",
-  "MAX": "Макс",
-  "MIN": "Мін",
-  "EXACT": "Точний",
-  "ASCENDING": "Висхідний",
-  "DESCENDING": "Спадний",
-  "NAME_IS_TOO_LONG": "Назва занадто довга",
-  "STOP_IT_TEXT1": "Цього достатньо. Приведіть у порядок свої імена файлів.",
-  "STOP_IT_TEXT2": "Чи можете ви припинити копіювати ці імена, будь ласка?",
-  "REPLACER_TOOLTIP": "Клацніть правою кнопкою миші колір палітри та виберіть 'Замінити' або перемістіть його сюди.",
-  "CLICK_TO_CHOOSE_COLOR": "Натисніть, щоб вибрати колір",
-  "REPLACE_COLOR": "Замінити колір",
-  "PALETTE_COLOR_TOOLTIP": "Натисніть, щоб вибрати основний колір. Перетягніть на інший колір палітри, щоб поміняти їх місцями.",
-  "ADD_FROM_SWATCHES": "Додати зі зразків",
-  "ADD_COLOR_TO_PALETTE": "Додати колір до палітри",
-  "USE_IN_CURRENT_IMAGE": "Використовувати в поточному зображенні",
-  "ADD_TO_FAVORITES": "Додайте до обраних",
-  "BROWSE_PALETTES": "Огляд палітр",
-  "LOAD_PALETTE": "Завантажити палітру",
-  "SAVE_PALETTE": "Зберегти палітру",
-  "FAVORITES": "Вибране",
-  "ADD_FROM_CURRENT_PALETTE": "Додати з поточної палітри",
-  "OPEN_PALETTES_DIR_TOOLTIP": "Відкрити каталог палітр у Провіднику",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "Огляд палітр на Lospec",
-  "IMPORT_FROM_FILE_TOOLTIP": "Імпортувати з файлу",
-  "TOP_LEFT": "Вгорі ліворуч",
-  "TOP_CENTER": "Вгорі центр",
-  "TOP_RIGHT": "Вгорі праворуч",
-  "MIDDLE_LEFT": "Середина Ліворуч",
-  "MIDDLE_CENTER": "Середина Центр",
-  "MIDDLE_RIGHT": "Середина праворуч",
-  "BOTTOM_LEFT": "Внизу зліва",
-  "BOTTOM_CENTER": "Внизу центр",
-  "BOTTOM_RIGHT": "Внизу праворуч",
-  "CLIP_TO_BELOW": "Обрізати до шару нижче",
-  "MOVE_UPWARDS": "Перемістити вгору",
-  "MOVE_DOWNWARDS": "Перемістити вниз",
-  "MERGE_SELECTED": "Об’єднати вибрані",
-  "LOCK_TRANSPARENCY": "Заблокувати прозорість",
-  "COULD_NOT_LOAD_PALETTE": "Не вдалося отримати палітри",
-  "NO_PALETTES_FOUND": "Палітри не знайдено.",
-  "LOSPEC_LINK_TEXT": "Я чув, що ви можете знайти їх тут: lospec.com/palette-list",
-  "PALETTE_BROWSER": "Переглядач палітр",
-  "DELETE_PALETTE_CONFIRMATION": "Ви впевнені, що хочете видалити цю палітру? Це не може бути скасоване.",
-  "SHORTCUTS_IMPORTED": "Комбінації клавіш успішно імпортовано з {0}.",
-  "SHORTCUT_PROVIDER_DETECTED": "Ми виявили, що ви встановили {0}. Ви хочете імпортувати комбінації клавіш з нього?",
-  "IMPORT_FROM_INSTALLATION": "Імпорт з установки",
-  "IMPORT_INSTALLATION_OPTION1": "Імпорт з установки",
-  "IMPORT_INSTALLATION_OPTION2": "Використовувати значення за замовчуванням",
-  "IMPORT_FROM_TEMPLATE": "Імпорт із шаблону",
-  "SHORTCUTS_IMPORTED_SUCCESS": "Комбінації клавіш успішно імпортовано.",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "Ви впевнені, що бажаєте скинути всі комбінації клавіш до стандартних значень?",
-  "SUCCESS": "Успіх",
-  "WARNING": "Увага",
-  "ERROR_IMPORTING_IMAGE": "Під час імпортування зображення сталася помилка.",
-  "SHORTCUTS_CORRUPTED_TITLE": "Пошкоджений файл комбінацій клавіш",
-  "SHORTCUTS_CORRUPTED": "Файл комбінацій клавіш пошкоджено, скидання до замовчування.",
-  "FAILED_DOWNLOAD_PALETTE": "Не вдалося завантажити палітру",
-  "FILE_INCORRECT_FORMAT": "Файл був у неправильному форматі",
-  "INVALID_FILE": "Неправильний файл",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "Файл комбінацій клавіш був у неправильному форматі",
-  "UNSUPPORTED_FILE_FORMAT": "Цей формат файлу не підтримується",
-  "ALREADY_ASSIGNED": "Вже призначено",
-  "REPLACE": "Замінити",
-  "SWAP": "Обмін",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Цю комбінацію клавіш уже призначено для '{0}'\nБажаєте замінити наявну комбінацію чи поміняти їх місцями?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Цю комбінацію клавіш уже призначено для '{0}'\nБажаєте замінити існуючу комбінацію?",
-  "UNSAVED_CHANGES": "Незбережені зміни",
-  "DOCUMENT_MODIFIED_SAVE": "Документ змінено. Ви хочете зберегти зміни?",
-  "SESSION_UNSAVED_DATA": "{0} містить незбережені дані. Ви впевнені?",
-  "PROJECT_MAINTAINERS": "Супроводжувачі проекту",
-  "OTHER_AWESOME_CONTRIBUTORS": "Та інші чудові учасники",
-  "HELP": "Довідка",
-  "STOP_IT_TEXT3": "Ні, справді, перестаньте.",
-  "STOP_IT_TEXT4": "Невже у вас немає нічого кращого?",
-  "LINEAR_DODGE_BLEND_MODE": "Лінійне ухилення (Додати)",
-  "PRESS_ANY_KEY": "Натисніть будь-яку клавішу",
-  "NONE_SHORTCUT": "Нічого",
-  "REFERENCE": "Опорний",
-  "PUT_REFERENCE_LAYER_ABOVE": "Помістити опорний шар вище",
-  "PUT_REFERENCE_LAYER_BELOW": "Помістити опорний шар нижче",
-  "TOGGLE_VERTICAL_SYMMETRY": "Перемкнути вертикальну симетрію",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "Перемкнути горизонтальну симетрію",
-  "RESET_VIEWPORT": "Скинути вікно перегляду",
-  "VIEWPORT_SETTINGS": "Налаштування вікна перегляду",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "Натисніть і утримуйте мишу, щоб перемістити пікселі у вибраних шарах.",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "Утримуйте мишу, щоб перемістити всі шари.",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "Перейменувати",
-  "PIXEL_UNIT": "пікс",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "Відкрити вікно Налагодження локалізації",
-  "FORCE_OTHER_FLOW_DIRECTION": "Примусово змінити напрямок потоку",
-  "API_KEY": "Ключ API",
-  "LOCALIZATION_VIEW_TYPE": "Тип перегляду локалізації",
-  "LOAD_LANGUAGE_FROM_FILE": "Завантажити мову з файлу",
-  "LOG_IN": "Увійти",
-  "SYNC": "Синхр.",
-  "NOT_LOGGED_IN": "Не ввійшли в систему",
-  "POE_EDITOR_ERROR": "Помилка POEditor: {0} {1}",
-  "HTTP_ERROR_MESSAGE": "Помилка HTTP: {0} {1}",
-  "LOGGED_IN": "Вхід виконано",
-  "SYNCED_SUCCESSFULLY": "Успішно синхронізовано",
-  "EXCEPTION_ERROR": "Виключення: {0}",
-  "DROP_PALETTE": "Опустіть палітру сюди",
-  "SECURITY_ERROR": "Помилка безпеки",
-  "SECURITY_ERROR_MSG": "Немає прав на запис у вказане місце.",
-  "IO_ERROR": "Помилка вводу-виводу",
-  "IO_ERROR_MSG": "Помилка під час запису на диск.",
-  "FAILED_ASSOCIATE_PIXI": "Не вдалося пов’язати файл .pixi із PixiEditor.",
-  "COULD_NOT_SAVE_PALETTE": "Під час збереження палітри сталася помилка.",
-  "NO_COLORS_TO_SAVE": "Немає кольорів для збереження.",
-  "ALL_LAYERS": "Всі шари",
-  "SINGLE_LAYER": "Один шар",
-  "CHOOSE": "Обрати",
-  "REMOVE": "Видалити",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "Файл не є файлом \".aseprite-keys\"",
-  "FILE_HAS_INVALID_SHORTCUT": "Файл містить недійсні дані",
-  "FILE_EXTENSION_NOT_SUPPORTED": "Тип файлу '{0}' не підтримується",
-  "ERROR_READING_FILE": "Помилка під час читання файлу",
-  "DISCARD_PALETTE": "Видалити палітру",
-  "DISCARD_PALETTE_CONFIRMATION": "Ви впевнені, що бажаєте видалити поточну палітру? Це не може бути скасоване.",
-  "IMPORT_AS_NEW_LAYER": "Імпортувати як новий шар",
-  "PASTE_AS_PRIMARY_COLOR": "Вставити як основний колір",
-  "IMPORT_AS_NEW_FILE": "Імпортувати як новий файл",
-  "IMPORT_PALETTE_FILE": "Імпорт файлу палітри",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "Імпорт кольорів до палітри",
-  "IMPORT_SINGLE_PALETTE_COLOR": "Імпорт кольору до палітри",
-  "IMPORT_AS_REFERENCE_LAYER": "Імпортувати як опорний шар",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "Клацніть правою кнопкою миші, щоб вибрати колір, клацніть правою кнопкою миші, утримуючи Shift, щоб скопіювати колір до буфера обміну",
-  "OPEN_FILE_FROM_CLIPBOARD": "Відкрити з буфера обміну",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "Відкрити з буфера обміну",
-  "OPEN_LOCALIZATION_DATA": "Do you want to open the LocalizationData.json?\nThe updated date has been put in the clipboard.\nNote that changes wont be applied until a restart",
-  "DOWNLOADING_LANGUAGE_FAILED": "Помилка завантаження мови.\nМожливо, було зловживано ключем API.",
-  "LOCALIZATION_DATA_NOT_FOUND": "Шлях до даних локалізації не знайдено",
-  "APPLY": "Застосувати",
-  "UPDATE_SOURCE": "Джерело оновлення",
-  "COPY_TO_CLIPBOARD": "Копіювати в буфер обміну",
-  "LANGUAGE_FILE_NOT_FOUND": "Мовний файл не знайдено.\nОчікувалось {0}",
-  "PROJECT_ROOT_NOT_FOUND": "Кореневу папку проекту PixiEditor не знайдено.\nШукаємо PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "Папка локалізації не знайдена.\nОчікувалось за адресою /Data/Localization",
-  "SELECT_A_LANGUAGE": "Виберіть мову",
-  "DONE": "Готово",
-  "SOURCE_UNSET_OR_MISSING": "Джерело відсутнє/не встановлено",
-  "SOURCE_NEWER": "Джерело новіше",
-  "SOURCE_UP_TO_DATE": "Джерело актуальне",
-  "SOURCE_OLDER": "Хмара новіше",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 564
src/PixiEditor.AvaloniaUI/Data/Localization/Languages/zh.json

@@ -1,564 +0,0 @@
-{
-  "RECENT_FILES": "最近",
-  "OPEN_FILE": "打开",
-  "NEW_FILE": "新建",
-  "RECENT_EMPTY_TEXT": "空空如也……",
-  "LANGUAGE": "语言",
-  "GENERAL": "基础设置",
-  "DISCORD": "Discord",
-  "KEY_BINDINGS": "按键绑定",
-  "MISC": "杂项",
-  "SHOW_STARTUP_WINDOW": "显示启动窗口",
-  "SHOW_IMAGE_PREVIEW_TASKBAR": "在工具栏显示图像预览",
-  "RECENT_FILE_LENGTH": "最近文件列表长度",
-  "RECENT_FILE_LENGTH_TOOLTIP": "文件>最近中的文件数量。默认值:8",
-  "DEFAULT_NEW_SIZE": "新文件默认大小",
-  "WIDTH": "宽度",
-  "HEIGHT": "高度",
-  "TOOLS": "工具",
-  "ENABLE_SHARED_TOOLBAR": "共享工具栏",
-  "AUTOMATIC_UPDATES": "自动更新",
-  "CHECK_FOR_UPDATES": "在启动时检查更新",
-  "UPDATE_STREAM": "更新渠道",
-  "UPDATE_CHANNEL_HELP_TOOLTIP": "更新渠道只能在独立版本中更改(下载于 https://pixieditor.net)。\nSteam 和微软商店版分开处理更新。",
-  "DEBUG": "调试",
-  "ENABLE_DEBUG_MODE": "开启调试模式",
-  "OPEN_CRASH_REPORTS_DIR": "开启崩溃报告文件夹",
-  "DISCORD_RICH_PRESENCE": "动态设定",
-  "ENABLED": "允许",
-  "SHOW_IMAGE_NAME": "显示图片名称",
-  "SHOW_IMAGE_SIZE": "显示图片大小",
-  "SHOW_LAYER_COUNT": "显示图层数量",
-  "FILE": "文件",
-  "RECENT": "最近",
-  "OPEN": "打开",
-  "SAVE_PIXI": "保存 (.pixi)",
-  "SAVE_AS_PIXI": "另存为... (.pixi)",
-  "EXPORT_IMG": "导出 (.png, .jpg, 等)",
-  "EDIT": "编辑",
-  "EXIT": "退出",
-  "PERCENTAGE": "百分比",
-  "ABSOLUTE": "绝对比例",
-  "PRESERVE_ASPECT_RATIO": "保持比例",
-  "ANCHOR_POINT": "锚点",
-  "RESIZE_IMAGE": "调整图片大小",
-  "RESIZE": "调整大小",
-  "DOCUMENTATION": "帮助文档",
-  "WEBSITE": "网站",
-  "OPEN_WEBSITE": "打开网站",
-  "REPOSITORY": "资料库",
-  "OPEN_REPOSITORY": "打开资料库",
-  "LICENSE": "许可",
-  "OPEN_LICENSE": "打开许可",
-  "THIRD_PARTY_LICENSES": "第三方许可",
-  "OPEN_THIRD_PARTY_LICENSES": "打开第三方许可",
-  "APPLY_TRANSFORM": "应用更改",
-  "INCREASE_TOOL_SIZE": "增加工具大小",
-  "DECREASE_TOOL_SIZE": "减少工具大小",
-  "TO_INSTALL_UPDATE": "以下载更新{0}",
-  "DOWNLOADING_UPDATE": "下载更新中……",
-  "UPDATE_READY": "有可用更新。是否现在开始下载?",
-  "NEW_UPDATE": "可用更新",
-  "COULD_NOT_UPDATE_WITHOUT_ADMIN": "需要管理员权限以更新。请使用管理员账号运行PixiEditor。",
-  "INSUFFICIENT_PERMISSIONS": "权限不足",
-  "UPDATE_CHECK_FAILED": "更新检查失败",
-  "COULD_NOT_CHECK_FOR_UPDATES": "无法检查可用更新。",
-  "VERSION": "版本{0}",
-  "OPEN_TEMP_DIR": "打开缓存文件夹",
-  "OPEN_LOCAL_APPDATA_DIR": "打开本地应用数据目录",
-  "OPEN_ROAMING_APPDATA_DIR": "打开漫游应用数据目录",
-  "OPEN_INSTALLATION_DIR": "打开安装目录",
-  "DUMP_ALL_COMMANDS": "转储所有命令",
-  "DUMP_ALL_COMMANDS_DESCRIPTIVE": "将所有命令转储于一个文本文档",
-  "CRASH": "崩溃",
-  "CRASH_APP": "崩溃此程序",
-  "DELETE_USR_PREFS": "删除用户设定(缓存程序资料)",
-  "DELETE_SHORTCUT_FILE": "删除捷径文件(漫游应用数据)",
-  "DELETE_EDITOR_DATA": "删除编辑器资料(本地应用数据)",
-  "GENERATE_KEY_BINDINGS_TEMPLATE": "生成按键绑定模版",
-  "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "生成Json按键绑定模版",
-  "VALIDATE_SHORTCUT_MAP": "验证捷径图",
-  "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "验证捷径图",
-  "VALIDATION_KEYS_NOTICE_DIALOG": "空键:{0}\n未知命令:{1}",
-  "RESULT": "结果",
-  "CLEAR_RECENT_DOCUMENTS": "清空最近文件",
-  "CLEAR_RECENTLY_OPENED_DOCUMENTS": "清空最近打开的文件",
-  "OPEN_CMD_DEBUG_WINDOW": "打开命令除错窗口",
-  "PATH_DOES_NOT_EXIST": "{0}不存在。",
-  "LOCATION_DOES_NOT_EXIST": "位置不存在。",
-  "FILE_NOT_FOUND": "无法找到文件。",
-  "ARE_YOU_SURE": "你确定吗?",
-  "ARE_YOU_SURE_PATH_FULL_PATH": "你确定要删除{0}吗?\n所有安装都将丢失此资料。\n(完整位置:{1})",
-  "FAILED_TO_OPEN_FILE": "无法打开文件",
-  "OLD_FILE_FORMAT": "旧文件格式",
-  "OLD_FILE_FORMAT_DESCRIPTION": "此 .pixi 文件使用了已被停止支持的旧文件格式。",
-  "NOTHING_FOUND": "无结果",
-  "EXPORT": "导出",
-  "EXPORT_IMAGE": "导出图片",
-  "IMPORT": "导入",
-  "SHORTCUT_TEMPLATES": "捷径模版",
-  "RESET_ALL": "重置所有捷径",
-  "LAYER": "图层",
-  "LAYER_DELETE_SELECTED": "删除当前图层/文件夹",
-  "LAYER_DELETE_SELECTED_DESCRIPTIVE": "删除当前图层或文件夹",
-  "LAYER_DELETE_ALL_SELECTED": "删除所有已选图层/文件夹",
-  "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "删除所有已选图层和/或文件夹",
-  "DELETE_SELECTED_PIXELS": "删除所选像素",
-  "NEW_FOLDER": "新文件夹",
-  "CREATE_NEW_FOLDER": "新建一个文件夹",
-  "NEW_LAYER": "新图层",
-  "CREATE_NEW_LAYER": "新建一个图层",
-  "NEW_IMAGE": "新图片",
-  "CREATE_NEW_IMAGE": "新建图片",
-  "SAVE": "保存",
-  "SAVE_AS": "另存为……",
-  "IMAGE": "图片",
-  "SAVE_IMAGE": "保存图片",
-  "SAVE_IMAGE_AS": "另存为新图片",
-  "DUPLICATE": "复制",
-  "DUPLICATE_SELECTED_LAYER": "复制当前图层",
-  "CREATE_MASK": "创建蒙版",
-  "DELETE_MASK": "删除蒙版",
-  "TOGGLE_MASK": "开/关蒙版",
-  "APPLY_MASK": "应用蒙版",
-  "TOGGLE_VISIBILITY": "切换可见性",
-  "MOVE_MEMBER_UP": "将成员上移",
-  "MOVE_MEMBER_UP_DESCRIPTIVE": "将已选图层或文件夹上移",
-  "MOVE_MEMBER_DOWN": "将成员下移",
-  "MOVE_MEMBER_DOWN_DESCRIPTIVE": "将已选图层或文件夹下移",
-  "MERGE_ALL_SELECTED_LAYERS": "合并所有已选图层",
-  "MERGE_WITH_ABOVE": "将已选图层和上方图层合并",
-  "MERGE_WITH_ABOVE_DESCRIPTIVE": "将选择的图层和其上方图层合并",
-  "MERGE_WITH_BELOW": "将已选图层和下方图层合并",
-  "MERGE_WITH_BELOW_DESCRIPTIVE": "将选择的图层和其下方图层合并",
-  "ADD_REFERENCE_LAYER": "增加参考图层",
-  "DELETE_REFERENCE_LAYER": "删除参考图层",
-  "TRANSFORM_REFERENCE_LAYER": "改变参考图层",
-  "TOGGLE_REFERENCE_LAYER_POS": "切换参考图层位置",
-  "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "在最上层和最下层之间切换参考图层",
-  "RESET_REFERENCE_LAYER_POS": "重置参考图层位置",
-  "CLIP_CANVAS": "裁剪画布",
-  "FLIP_IMG_VERTICALLY": "垂直翻转图片",
-  "FLIP_IMG_HORIZONTALLY": "水平翻转图片",
-  "FLIP_LAYERS_VERTICALLY": "垂直翻转已选图层",
-  "FLIP_LAYERS_HORIZONTALLY": "水平翻转已选图层",
-  "ROT_IMG_90": "将图片顺时针旋转90度",
-  "ROT_IMG_180": "将图片旋转180度",
-  "ROT_IMG_-90": "将图片逆时针旋转90度",
-  "ROT_LAYERS_90": "将已选图层顺时针旋转90度",
-  "ROT_LAYERS_180": "将已选图层旋转180度",
-  "ROT_LAYERS_-90": "将已选图层逆时针旋转90度",
-  "TOGGLE_VERT_SYMMETRY_AXIS": "开/关垂直对称轴",
-  "TOGGLE_HOR_SYMMETRY_AXIS": "开/关水平对称轴",
-  "DELETE_PIXELS": "删除像素",
-  "DELETE_PIXELS_DESCRIPTIVE": "删除已选像素",
-  "RESIZE_DOCUMENT": "更改文件大小",
-  "RESIZE_CANVAS": "更改画布大小",
-  "CENTER_CONTENT": "居中内容",
-  "CUT": "剪切",
-  "CUT_DESCRIPTIVE": "剪切选区/图层",
-  "PASTE": "粘贴",
-  "PASTE_DESCRIPTIVE": "粘贴剪贴簿内容",
-  "PASTE_AS_NEW_LAYER": "以新图层粘贴",
-  "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "从剪贴薄粘贴至新图层",
-  "PASTE_REFERENCE_LAYER": "粘贴参考图层",
-  "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "从剪贴薄粘贴至参考图层",
-  "PASTE_COLOR": "粘贴颜色",
-  "PASTE_COLOR_DESCRIPTIVE": "从剪贴薄粘贴颜色",
-  "PASTE_COLOR_SECONDARY": "粘贴颜色为次要",
-  "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "从剪贴薄粘贴颜色为次要",
-  "CLIPBOARD": "剪贴薄",
-  "COPY": "复制",
-  "COPY_DESCRIPTIVE": "复制到剪贴薄",
-  "COPY_COLOR_HEX": "复制主要颜色(十六进制值)",
-  "COPY_COLOR_HEX_DESCRIPTIVE": "将主要颜色复制为十六进制值(Hex)",
-  "COPY_COLOR_RGB": "复制主要颜色(RGB)",
-  "COPY_COLOR_RGB_DESCRIPTIVE": "将主要颜色复制为RGB值(红绿蓝)",
-  "COPY_COLOR_SECONDARY_HEX": "复制次要颜色(十六进制值)",
-  "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "将次要颜色复制为十六进制值(Hex)",
-  "COPY_COLOR_SECONDARY_RGB": "复制次要颜色(十六进制值)",
-  "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "将次要颜色复制为RGB值(红绿蓝)",
-  "PALETTE_COLORS": "调色板颜色",
-  "REPLACE_SECONDARY_BY_PRIMARY": "将次要颜色替换为主要颜色",
-  "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "将次要颜色替换为主要颜色",
-  "REPLACE_PRIMARY_BY_SECONDARY": "将主要颜色替换为次要颜色",
-  "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "将主要颜色替换为次要颜色",
-  "OPEN_PALETTE_BROWSER": "浏览调色板",
-  "OVERWRITE_PALETTE_CONSENT": "色板“{0}”已经存在,是否替换?",
-  "PALETTE_EXISTS": "色板已经存在",
-  "REPLACE_PALETTE_CONSENT": "是否将目前色板替换为已选色板?",
-  "REPLACE_PALETTE": "替换目前色板",
-  "SELECT_COLOR_1": "选择颜色1",
-  "SELECT_COLOR_2": "选择颜色2",
-  "SELECT_COLOR_3": "选择颜色3",
-  "SELECT_COLOR_4": "选择颜色4",
-  "SELECT_COLOR_5": "选择颜色5",
-  "SELECT_COLOR_6": "选择颜色6",
-  "SELECT_COLOR_7": "选择颜色7",
-  "SELECT_COLOR_8": "选择颜色8",
-  "SELECT_COLOR_9": "选择颜色9",
-  "SELECT_COLOR_10": "选择颜色10",
-  "SELECT_TOOL": "选择{0}工具",
-  "SELECT_COLOR_1_DESCRIPTIVE": "选择色板中首项颜色",
-  "SELECT_COLOR_2_DESCRIPTIVE": "选择色板中第二项颜色",
-  "SELECT_COLOR_3_DESCRIPTIVE": "选择色板中第三项颜色",
-  "SELECT_COLOR_4_DESCRIPTIVE": "选择色板中第四项颜色",
-  "SELECT_COLOR_5_DESCRIPTIVE": "选择色板中第五项颜色",
-  "SELECT_COLOR_6_DESCRIPTIVE": "选择色板中第六项颜色",
-  "SELECT_COLOR_7_DESCRIPTIVE": "选择色板中第七项颜色",
-  "SELECT_COLOR_8_DESCRIPTIVE": "选择色板中第八项颜色",
-  "SELECT_COLOR_9_DESCRIPTIVE": "选择色板中第九项颜色",
-  "SELECT_COLOR_10_DESCRIPTIVE": "选择色板中第十项颜色",
-  "SWAP_COLORS": "交换颜色",
-  "SWAP_COLORS_DESCRIPTIVE": "交换首要和次要颜色",
-  "SEARCH": "搜索",
-  "COMMAND_SEARCH": "命令搜索",
-  "OPEN_COMMAND_SEARCH": "打开命令搜索窗口",
-  "SELECT": "选择",
-  "DESELECT": "取消选择",
-  "INVERT": "反色",
-  "SELECTION": "选区",
-  "SELECT_ALL": "全选",
-  "SELECT_ALL_DESCRIPTIVE": "全部选择",
-  "CLEAR_SELECTION": "清除选区",
-  "INVERT_SELECTION": "反色选区",
-  "INVERT_SELECTION_DESCRIPTIVE": "反色当前已选内容",
-  "TRANSFORM_SELECTED_AREA": "改变选区",
-  "NUDGE_SELECTED_LEFT": "将选区向左微移",
-  "NUDGE_SELECTED_RIGHT": "将选区向右微移",
-  "NUDGE_SELECTED_UP": "将选区向上微移",
-  "NUDGE_SELECTED_DOWN": "将选区向下微移",
-  "MASK_FROM_SELECTION": "从选区创建新蒙版",
-  "MASK_FROM_SELECTION_DESCRIPTIVE": "将选区转为新蒙版",
-  "ADD_SELECTION_TO_MASK": "将选区添加到蒙版",
-  "SUBTRACT_SELECTION_FROM_MASK": "從蒙版中減去選區",
-  "INTERSECT_SELECTION_MASK": "将选区与选区香蕉",
-  "SELECTION_TO_MASK": "选区转蒙版",
-  "TO_NEW_MASK": "至新蒙版",
-  "ADD_TO_MASK": "添加至蒙版",
-  "SUBTRACT_FROM_MASK": "从蒙版减去",
-  "INTERSECT_WITH_MASK": "与蒙版相交",
-  "STYLUS": "数位笔",
-  "TOGGLE_PEN_MODE": "开/关笔模式",
-  "UNDO": "撤销",
-  "UNDO_DESCRIPTIVE": "撤销上次更改",
-  "REDO": "重做",
-  "REDO_DESCRIPTIVE": "重做上次撤销",
-  "WINDOWS": "窗口",
-  "TOGGLE_GRIDLINES": "开/关网格线",
-  "ZOOM_IN": "放大",
-  "ZOOM_OUT": "缩小",
-  "NEW_WINDOW_FOR_IMG": "为当前图片创建新窗口",
-  "CENTER_ACTIVE_VIEWPORT": "居中视口",
-  "FLIP_VIEWPORT_HORIZONTALLY": "将视口水平翻转",
-  "FLIP_VIEWPORT_VERTICALLY": "将视口垂直翻转",
-  "SETTINGS": "设置",
-  "OPEN_SETTINGS": "打开设置",
-  "OPEN_SETTINGS_DESCRIPTIVE": "打开设置窗口",
-  "OPEN_STARTUP_WINDOW": "打开起始窗口",
-  "OPEN_SHORTCUT_WINDOW": "打开捷径窗口",
-  "OPEN_ABOUT_WINDOW": "打开关于窗口",
-  "OPEN_NAVIGATION_WINDOW": "打开导航窗口",
-  "ERROR": "错误",
-  "INTERNAL_ERROR": "内部错误",
-  "ERROR_SAVE_LOCATION": "无法将文件保存至指定位置",
-  "ERROR_WHILE_SAVING": "保存时发生了一个内部错误。请再试一次。",
-  "UNKNOWN_ERROR_SAVING": "保存时发生了一个错误。",
-  "FAILED_ASSOCIATE_LOSPEC": "无法连接至Lospec调色板",
-  "REDDIT": "Reddit",
-  "GITHUB": "GitHub",
-  "YOUTUBE": "YouTube",
-  "DONATE": "捐款",
-  "YES": "是",
-  "NO": "否",
-  "CANCEL": "取消",
-  "UNNAMED": "无标题",
-  "OPEN_COMMAND_DEBUG_WINDOW": "打开命令调试窗口",
-  "DELETE": "删除",
-  "USER_PREFS": "用户设定(漫游)",
-  "SHORTCUT_FILE": "快捷方式(漫游)",
-  "EDITOR_DATA": "编辑器资料(本地)",
-  "MOVE_VIEWPORT_TOOLTIP": "移动视口({0})。",
-  "MOVE_VIEWPORT_ACTION_DISPLAY": "点击并拖动以平移视口",
-  "MOVE_TOOL_TOOLTIP": "移动选区像素({0})。按住Ctrl以移动所有图层。",
-  "MOVE_TOOL_ACTION_DISPLAY": "点击并拖动鼠标以移动选区像素。按住Ctrl以移动所有图层。",
-  "PEN_TOOL_TOOLTIP": "画笔({0})",
-  "PEN_TOOL_ACTION_DISPLAY": "点击并拖动以进行绘制。",
-  "PIXEL_PERFECT_SETTING": "圆滑边角",
-  "RECTANGLE_TOOL_TOOLTIP": "在画布上绘制长方形({0})。按住Shift以绘制正方形。",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "点击并拖动鼠标以绘制长方形。拖动时按住Shift以绘制正方形。",
-  "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "点击并拖动以绘制正方形。",
-  "KEEP_ORIGINAL_IMAGE_SETTING": "保存原图",
-  "ROTATE_VIEWPORT_TOOLTIP": "旋转视口。({0})",
-  "ROTATE_VIEWPORT_ACTION_DISPLAY": "点击并拖动以旋转视口",
-  "SELECT_TOOL_TOOLTIP": "选择区域({0})。",
-  "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "点击并拖动鼠标以选择一个区域。按住Shift以将其加至已有选区。按住Ctrl以从选区中删除选择。",
-  "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "点击并拖动以加至已有选区。",
-  "SELECT_TOOL_ACTION_DISPLAY_CTRL": "点击并拖动以从选区中删除选择。",
-  "ZOOM_TOOL_TOOLTIP": "缩放视图({0})。单击以放大,按住Alt后单击以缩小。",
-  "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "点击并拖动以缩放视图。单击以放大,按住Ctrl后单击以缩小。",
-  "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "点击并拖动以缩放视图。单击以缩小,松开Ctrl后单击以放大。",
-  "BRIGHTNESS_TOOL_TOOLTIP": "将像素变亮或变暗({0})。按住Ctrl以将像素变暗。",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "在像素上绘画以将其变亮。按住Ctrl以变暗。",
-  "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "在像素上绘画以将其变暗。松开Ctrl以变亮。",
-  "COLOR_PICKER_TOOLTIP": "从画布中选取主要颜色。({0})",
-  "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "单击以选取颜色。按住Ctrl以隐藏画布。按住Shift以隐藏参考画布。",
-  "ELLIPSE_TOOL_TOOLTIP": "在画布上绘制椭圆({0})。按住Shift以绘制圆形。",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "单击并拖动以绘制椭圆。按住Shift以绘制圆形。",
-  "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "单击并拖动以绘制圆形。",
-  "ERASER_TOOL_TOOLTIP": "从像素擦除颜色。({0})",
-  "ERASER_TOOL_ACTION_DISPLAY": "单击并拖动以擦除。",
-  "FLOOD_FILL_TOOL_TOOLTIP": "用颜色填充区域。({0})",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "在区域上单击以将其填充。按住Ctrl以考虑所有图层。",
-  "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "在区域上单击以将其填充。按住Ctrl以考虑所有图层。",
-  "LASSO_TOOL_TOOLTIP": "拉索。({0})",
-  "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "单击并拖动以选取拉索内的像素。按住Shift以将其加至已有选区。按住Ctrl以从选区中删除选择。",
-  "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "单击并拖动以将其加至已有选区。",
-  "LASSO_TOOL_ACTION_DISPLAY_CTRL": "单击并拖动以从选区中删除选择。",
-  "LINE_TOOL_TOOLTIP": "在画布上画直线({0})。按住 Shift 以启动吸附功能。",
-  "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "单击并拖动以画直线。按住Shift以启动吸附功能。",
-  "LINE_TOOL_ACTION_DISPLAY_SHIFT": "点击并拖动以在启用吸附功能时绘制直线。",
-  "MAGIC_WAND_TOOL_TOOLTIP": "魔法棒({0})。填满选区",
-  "MAGIC_WAND_ACTION_DISPLAY": "单击以填满选区。",
-  "PEN_TOOL": "笔",
-  "BRIGHTNESS_TOOL": "亮度",
-  "COLOR_PICKER_TOOL": "选色器",
-  "ELLIPSE_TOOL": "椭圆",
-  "ERASER_TOOL": "橡皮",
-  "FLOOD_FILL_TOOL": "填满",
-  "LASSO_TOOL": "拉索",
-  "LINE_TOOL": "直线",
-  "MAGIC_WAND_TOOL": "魔法棒",
-  "MOVE_TOOL": "移动",
-  "MOVE_VIEWPORT_TOOL": "移动视图",
-  "RECTANGLE_TOOL": "长方形",
-  "ROTATE_VIEWPORT_TOOL": "旋转视图",
-  "SELECT_TOOL_NAME": "选择",
-  "ZOOM_TOOL": "缩放",
-  "SHAPE_LABEL": "形状",
-  "MODE_LABEL": "模式",
-  "SCOPE_LABEL": "范围",
-  "FILL_SHAPE_LABEL": "填充形状",
-  "FILL_COLOR_LABEL": "填充颜色",
-  "TOOL_SIZE_LABEL": "工具大小",
-  "STRENGTH_LABEL": "强度",
-  "NEW": "新建",
-  "ADD": "添加",
-  "SUBTRACT": "删减",
-  "INTERSECT": "相交",
-  "RECTANGLE": "长方形",
-  "CIRCLE": "圆形",
-  "ABOUT": "关于",
-  "MINIMIZE": "最小化",
-  "RESTORE": "还原",
-  "MAXIMIZE": "最大化",
-  "CLOSE": "关闭",
-  "EXPORT_SIZE_HINT": "如果你想分享此图片,尝试{0}%以获得最佳清晰度",
-  "CREATE": "创建",
-  "BASE_LAYER_NAME": "基础图层",
-  "ENABLE_MASK": "开启蒙版",
-  "SELECTED_AREA_EMPTY": "所选区域为空",
-  "NOTHING_TO_COPY": "没有可复制的内容",
-  "REFERENCE_LAYER_PATH": "参考图层路径",
-  "FLIP": "反转",
-  "ROTATION": "旋转",
-  "ROT_IMG_90_D": "顺时针旋转图片90°",
-  "ROT_IMG_180_D": "旋转图片180°",
-  "ROT_IMG_-90_D": "逆时针旋转图片90°",
-  "ROT_LAYERS_90_D": "顺时针旋转已选图片90°",
-  "ROT_LAYERS_180_D": "旋转已选图片180°",
-  "ROT_LAYERS_-90_D": "逆时针旋转已选图片90°",
-  "UNNAMED_PALETTE": "未命名调色板",
-  "CLICK_SELECT_PRIMARY": "单击以将其设为主色",
-  "PEN_MODE": "画笔模式",
-  "VIEW": "视图",
-  "HORIZONTAL_LINE_SYMMETRY": "水平对称",
-  "VERTICAL_LINE_SYMMETRY": "垂直对称",
-  "COLOR_PICKER_TITLE": "颜色选取器",
-  "COLOR_SLIDERS_TITLE": "颜色滑块",
-  "PALETTE_TITLE": "色板",
-  "SWATCHES_TITLE": "颜色样品",
-  "LAYERS_TITLE": "图层",
-  "NAVIGATION_TITLE": "导航器",
-  "NORMAL_BLEND_MODE": "正常",
-  "DARKEN_BLEND_MODE": "变暗",
-  "MULTIPLY_BLEND_MODE": "叠加",
-  "COLOR_BURN_BLEND_MODE": "颜色加深",
-  "LIGHTEN_BLEND_MODE": "变亮",
-  "SCREEN_BLEND_MODE": "滤色",
-  "COLOR_DODGE_BLEND_MODE": "颜色减淡",
-  "OVERLAY_BLEND_MODE": "叠加",
-  "SOFT_LIGHT_BLEND_MODE": "软光",
-  "HARD_LIGHT_BLEND_MODE": "硬光",
-  "DIFFERENCE_BLEND_MODE": "差值",
-  "EXCLUSION_BLEND_MODE": "排除",
-  "HUE_BLEND_MODE": "色相保留",
-  "SATURATION_BLEND_MODE": "饱和",
-  "LUMINOSITY_BLEND_MODE": "光度",
-  "COLOR_BLEND_MODE": "颜色",
-  "NOT_SUPPORTED_BLEND_MODE": "不支持",
-  "RESTART": "重启",
-  "SORT_BY": "排序方式:",
-  "NAME": "名称",
-  "COLORS": "颜色",
-  "DEFAULT": "正常",
-  "ALPHABETICAL": "字母顺序",
-  "COLOR_COUNT": "颜色数量",
-  "ANY": "任何",
-  "MAX": "最多",
-  "MIN": "最少",
-  "EXACT": "精准",
-  "ASCENDING": "顺序",
-  "DESCENDING": "倒序",
-  "NAME_IS_TOO_LONG": "名称过长",
-  "STOP_IT_TEXT1": "够了!把文件命名好。",
-  "STOP_IT_TEXT2": "请别再复制这些文件名了好吗?!",
-  "REPLACER_TOOLTIP": "右键色板并选择代替或将其放置于此。",
-  "CLICK_TO_CHOOSE_COLOR": "单击以选择颜色",
-  "REPLACE_COLOR": "代替颜色",
-  "PALETTE_COLOR_TOOLTIP": "单击以选为主色。点击并将其拖动至另一个色板以将其互换。",
-  "ADD_FROM_SWATCHES": "从颜色样品中加入",
-  "ADD_COLOR_TO_PALETTE": "将颜色加至色板",
-  "USE_IN_CURRENT_IMAGE": "在当前图片中使用",
-  "ADD_TO_FAVORITES": "加至收藏夹",
-  "BROWSE_PALETTES": "浏览色板",
-  "LOAD_PALETTE": "导入色板",
-  "SAVE_PALETTE": "保存色板",
-  "FAVORITES": "收藏夹",
-  "ADD_FROM_CURRENT_PALETTE": "从当前调色板添加",
-  "OPEN_PALETTES_DIR_TOOLTIP": "在文件管理器中打开色板文件夹",
-  "BROWSE_ON_LOSPEC_TOOLTIP": "在Lospec中浏览色板",
-  "IMPORT_FROM_FILE_TOOLTIP": "从文件导入",
-  "TOP_LEFT": "左上角",
-  "TOP_CENTER": "上方",
-  "TOP_RIGHT": "右上角",
-  "MIDDLE_LEFT": "左方",
-  "MIDDLE_CENTER": "居中",
-  "MIDDLE_RIGHT": "右方",
-  "BOTTOM_LEFT": "左下角",
-  "BOTTOM_CENTER": "下方",
-  "BOTTOM_RIGHT": "右下角",
-  "CLIP_TO_BELOW": "裁剪至下方图层",
-  "MOVE_UPWARDS": "向上移",
-  "MOVE_DOWNWARDS": "向下移",
-  "MERGE_SELECTED": "移动选区",
-  "LOCK_TRANSPARENCY": "锁定透明度",
-  "COULD_NOT_LOAD_PALETTE": "无法获取色板",
-  "NO_PALETTES_FOUND": "未找到色板",
-  "LOSPEC_LINK_TEXT": "我听说你可以在这儿发现些色板:lospec.com/palette-list",
-  "PALETTE_BROWSER": "色板浏览器",
-  "DELETE_PALETTE_CONFIRMATION": "你确定要删除此色板吗?此操作无法被撤销。",
-  "SHORTCUTS_IMPORTED": "已成功导入位于{0}的色板",
-  "SHORTCUT_PROVIDER_DETECTED": "我们检测到你已安装{0}。你想从中导入捷径吗?",
-  "IMPORT_FROM_INSTALLATION": "从安装导入",
-  "IMPORT_INSTALLATION_OPTION1": "从安装导入",
-  "IMPORT_INSTALLATION_OPTION2": "使用默认设置",
-  "IMPORT_FROM_TEMPLATE": "从模版导入",
-  "SHORTCUTS_IMPORTED_SUCCESS": "捷径已被成功导入。",
-  "WARNING_RESET_SHORTCUTS_DEFAULT": "你确认要将所有捷径重置为默认值吗?",
-  "SUCCESS": "成功",
-  "WARNING": "警告",
-  "ERROR_IMPORTING_IMAGE": "导入图片时出现了错误。",
-  "SHORTCUTS_CORRUPTED_TITLE": "损坏的捷径文件",
-  "SHORTCUTS_CORRUPTED": "捷径文件已损坏,将其重置为默认值。",
-  "FAILED_DOWNLOAD_PALETTE": "无法下载色板",
-  "FILE_INCORRECT_FORMAT": "文件格式不正确",
-  "INVALID_FILE": "无效文件",
-  "SHORTCUTS_FILE_INCORRECT_FORMAT": "捷径文件格式不正确",
-  "UNSUPPORTED_FILE_FORMAT": "不支持此文件格式",
-  "ALREADY_ASSIGNED": "已被分配",
-  "REPLACE": "代替",
-  "SWAP": "互换",
-  "SHORTCUT_ALREADY_ASSIGNED_SWAP": "此捷径已被分配至“{0}”\n是否将其代替或互换?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "此捷径已被分配至“{0}”\n是否将其代替?",
-  "UNSAVED_CHANGES": "未保存更改",
-  "DOCUMENT_MODIFIED_SAVE": "此文件已被更改。是否保存?",
-  "SESSION_UNSAVED_DATA": "{0}有未保存资料。你确定吗?",
-  "PROJECT_MAINTAINERS": "项目维护者",
-  "OTHER_AWESOME_CONTRIBUTORS": "和其他超棒的贡献者",
-  "HELP": "帮助",
-  "STOP_IT_TEXT3": "不,真的,别这样。",
-  "STOP_IT_TEXT4": "你就没有别的事情可做吗?!",
-  "LINEAR_DODGE_BLEND_MODE": "线性减淡(增加)",
-  "PRESS_ANY_KEY": "按任意键",
-  "NONE_SHORTCUT": "无",
-  "REFERENCE": "参考",
-  "PUT_REFERENCE_LAYER_ABOVE": "将参考图层上移一个图层",
-  "PUT_REFERENCE_LAYER_BELOW": "将参考图层下移一个图层",
-  "TOGGLE_VERTICAL_SYMMETRY": "开/关垂直对称",
-  "TOGGLE_HORIZONTAL_SYMMETRY": "开/关水平对称",
-  "RESET_VIEWPORT": "重置视图",
-  "VIEWPORT_SETTINGS": "视图设置",
-  "MOVE_TOOL_ACTION_DISPLAY_TRANSFORMING": "单击并拖动以移动已选图层中的像素。",
-  "MOVE_TOOL_ACTION_DISPLAY_CTRL": "拖动鼠标以移动所有图层。",
-  "CTRL_KEY": "Ctrl",
-  "SHIFT_KEY": "Shift",
-  "ALT_KEY": "Alt",
-  "RENAME": "重命名",
-  "PIXEL_UNIT": "像素",
-  "OPEN_LOCALIZATION_DEBUG_WINDOW": "打开本地化调试窗口",
-  "FORCE_OTHER_FLOW_DIRECTION": "强制其他流向",
-  "API_KEY": "API密码",
-  "LOCALIZATION_VIEW_TYPE": "本地化视图类型",
-  "LOAD_LANGUAGE_FROM_FILE": "从文件导入语言",
-  "LOG_IN": "登录",
-  "SYNC": "同步",
-  "NOT_LOGGED_IN": "未登录",
-  "POE_EDITOR_ERROR": "POEditor 错误:{0} {1}",
-  "HTTP_ERROR_MESSAGE": "HTTP 错误: {0} {1}",
-  "LOGGED_IN": "已登录",
-  "SYNCED_SUCCESSFULLY": "成功同步",
-  "EXCEPTION_ERROR": "异常:{0}",
-  "DROP_PALETTE": "将色板放在这里",
-  "SECURITY_ERROR": "安全错误",
-  "SECURITY_ERROR_MSG": "无权在指定位置写入",
-  "IO_ERROR": "文件读写错误",
-  "IO_ERROR_MSG": "写入磁盘时出错",
-  "FAILED_ASSOCIATE_PIXI": "无法将.pixi文件关联到PixiEditor。",
-  "COULD_NOT_SAVE_PALETTE": "保存色板时出错。",
-  "NO_COLORS_TO_SAVE": "无颜色可保存",
-  "ALL_LAYERS": "全部图层",
-  "SINGLE_LAYER": "单个图层",
-  "CHOOSE": "选择",
-  "REMOVE": "移除",
-  "FILE_FORMAT_NOT_ASEPRITE_KEYS": "非\".aseprite-keys\"文件",
-  "FILE_HAS_INVALID_SHORTCUT": "此文件含有无效捷径",
-  "FILE_EXTENSION_NOT_SUPPORTED": "不支持\"{0}\"类型文件",
-  "ERROR_READING_FILE": "读取文件时发生错误",
-  "DISCARD_PALETTE": "遗弃色板",
-  "DISCARD_PALETTE_CONFIRMATION": "你确定要遗弃目前色版吗?此操作无法被撤销。",
-  "IMPORT_AS_NEW_LAYER": "导入为新图层",
-  "PASTE_AS_PRIMARY_COLOR": "粘贴为主要颜色",
-  "IMPORT_AS_NEW_FILE": "导入为新文件",
-  "IMPORT_PALETTE_FILE": "导入色版文件",
-  "IMPORT_MULTIPLE_PALETTE_COLORS": "将多种颜色导入至色板",
-  "IMPORT_SINGLE_PALETTE_COLOR": "将一种颜色导入至色板",
-  "IMPORT_AS_REFERENCE_LAYER": "导入为参考图层",
-  "NAVIGATOR_PICK_ACTION_DISPLAY": "右键以选择颜色,按住Shift时右键以将其复制至剪贴薄",
-  "OPEN_FILE_FROM_CLIPBOARD": "从剪贴薄中打开",
-  "OPEN_FILE_FROM_CLIPBOARD_DESCRIPTIVE": "从剪贴薄中打开文件",
-  "OPEN_LOCALIZATION_DATA": "是否打开 LocalizationData.json?更新日期已被加入至剪贴板。\n注意更改只会在重启此程序后启用。",
-  "DOWNLOADING_LANGUAGE_FAILED": "无法下载语言。\nAPI密码可能被过度使用。",
-  "LOCALIZATION_DATA_NOT_FOUND": "无法找到本地化资料路径",
-  "APPLY": "应用",
-  "UPDATE_SOURCE": "更新来源",
-  "COPY_TO_CLIPBOARD": "复制到剪贴薄",
-  "LANGUAGE_FILE_NOT_FOUND": "无法找到语言文件。\n正在寻找{0}",
-  "PROJECT_ROOT_NOT_FOUND": "PixiEditor 项目根未找到。\n正在寻找 PixiEditor.csproj",
-  "LOCALIZATION_FOLDER_NOT_FOUND": "本地化文件未找到。\n正在寻找 /Data/Localization",
-  "SELECT_A_LANGUAGE": "选择语言",
-  "DONE": "完成",
-  "SOURCE_UNSET_OR_MISSING": "来源未找到/已丢失",
-  "SOURCE_NEWER": "来源更新",
-  "SOURCE_UP_TO_DATE": "来源已更新",
-  "SOURCE_OLDER": "云更新",
-  "COLOR_PICKER_ACTION_DISPLAY_REFERENCE_ONLY": "Click to pick colors from the reference layer.",
-  "COLOR_PICKER_ACTION_DISPLAY_CANVAS_ONLY": "Click to pick colors from the canvas.",
-  "LOCALIZATION_DEBUG_WINDOW_TITLE": "Localization Debug Window",
-  "COMMAND_DEBUG_WINDOW_TITLE": "Command Debug Window",
-  "SHORTCUTS_TITLE": "Shortcuts",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_PERSPECTIVE": "Drag handles to scale transform. Hold Ctrl and drag a handle to move the handle freely. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_SHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Hold Alt and drag a side handle to shear. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_ROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally. Drag outside handles to rotate.",
-  "TRANSFORM_ACTION_DISPLAY_SCALE_NOROTATE_NOSHEAR_NOPERSPECTIVE": "Drag handles to scale transform. Hold Shift to scale proportionally."
-}

+ 0 - 83
src/PixiEditor.AvaloniaUI/Data/Localization/LocalizationData.json

@@ -1,83 +0,0 @@
-{
-  "$schema": "./LocalizationDataSchema.json",
-  "Languages": [
-    {
-      "name": "English",
-      "code": "en",
-      "localeFileName": "en.json",
-      "iconFileName": "en.png",
-      "lastUpdated": "2023-05-24 21:23:22"
-    },
-    {
-      "name": "Polski",
-      "code": "pl",
-      "localeFileName": "pl.json",
-      "iconFileName": "pl.png",
-      "lastUpdated": "2023-05-24 21:30:08"
-    },
-    {
-      "name": "Deutsch",
-      "code": "de",
-      "localeFileName": "de.json",
-      "iconFileName": "de.png",
-      "lastUpdated": "2023-05-09 16:10:00"
-    },
-    {
-      "name": "Español",
-      "code": "es",
-      "localeFileName": "es.json",
-      "iconFileName": "es.png",
-      "lastUpdated": "2023-05-17 18:46:19"
-    },
-    {
-      "name": "中文",
-      "code": "zh",
-      "localeFileName": "zh.json",
-      "iconFileName": "zh.png",
-      "lastUpdated": "2023-05-15 03:23:28"
-    },
-    {
-      "name": "Русский",
-      "code": "ru",
-      "localeFileName": "ru.json",
-      "iconFileName": "ru.png",
-      "lastUpdated": "2023-05-15 00:49:58"
-    },
-    {
-      "name": "Українська",
-      "code": "uk",
-      "localeFileName": "uk.json",
-      "iconFileName": "uk.png",
-      "lastUpdated": "2023-05-18 17:47:07"
-    },
-    {
-      "name": "عربي",
-      "code": "ar",
-      "localeFileName": "ar.json",
-      "iconFileName": "ar.png",
-      "rightToLeft": true,
-      "lastUpdated": "2023-05-20 11:59:21"
-    },
-    {
-      "name": "Čeština",
-      "code": "cs",
-      "localeFileName": "cs.json",
-      "iconFileName": "cs.png",
-      "lastUpdated": "2023-05-07 14:01:25"
-    },
-    {
-      "name": "Português (Brasil)",
-      "code": "pt-br",
-      "localeFileName": "pt-br.json",
-      "iconFileName": "pt-br.png",
-      "lastUpdated": "2023-05-15 09:13:45"
-    },
-    {
-      "name": "Magyar",
-      "code": "hu",
-      "localeFileName": "hu.json",
-      "iconFileName": "hu.png",
-      "lastUpdated": "2023-05-09 00:07:37"
-    }
-  ]
-}

+ 0 - 59
src/PixiEditor.AvaloniaUI/Data/Localization/LocalizationDataSchema.json

@@ -1,59 +0,0 @@
-{
-  "type": "object",
-  "additionalProperties": false,
-  "properties": {
-    "Languages": {
-      "type": "array",
-      "items": {
-        "type": "object",
-        "properties": {
-          "name": {
-            "type": "string",
-            "description": "The localized name of the language"
-          },
-          "code": {
-            "type": "string",
-            "description": "The code associated with the language",
-            "minLength": 2
-          },
-          "localeFileName": {
-            "type": "string",
-            "description": "The name of the key-value json file found in Data/Localization/Languages. Must be prepended with extension unique name and : (e.g. pixieditor.sampleExtension:en.json)",
-            "pattern": ".*\\.json",
-            "format": "uri",
-            "default": ".json"
-          },
-          "iconFileName": {
-            "type": "string",
-            "description": "The name of the png icon for the language found in Images/LanguageFlags",
-            "pattern": ".*\\.png",
-            "format": "uri",
-            "default": ".png"
-          },
-          "rightToLeft": {
-            "type": "boolean",
-            "description": "Does the language use RTL Layout",
-            "default": true
-          },
-          "lastUpdated": {
-            "type": "string",
-            "description": "Date Time offset. Use format '07.05.2023 12:13:35 +00:00'",
-            "format": "date-time"
-          }
-        },
-        "required": [
-          "name",
-          "code",
-          "localeFileName",
-          "iconFileName"
-        ]
-      }
-    },
-    "$schema": {
-      "type": "string"
-    }
-  },
-  "required": [
-    "Languages"
-  ]
-}

+ 0 - 614
src/PixiEditor.AvaloniaUI/Data/ShortcutActionMaps/AsepriteShortcutMap.json

@@ -1,614 +0,0 @@
-{
-    "Cut": {
-      "Command": "PixiEditor.Clipboard.Cut",
-      "DefaultShortcut": {
-        "key": "X",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Paste": {
-      "Command": "PixiEditor.Clipboard.Paste",
-      "DefaultShortcut": {
-        "key": "V",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Clipboard.PasteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "Copy": {
-      "Command": "PixiEditor.Clipboard.Copy",
-      "DefaultShortcut": {
-        "key": "C",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.OpenPaletteBrowser",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "LoadPalette": {
-      "Command": "PixiEditor.Colors.ImportPalette",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectFirstPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectSecondPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectThirdPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectFourthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectFifthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectSixthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectSeventhPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectEighthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectNinthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.SelectTenthPaletteColor",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "SwitchColors": {
-      "Command": "PixiEditor.Colors.Swap",
-      "DefaultShortcut": {
-        "key": "X",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Colors.RemoveSwatch",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "NewFile": {
-      "Command": "PixiEditor.File.New",
-      "DefaultShortcut": {
-        "key": "N",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "OpenFile": {
-      "Command": "PixiEditor.File.Open",
-      "DefaultShortcut": {
-        "key": "O",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Recent": {
-      "Command": "PixiEditor.File.OpenRecent",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "SaveFile": {
-      "Command": "PixiEditor.File.Save",
-      "DefaultShortcut": {
-        "key": "S",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "SaveFileAs": {
-      "Command": "PixiEditor.File.SaveAsNew",
-      "DefaultShortcut": {
-        "key": "S",
-        "modifiers": ["Ctrl", "Shift"]
-      },
-      "Parameters": []
-    },
-    "SaveFileCopyAs": {
-      "Command": "PixiEditor.File.Export",
-      "DefaultShortcut": {
-        "key": "S",
-        "modifiers": ["Ctrl", "Alt", "Shift"]
-      },
-      "Parameters": []
-    },
-    "RemoveLayer": {
-      "Command": "PixiEditor.Layer.DeleteSelected",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.DeleteAllSelected",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "NewLayer.group=true": {
-      "Command": "PixiEditor.Layer.NewFolder",
-      "DefaultShortcut": {
-        "key": "N",
-        "modifiers": ["Alt", "Shift"]
-      },
-      "Parameters": []
-    },
-    "NewLayer": {
-      "Command": "PixiEditor.Layer.NewLayer",
-      "DefaultShortcut": {
-        "key": "N",
-        "modifiers": ["Shift"]
-      },
-      "Parameters": []
-    },
-    "SetInkType.type=lock-alpha": {
-      "Command": "PixiEditor.Layer.ToggleLockTransparency",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "DuplicateLayer": {
-      "Command": "PixiEditor.Layer.DuplicateSelectedLayer",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.CreateMask",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.DeleteMask",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.MoveSelectedMemberUpwards",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.MoveSelectedMemberDownwards",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.MergeSelected",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Layer.MergeWithAbove",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "MergeDownLayer": {
-      "Command": "PixiEditor.Layer.MergeWithBelow",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "Launch.path=/docs/.type=url": {
-      "Command": "PixiEditor.Links.OpenDocumentation",
-      "DefaultShortcut": {
-        "key": "B",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "MaskAll": {
-      "Command": "PixiEditor.Selection.SelectAll",
-      "DefaultShortcut": {
-        "key": "A",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "DeselectMask": {
-      "Command": "PixiEditor.Selection.Clear",
-      "DefaultShortcut": {
-        "key": "D",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Selection.TransformArea",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Stylus.TogglePenMode",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "ChangeBrush.change=increment-size": {
-      "Command": "PixiEditor.Tools.IncreaseSize",
-      "DefaultShortcut": {
-        "key": "+",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "ChangeBrush.change=decrement-size": {
-      "Command": "PixiEditor.Tools.DecreaseSize",
-      "DefaultShortcut": {
-        "key": "-",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "Redo": {
-      "Command": "PixiEditor.Undo.Redo",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Undo": {
-      "Command": "PixiEditor.Undo.Undo",
-      "DefaultShortcut": {
-        "key": "Z",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Restart",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "ShowGrid": {
-      "Command": "PixiEditor.View.ToggleGrid",
-      "DefaultShortcut": {
-        "key": "'",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Zoom.action=in": {
-      "Command": "PixiEditor.View.ZoomIn",
-      "DefaultShortcut": {
-        "key": "+",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Zoom.action=out": {
-      "Command": "PixiEditor.View.Zoomout",
-      "DefaultShortcut": {
-        "key": "-",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Window.CreateNewViewport",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "Options": {
-      "Command": "PixiEditor.Window.OpenSettingsWindow",
-      "DefaultShortcut": {
-        "key": "K",
-        "modifiers": ["Ctrl"]
-      },
-      "Parameters": []
-    },
-    "Home": {
-      "Command": "PixiEditor.Window.OpenStartupWindow",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "KeyboardShortcuts": {
-      "Command": "PixiEditor.Window.OpenShortcutWindow",
-      "DefaultShortcut": {
-        "key": "F7",
-        "modifiers": [
-            "Ctrl",
-            "Alt",
-            "Shift"
-        ]
-      },
-      "Parameters": []
-    },
-    "About": {
-      "Command": "PixiEditor.Window.OpenAboutWindow",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "TogglePreview": {
-      "Command": "PixiEditor.Window.OpenNavigationWindow",
-      "DefaultShortcut": {
-        "key": "F7",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Document.ClipCanvas",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "SymmetryMode.orientation=vertical": {
-      "Command": "PixiEditor.Document.ToggleVerticalSymmetryAxis",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "SymmetryMode.orientation=horizontal": {
-      "Command": "PixiEditor.Document.ToggleHorizontalSymmetryAxis",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "Clear": {
-      "Command": "PixiEditor.Document.DeletePixels",
-      "DefaultShortcut": {
-        "key": "Delete",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "SpriteSize": {
-      "Command": "PixiEditor.Document.ResizeDocument",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "CanvasSize": {
-      "Command": "PixiEditor.Document.ResizeCanvas",
-      "DefaultShortcut": {
-        "key": "C",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "": {
-      "Command": "PixiEditor.Document.CenterContent",
-      "DefaultShortcut": {
-        "key": "None",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "eyedropper": {
-      "Command": "PixiEditor.Tools.Select.ColorPickerToolViewModel",
-      "DefaultShortcut": {
-        "key": "I",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "ellipse": {
-      "Command": "PixiEditor.Tools.Select.EllipseToolViewModel",
-      "DefaultShortcut": {
-        "key": "U",
-        "modifiers": [ "Shift" ]
-      },
-      "Parameters": []
-    },
-    "eraser": {
-      "Command": "PixiEditor.Tools.Select.EraserToolViewModel",
-      "DefaultShortcut": {
-        "key": "E",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "paint_bucket": {
-      "Command": "PixiEditor.Tools.Select.FloodFillToolViewModel",
-      "DefaultShortcut": {
-        "key": "G",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "lasso": {
-      "Command": "PixiEditor.Tools.Select.LassoToolViewModel",
-      "DefaultShortcut": {
-        "key": "Q",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "line": {
-      "Command": "PixiEditor.Tools.Select.LineToolViewModel",
-      "DefaultShortcut": {
-        "key": "L",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "magic_wand": {
-      "Command": "PixiEditor.Tools.Select.MagicWandToolViewModel",
-      "DefaultShortcut": {
-        "key": "W",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "move": {
-      "Command": "PixiEditor.Tools.Select.MoveToolViewModel",
-      "DefaultShortcut": {
-        "key": "V",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "hand": {
-      "Command": "PixiEditor.Tools.Select.MoveViewportToolViewModel",
-      "DefaultShortcut": {
-        "key": "H",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "pencil": {
-      "Command": "PixiEditor.Tools.Select.PenToolViewModel",
-      "DefaultShortcut": {
-        "key": "B",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "rectangle": {
-      "Command": "PixiEditor.Tools.Select.RectangleToolViewModel",
-      "DefaultShortcut": {
-        "key": "U",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "rectangular_marquee": {
-      "Command": "PixiEditor.Tools.Select.SelectToolViewModel",
-      "DefaultShortcut": {
-        "key": "M",
-        "modifiers": null
-      },
-      "Parameters": []
-    },
-    "zoom": {
-      "Command": "PixiEditor.Tools.Select.ZoomToolViewModel",
-      "DefaultShortcut": {
-        "key": "Z",
-        "modifiers": null
-      },
-      "Parameters": []
-    }
-  }

+ 0 - 23
src/PixiEditor.AvaloniaUI/Exceptions/CorruptedFileException.cs

@@ -1,23 +0,0 @@
-using System.Runtime.Serialization;
-using PixiEditor.Extensions.Common.Localization;
-using PixiEditor.Extensions.Exceptions;
-
-namespace PixiEditor.AvaloniaUI.Exceptions;
-
-[Serializable]
-internal class CorruptedFileException : RecoverableException
-{
-    public CorruptedFileException() : base("FAILED_TO_OPEN_FILE") { }
-
-    public CorruptedFileException(Exception innerException) : base("FAILED_TO_OPEN_FILE", innerException) { }
-
-    public CorruptedFileException(LocalizedString displayMessage) : base(displayMessage) { }
-
-    public CorruptedFileException(LocalizedString displayMessage, Exception innerException) : base(displayMessage, innerException) { }
-
-    public CorruptedFileException(LocalizedString displayMessage, string exceptionMessage) : base(displayMessage, exceptionMessage) { }
-
-    public CorruptedFileException(LocalizedString displayMessage, string exceptionMessage, Exception innerException) : base(displayMessage, exceptionMessage, innerException) { }
-
-    protected CorruptedFileException(SerializationInfo info, StreamingContext context) : base(info, context) { }
-}

+ 0 - 21
src/PixiEditor.AvaloniaUI/Exceptions/InvalidFileTypeException.cs

@@ -1,21 +0,0 @@
-using System.Runtime.Serialization;
-using PixiEditor.Extensions.Common.Localization;
-using PixiEditor.Extensions.Exceptions;
-
-namespace PixiEditor.AvaloniaUI.Exceptions;
-
-internal class InvalidFileTypeException : RecoverableException
-{
-    public InvalidFileTypeException() { }
-
-    public InvalidFileTypeException(LocalizedString displayMessage) : base(displayMessage) { }
-
-    public InvalidFileTypeException(LocalizedString displayMessage, Exception innerException) : base(displayMessage, innerException) { }
-
-    public InvalidFileTypeException(LocalizedString displayMessage, string exceptionMessage) : base(displayMessage, exceptionMessage) { }
-
-    public InvalidFileTypeException(LocalizedString displayMessage, string exceptionMessage, Exception innerException) : base(displayMessage, exceptionMessage, innerException) { }
-
-    protected InvalidFileTypeException(SerializationInfo info, StreamingContext context) : base(info, context) { }
-
-}

+ 0 - 22
src/PixiEditor.AvaloniaUI/Exceptions/MissingFileException.cs

@@ -1,22 +0,0 @@
-using System.Runtime.Serialization;
-using PixiEditor.Extensions.Common.Localization;
-using PixiEditor.Extensions.Exceptions;
-
-namespace PixiEditor.AvaloniaUI.Exceptions;
-
-internal class MissingFileException : RecoverableException
-{
-    public MissingFileException() : base("FILE_NOT_FOUND") { }
-
-    public MissingFileException(Exception innerException) : base("FILE_NOT_FOUND", innerException) { }
-
-    public MissingFileException(LocalizedString displayMessage) : base(displayMessage) { }
-
-    public MissingFileException(LocalizedString displayMessage, Exception innerException) : base(displayMessage, innerException) { }
-
-    public MissingFileException(LocalizedString displayMessage, string exceptionMessage) : base(displayMessage, exceptionMessage) { }
-
-    public MissingFileException(LocalizedString displayMessage, string exceptionMessage, Exception innerException) : base(displayMessage, exceptionMessage, innerException) { }
-
-    protected MissingFileException(SerializationInfo info, StreamingContext context) : base(info, context) { }
-}

+ 0 - 8
src/PixiEditor.AvaloniaUI/GlobalUsings.cs

@@ -1,8 +0,0 @@
-global using OneOf;
-global using System;
-global using OneOf.Types;
-//global using PixiEditor.ChangeableDocument.Actions.Generated;
-//global using PixiEditor.Helpers.Extensions;
-//global using PixiEditor.ViewModels.SubViewModels.Main;
-global using SkiaSharp;
-

+ 0 - 33
src/PixiEditor.AvaloniaUI/Helpers/Behaviours/ClearFocusOnClickBehavior.cs

@@ -1,33 +0,0 @@
-using Avalonia.Controls;
-using Avalonia.Input;
-using Avalonia.Interactivity;
-using Avalonia.Xaml.Interactivity;
-using PixiEditor.AvaloniaUI.Models.Controllers;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Behaviours;
-
-internal class ClearFocusOnClickBehavior : Behavior<Control>
-{
-    protected override void OnAttached()
-    {
-        base.OnAttached();
-        AssociatedObject.AddHandler(InputElement.PointerPressedEvent, AssociatedObject_MouseDown);
-        AssociatedObject.AddHandler(InputElement.LostFocusEvent, AssociatedObject_LostFocus);
-    }
-
-    private void AssociatedObject_LostFocus(object? sender, RoutedEventArgs? e)
-    {
-
-    }
-
-    protected override void OnDetaching()
-    {
-        AssociatedObject.RemoveHandler(InputElement.PointerPressedEvent, AssociatedObject_MouseDown);
-    }
-
-    private void AssociatedObject_MouseDown(object? sender, PointerPressedEventArgs? e)
-    {
-        AssociatedObject.Focus();
-        ShortcutController.UnblockShortcutExecutionAll();
-    }
-}

+ 0 - 34
src/PixiEditor.AvaloniaUI/Helpers/Behaviours/GlobalShortcutFocusBehavior.cs

@@ -1,34 +0,0 @@
-using Avalonia.Controls;
-using Avalonia.Input;
-using Avalonia.Interactivity;
-using Avalonia.Xaml.Interactivity;
-using PixiEditor.AvaloniaUI.Models.Controllers;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Behaviours;
-
-internal class GlobalShortcutFocusBehavior : Behavior<Control>
-{
-    protected override void OnAttached()
-    {
-        base.OnAttached();
-        AssociatedObject.GotFocus += AssociatedObject_GotKeyboardFocus;
-        AssociatedObject.LostFocus += AssociatedObject_LostKeyboardFocus;
-    }
-
-    protected override void OnDetaching()
-    {
-        base.OnDetaching();
-        AssociatedObject.GotFocus -= AssociatedObject_GotKeyboardFocus;
-        AssociatedObject.LostFocus -= AssociatedObject_LostKeyboardFocus;
-    }
-
-    private void AssociatedObject_LostKeyboardFocus(object? sender, RoutedEventArgs routedEventArgs)
-    {
-        ShortcutController.UnblockShortcutExecution("GlobalShortcutFocusBehavior");
-    }
-
-    private void AssociatedObject_GotKeyboardFocus(object? sender, GotFocusEventArgs gotFocusEventArgs)
-    {
-        ShortcutController.BlockShortcutExecution("GlobalShortcutFocusBehavior");
-    }
-}

+ 0 - 180
src/PixiEditor.AvaloniaUI/Helpers/Behaviours/SliderUpdateBehavior.cs

@@ -1,180 +0,0 @@
-using System.Windows.Input;
-using Avalonia;
-using Avalonia.Controls;
-using Avalonia.Controls.Primitives;
-using Avalonia.Input;
-using Avalonia.Interactivity;
-using Avalonia.VisualTree;
-using Avalonia.Xaml.Interactivity;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Behaviours;
-#nullable enable
-internal class SliderUpdateBehavior : Behavior<Slider>
-{
-    public static readonly StyledProperty<double> BindingProperty
-        = AvaloniaProperty.Register<SliderUpdateBehavior, double>(nameof(Binding));
-
-    public double Binding
-    {
-        get => GetValue(BindingProperty);
-        set => SetValue(BindingProperty, value);
-    }
-
-    public static readonly StyledProperty<ICommand> DragValueChangedProperty = AvaloniaProperty.Register<SliderUpdateBehavior, ICommand>(
-        nameof(DragValueChanged));
-
-    public ICommand DragValueChanged
-    {
-        get => GetValue(DragValueChangedProperty);
-        set => SetValue(DragValueChangedProperty, value);
-    }
-
-    public static readonly StyledProperty<ICommand> DragEndedProperty = AvaloniaProperty.Register<SliderUpdateBehavior, ICommand>(
-        nameof(DragEnded));
-
-    public ICommand DragEnded
-    {
-        get => GetValue(DragEndedProperty);
-        set => SetValue(DragEndedProperty, value);
-    }
-
-    public static readonly StyledProperty<ICommand> DragStartedProperty = AvaloniaProperty.Register<SliderUpdateBehavior, ICommand>(
-        nameof(DragStarted));
-
-    public ICommand DragStarted
-    {
-        get => GetValue(DragStartedProperty);
-        set => SetValue(DragStartedProperty, value);
-    }
-
-    public static readonly StyledProperty<ICommand> SetValueCommandProperty = AvaloniaProperty.Register<SliderUpdateBehavior, ICommand>(
-        nameof(SetValueCommand));
-
-    public ICommand SetValueCommand
-    {
-        get => GetValue(SetValueCommandProperty);
-        set => SetValue(SetValueCommandProperty, value);
-    }
-
-    public static readonly StyledProperty<double> ValueFromSliderProperty = AvaloniaProperty.Register<SliderUpdateBehavior, double>(
-        nameof(ValueFromSlider));
-    public double ValueFromSlider
-    {
-        get => (double)GetValue(ValueFromSliderProperty);
-        set => SetValue(ValueFromSliderProperty, value);
-    }
-
-    static SliderUpdateBehavior()
-    {
-        BindingProperty.Changed.Subscribe(OnBindingValuePropertyChange);
-        ValueFromSliderProperty.Changed.Subscribe(OnSliderValuePropertyChange);
-    }
-
-    private bool attached = false;
-    private bool dragging = false;
-
-    private bool bindingValueChangedWhileDragging = false;
-    private double bindingValueWhileDragging = 0.0;
-
-    private bool skipSetValue;
-    
-    protected override void OnAttached()
-    {
-        AssociatedObject.Loaded += AssociatedObject_Loaded;
-        AssociatedObject.Focusable = false;
-
-
-        if (AssociatedObject.IsLoaded)
-            AttachEvents();
-    }
-
-    private void AssociatedObject_Loaded(object sender, RoutedEventArgs e)
-    {
-        AttachEvents();
-    }
-
-    private void AttachEvents()
-    {
-        if (attached)
-            return;
-
-        Thumb? thumb = GetThumb(AssociatedObject);
-        if (thumb is null)
-            return;
-
-        attached = true;
-
-        thumb.DragStarted += Thumb_DragStarted;
-        thumb.DragCompleted += Thumb_DragCompleted;
-    }
-
-    protected override void OnDetaching()
-    {
-        AssociatedObject.Loaded -= AssociatedObject_Loaded;
-        if (!attached)
-            return;
-        Thumb? thumb = GetThumb(AssociatedObject);
-        if (thumb is null)
-            return;
-
-        thumb.DragStarted -= Thumb_DragStarted;
-        thumb.DragCompleted -= Thumb_DragCompleted;
-    }
-
-    private static void OnSliderValuePropertyChange(AvaloniaPropertyChangedEventArgs<double> e)
-    {
-        SliderUpdateBehavior obj = (SliderUpdateBehavior)e.Sender;
-        
-        if (obj.dragging)
-        {
-            if (obj.DragValueChanged is not null && obj.DragValueChanged.CanExecute(e.NewValue.Value))
-                obj.DragValueChanged.Execute(e.NewValue.Value);
-        }
-        else if (!obj.skipSetValue)
-        {
-            if (obj.SetValueCommand is not null && obj.SetValueCommand.CanExecute(e.NewValue.Value))
-                obj.SetValueCommand.Execute(e.NewValue.Value);
-        }
-    }
-
-    private static void OnBindingValuePropertyChange(AvaloniaPropertyChangedEventArgs<double> args)
-    {
-        SliderUpdateBehavior obj = (SliderUpdateBehavior)args.Sender;
-        obj.skipSetValue = true;
-        if (obj.dragging)
-        {
-            obj.bindingValueChangedWhileDragging = true;
-            obj.bindingValueWhileDragging = args.NewValue.Value;
-            obj.skipSetValue = false;
-            return;
-        }
-        obj.ValueFromSlider = args.NewValue.Value;
-        obj.skipSetValue = false;
-    }
-
-    private void Thumb_DragCompleted(object sender, VectorEventArgs e)
-    {
-        dragging = false;
-        if (DragEnded is not null && DragEnded.CanExecute(null))
-            DragEnded.Execute(null);
-        if (bindingValueChangedWhileDragging)
-            ValueFromSlider = bindingValueWhileDragging;
-        bindingValueChangedWhileDragging = false;
-    }
-
-    private void Thumb_DragStarted(object sender, VectorEventArgs e)
-    {
-        dragging = true;
-        if (DragStarted is not null && DragStarted.CanExecute(null))
-            DragStarted.Execute(null);
-    }
-
-    private static Thumb? GetThumb(Slider slider)
-    {
-        /*Track? track = slider.Template.FindName("PART_Track", slider) as Track;
-        return track is null ? null : track.Thumb;*/
-        return slider.FindDescendantOfType<Thumb>();
-    }
-
-
-}

+ 0 - 31
src/PixiEditor.AvaloniaUI/Helpers/Behaviours/TextBlockExtensions.cs

@@ -1,31 +0,0 @@
-using System.Collections.Generic;
-using Avalonia;
-using Avalonia.Controls;
-using Avalonia.Controls.Documents;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Behaviours;
-
-internal class TextBlockExtensions : AvaloniaObject
-{
-    public static readonly AttachedProperty<IEnumerable<Inline>> BindableInlinesProperty =
-        AvaloniaProperty.RegisterAttached<TextBlockExtensions, TextBlock, IEnumerable<Inline>>("BindableInlines");
-
-    public static void SetBindableInlines(TextBlock obj, IEnumerable<Inline> value) => obj.SetValue(BindableInlinesProperty, value);
-    public static IEnumerable<Inline> GetBindableInlines(TextBlock obj) => obj.GetValue(BindableInlinesProperty);
-
-    static TextBlockExtensions()
-    {
-        BindableInlinesProperty.Changed.Subscribe(OnBindableInlinesChanged);
-    }
-
-    private static void OnBindableInlinesChanged(AvaloniaPropertyChangedEventArgs<IEnumerable<Inline>> e)
-    {
-        if (e.Sender is not TextBlock target)
-        {
-            return;
-        }
-
-        target.Inlines.Clear();
-        target.Inlines.AddRange(e.NewValue.Value);
-    }
-}

+ 0 - 129
src/PixiEditor.AvaloniaUI/Helpers/Behaviours/TextBoxFocusBehavior.cs

@@ -1,129 +0,0 @@
-using Avalonia;
-using Avalonia.Controls;
-using Avalonia.Input;
-using Avalonia.Interactivity;
-using Avalonia.Threading;
-using Avalonia.Xaml.Interactivity;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Behaviours;
-
-internal class TextBoxFocusBehavior : Behavior<TextBox>
-{
-    public static readonly StyledProperty<bool> SelectOnMouseClickProperty =
-        AvaloniaProperty.Register<TextBoxFocusBehavior, bool>(
-            nameof(SelectOnMouseClick));
-
-    public static readonly StyledProperty<bool> ConfirmOnEnterProperty =
-        AvaloniaProperty.Register<TextBoxFocusBehavior, bool>(
-            nameof(ConfirmOnEnter));
-
-    public static readonly StyledProperty<bool> DeselectOnFocusLossProperty =
-        AvaloniaProperty.Register<TextBoxFocusBehavior, bool>(
-            nameof(DeselectOnFocusLoss));
-
-    public bool SelectOnMouseClick
-    {
-        get => (bool)GetValue(SelectOnMouseClickProperty);
-        set => SetValue(SelectOnMouseClickProperty, value);
-    }
-
-    public bool ConfirmOnEnter
-    {
-        get => (bool)GetValue(ConfirmOnEnterProperty);
-        set => SetValue(ConfirmOnEnterProperty, value);
-    }
-    public bool DeselectOnFocusLoss
-    {
-        get => (bool)GetValue(DeselectOnFocusLossProperty);
-        set => SetValue(DeselectOnFocusLossProperty, value);
-    }
-
-    public static readonly StyledProperty<bool> FocusNextProperty =
-        AvaloniaProperty.Register<TextBoxFocusBehavior, bool>(nameof(FocusNext));
-
-    public bool FocusNext
-    {
-        get { return (bool)GetValue(FocusNextProperty); }
-        set { SetValue(FocusNextProperty, value); }
-    }
-
-    public static IInputElement FallbackFocusElement { get; set; }
-
-    protected override void OnAttached()
-    {
-        base.OnAttached();
-        AssociatedObject.GotFocus += AssociatedObjectGotKeyboardFocus;
-        AssociatedObject.PointerPressed += AssociatedObjectGotMouseCapture;
-        AssociatedObject.LostFocus += AssociatedObject_LostFocus;
-        AssociatedObject.PointerPressed += OnPointerPressed;
-        AssociatedObject.KeyUp += AssociatedObject_KeyUp;
-    }
-
-    protected override void OnDetaching()
-    {
-        base.OnDetaching();
-        AssociatedObject.GotFocus -= AssociatedObjectGotKeyboardFocus;
-        AssociatedObject.PointerPressed -= AssociatedObjectGotMouseCapture;
-        AssociatedObject.LostFocus -= AssociatedObject_LostFocus;
-        AssociatedObject.PointerPressed -= OnPointerPressed;
-        AssociatedObject.KeyUp -= AssociatedObject_KeyUp;
-    }
-
-    // Converts number to proper format if enter is clicked and moves focus to next object
-    private void AssociatedObject_KeyUp(object sender, KeyEventArgs e)
-    {
-        if (e.Key != Key.Enter || !ConfirmOnEnter)
-            return;
-
-        RemoveFocus();
-    }
-
-    private void RemoveFocus()
-    {
-        var next = FocusNext
-            ? KeyboardNavigationHandler.GetNext(AssociatedObject, NavigationDirection.Next)
-            : FallbackFocusElement;
-        NavigationMethod nextMethod = FocusNext ? NavigationMethod.Directional : NavigationMethod.Unspecified;
-        if (next == AssociatedObject) return;
-        next?.Focus(nextMethod);
-    }
-
-    private void AssociatedObjectGotKeyboardFocus(
-        object sender,
-        GotFocusEventArgs e)
-    {
-        if ((e.NavigationMethod == NavigationMethod.Pointer && SelectOnMouseClick) || e.NavigationMethod == NavigationMethod.Tab)
-        {
-            Dispatcher.UIThread.Post(() => AssociatedObject?.SelectAll(), DispatcherPriority.Input);
-        }
-    }
-
-    private void AssociatedObjectGotMouseCapture(
-        object? sender, PointerPressedEventArgs pointerPressedEventArgs)
-    {
-        if (SelectOnMouseClick)
-        {
-            Dispatcher.UIThread.Post(() => AssociatedObject?.SelectAll(), DispatcherPriority.Input);
-        }
-    }
-
-    private void AssociatedObject_LostFocus(object sender, RoutedEventArgs e)
-    {
-        if (DeselectOnFocusLoss)
-            AssociatedObject.ClearSelection();
-
-        //RemoveFocus();
-    }
-
-    private void OnPointerPressed(object? sender, PointerPressedEventArgs e)
-    {
-        if (!SelectOnMouseClick)
-            return;
-
-        if (!AssociatedObject.IsKeyboardFocusWithin)
-        {
-            AssociatedObject.Focus();
-            e.Handled = true;
-        }
-    }
-}

+ 0 - 30
src/PixiEditor.AvaloniaUI/Helpers/ChangeInfoListOptimizer.cs

@@ -1,30 +0,0 @@
-using System.Collections.Generic;
-using PixiEditor.ChangeableDocument.ChangeInfos;
-using PixiEditor.ChangeableDocument.ChangeInfos.Drawing;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-#nullable enable
-internal class ChangeInfoListOptimizer
-{
-    public static List<IChangeInfo> Optimize(List<IChangeInfo?> input)
-    {
-        List<IChangeInfo> output = new();
-        bool selectionInfoOccured = false;
-        // discard all Selection_ChangeInfos apart from the last one
-        for (int i = input.Count - 1; i >= 0; i--)
-        {
-            IChangeInfo? info = input[i];
-            if (info is null)
-                continue;
-            if (info is Selection_ChangeInfo && !selectionInfoOccured)
-                selectionInfoOccured = true;
-            else if (info is Selection_ChangeInfo)
-                continue;
-            output.Add(info);
-        }
-
-        output.Reverse();
-        return output;
-    }
-}

+ 0 - 42
src/PixiEditor.AvaloniaUI/Helpers/Collections/ActionDisplayList.cs

@@ -1,42 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using System.Linq;
-using PixiEditor.Extensions.Common.Localization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Collections;
-
-public class ActionDisplayList : IEnumerable<KeyValuePair<string, LocalizedString>>
-{
-    private Dictionary<string, LocalizedString> _dictionary = new();
-    private Action notifyUpdate;
-
-    public ActionDisplayList(Action notifyUpdate)
-    {
-        this.notifyUpdate = notifyUpdate;
-    }
-
-    public LocalizedString? this[string key]
-    {
-        get => _dictionary[key];
-        set
-        {
-            if (value == null)
-            {
-                _dictionary.Remove(key);
-                notifyUpdate();
-                return;
-            }
-
-            _dictionary[key] = value.Value;
-            notifyUpdate();
-        }
-    }
-
-    public LocalizedString GetActive() => _dictionary.Last().Value;
-
-    public bool HasActive() => _dictionary.Count != 0;
-
-    public IEnumerator<KeyValuePair<string, LocalizedString>> GetEnumerator() => _dictionary.GetEnumerator();
-
-    IEnumerator IEnumerable.GetEnumerator() => _dictionary.GetEnumerator();
-}

+ 0 - 110
src/PixiEditor.AvaloniaUI/Helpers/ColorHelper.cs

@@ -1,110 +0,0 @@
-using System.Collections.Generic;
-using System.Diagnostics.CodeAnalysis;
-using System.Linq;
-using System.Text.RegularExpressions;
-using Avalonia.Input;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-public class ColorHelper
-{
-    public const string PaletteColorDaoFormat = "PixiEditor.PaletteColor";
-
-    public static bool ParseAnyFormat(IDataObject data, [NotNullWhen(true)] out DrawingApi.Core.ColorsImpl.Color? result) => 
-        ParseAnyFormat(GetTextFromData(data), out result);
-    
-    public static bool ParseAnyFormatList(IDataObject data, [NotNullWhen(true)] out List<DrawingApi.Core.ColorsImpl.Color> result)
-    {
-        var text = GetTextFromData(data);
-
-        if (string.IsNullOrEmpty(text))
-        {
-            result = new List<DrawingApi.Core.ColorsImpl.Color>();
-            return false;
-        }
-
-        return ParseAnyFormatList(text, out result);
-    }
-
-    private static string GetTextFromData(IDataObject data)
-    {
-        string text = "";
-        if (data.Contains(DataFormats.Text))
-        {
-            text = (data).GetText().Trim();
-        }
-        else
-        {
-            var formats = data.GetDataFormats().ToList();
-            if(formats.Count > 0)
-            {
-                text = (data).Get(formats[0]).ToString().Trim();
-            }
-        }
-
-        return text;
-    }
-
-    public static bool ParseAnyFormat(string value, [NotNullWhen(true)] out DrawingApi.Core.ColorsImpl.Color? result)
-    {
-        bool hex = Regex.IsMatch(value, "^#?([a-fA-F0-9]{8}|[a-fA-F0-9]{6}|[a-fA-F0-9]{3})$");
-        if (hex)
-        {
-            result = DrawingApi.Core.ColorsImpl.Color.Parse(value);
-            return true;
-        }
-
-        var match = Regex.Match(value, @"(?:rgba?\(?)? *(?<r>\d{1,3})(?:, *| +)(?<g>\d{1,3})(?:, *| +)(?<b>\d{1,3})(?:(?:, *| +)(?<a>\d{0,3}))?\)?");
-
-        if (!match.Success)
-        {
-            result = null;
-            return false;
-        }
-
-        byte r = byte.Parse(match.Groups["r"].ValueSpan);
-        byte g = byte.Parse(match.Groups["g"].ValueSpan);
-        byte b = byte.Parse(match.Groups["b"].ValueSpan);
-        byte a = match.Groups["a"].Success ? byte.Parse(match.Groups["a"].ValueSpan) : (byte)255;
-
-        result = new DrawingApi.Core.ColorsImpl.Color(r, g, b, a);
-        return true;
-    }
-    
-    public static bool ParseAnyFormatList(string value, [NotNullWhen(true)] out List<DrawingApi.Core.ColorsImpl.Color> result)
-    {
-        result = new List<DrawingApi.Core.ColorsImpl.Color>();
-
-        // Regex patterns for hex and RGB(A) formats
-        const string hexPattern = @"#?([a-fA-F0-9]{8}|[a-fA-F0-9]{6}|[a-fA-F0-9]{3})";
-        const string rgbaPattern = @"(?:rgba?\(?)? *(?<r>\d{1,3})(?:, *| +)(?<g>\d{1,3})(?:, *| +)(?<b>\d{1,3})(?:(?:, *| +)(?<a>\d{0,3}))?\)?";
-
-        // Combined pattern for both hex and RGB(A) formats
-        const string combinedPattern = $@"({hexPattern})|({rgbaPattern})";
-        var matches = Regex.Matches(value, combinedPattern);
-
-        if (matches.Count == 0)
-        {
-            return false;
-        }
-
-        foreach (Match match in matches)
-        {
-            if (Regex.IsMatch(match.Value, $"^{hexPattern}$"))
-            {
-                result.Add(DrawingApi.Core.ColorsImpl.Color.Parse(match.Value));
-            }
-            else if (match.Groups["r"].Success && match.Groups["g"].Success && match.Groups["b"].Success)
-            {
-                byte r = byte.Parse(match.Groups["r"].ValueSpan);
-                byte g = byte.Parse(match.Groups["g"].ValueSpan);
-                byte b = byte.Parse(match.Groups["b"].ValueSpan);
-                byte a = match.Groups["a"].Success ? byte.Parse(match.Groups["a"].ValueSpan) : (byte)255;
-
-                result.Add(new DrawingApi.Core.ColorsImpl.Color(r, g, b, a));
-            }
-        }
-
-        return result.Count > 0;
-    }
-}

+ 0 - 18
src/PixiEditor.AvaloniaUI/Helpers/Converters/ActiveToolToZoomModeConverter.cs

@@ -1,18 +0,0 @@
-using System.Globalization;
-using PixiEditor.AvaloniaUI.ViewModels.Tools.Tools;
-using PixiEditor.Zoombox;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class ActiveToolToZoomModeConverter : SingleInstanceConverter<ActiveToolToZoomModeConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value switch
-        {
-            MoveViewportToolViewModel => ZoomboxMode.Move,
-            ZoomToolViewModel => ZoomboxMode.Zoom,
-            RotateViewportToolViewModel => ZoomboxMode.Rotate,
-            _ => ZoomboxMode.Normal,
-        };
-    }
-}

+ 0 - 20
src/PixiEditor.AvaloniaUI/Helpers/Converters/BlendModeToStringConverter.cs

@@ -1,20 +0,0 @@
-using System.Globalization;
-using PixiEditor.AvaloniaUI.Helpers.Extensions;
-using PixiEditor.ChangeableDocument.Enums;
-using PixiEditor.Extensions.Common.Localization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class BlendModeToStringConverter : SingleInstanceConverter<BlendModeToStringConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is not BlendMode mode)
-            return "<null>";
-        return new LocalizedString(mode.LocalizedKeys()).Value;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        throw new NotImplementedException();
-    }
-}

+ 0 - 19
src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolOrToVisibilityConverter.cs

@@ -1,19 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-// TODO: seems like this converter is doing the same as the avalonia built in {x:Static BoolConverters.Or}
-internal class BoolOrToVisibilityConverter : SingleInstanceMultiValueConverter<BoolOrToVisibilityConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return (bool)value;
-    }
-
-    public override object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture)
-    {
-        bool boolean = values.Aggregate(false, (acc, cur) => acc |= (cur as bool?) ?? false);
-        return boolean;
-    }
-}

+ 0 - 34
src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToBrushConverter.cs

@@ -1,34 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using Avalonia;
-using Avalonia.Data.Converters;
-using Avalonia.Media;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class BoolToBrushConverter : IMultiValueConverter
-{
-    public IBrush FalseBrush { get; set; } = new SolidColorBrush(Brushes.Black.Color);
-    public IBrush TrueBrush { get; set; } = new SolidColorBrush(Brushes.White.Color);
-
-    public object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture)
-    {
-        if (values.Count == 1)
-        {
-            if (values[0] is not bool conv)
-                return AvaloniaProperty.UnsetValue;
-            return conv ? TrueBrush : FalseBrush;
-        }
-        else if (values.Count == 2)
-        {
-            if (values[0] is not bool conv || values[1] is not bool conv2)
-                return AvaloniaProperty.UnsetValue;
-            return (conv || !conv2) ? TrueBrush : FalseBrush;
-        }
-        return AvaloniaProperty.UnsetValue;
-    }
-
-    public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
-    {
-        throw new NotImplementedException();
-    }
-}

+ 0 - 25
src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToIntConverter.cs

@@ -1,25 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class BoolToIntConverter
-    : SingleInstanceConverter<BoolToIntConverter>
-{
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value.ToString() == "0";
-    }
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is bool boolean)
-        {
-            if (boolean == false)
-            {
-                return 0;
-            }
-        }
-
-        return 1;
-    }
-}

+ 0 - 57
src/PixiEditor.AvaloniaUI/Helpers/Converters/BoolToValueConverter.cs

@@ -1,57 +0,0 @@
-using System.Globalization;
-using PixiEditor.Extensions.Common.Localization;
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class BoolToValueConverter : MarkupConverter
-{
-    public object FalseValue { get; set; }
-    
-    public object TrueValue { get; set; }
-    
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is bool and true)
-        {
-            return GetValue(TrueValue, targetType);
-        }
-
-        return GetValue(FalseValue, targetType);
-    }
-
-    private object GetValue(object value, Type targetType)
-    {
-        if (value is string s && s.StartsWith("localized:"))
-        {
-            return new LocalizedString(s.Split("localized:")[1]);
-        }
-
-        if (value is string enumString && targetType.IsEnum)
-        {
-            return Enum.Parse(targetType, enumString);
-        }
-
-        return value;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value == FalseValue)
-        {
-            return false;
-        }
-
-        if (value == TrueValue)
-        {
-            return true;
-        }
-
-        if (targetType == typeof(bool?))
-        {
-            return null;
-        }
-
-        throw new ArgumentException("value was neither FalseValue nor TrueValue and targetType was not a nullable bool");
-    }
-}

+ 0 - 17
src/PixiEditor.AvaloniaUI/Helpers/Converters/CountToVisibilityConverter.cs

@@ -1,17 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-// TODO: the same should be doable by binding to the int directly and using a bang, e.g. {Binding !#someElem.Count}
-internal class CountToVisibilityConverter : SingleInstanceConverter<CountToVisibilityConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is int intVal)
-        {
-            return intVal == 0;
-        }
-
-        return true;
-    }
-}

+ 0 - 23
src/PixiEditor.AvaloniaUI/Helpers/Converters/EmptyStringFillerConverter.cs

@@ -1,23 +0,0 @@
-using System.Globalization;
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class EmptyStringFillerConverter : MarkupConverter
-{
-    public string NullText { get; set; } = "[null]";
-
-    public string EmptyText { get; set; } = "[empty]";
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value switch
-        {
-            string s => s.Length switch
-            {
-                0 => EmptyText,
-                _ => s
-            },
-            _ => NullText
-        };
-    }
-}

+ 0 - 36
src/PixiEditor.AvaloniaUI/Helpers/Converters/EnumBooleanConverter.cs

@@ -1,36 +0,0 @@
-using Avalonia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class EnumBooleanConverter : SingleInstanceConverter<EnumBooleanConverter>
-{
-    #region IValueConverter Members
-    public override object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
-    {
-        string parameterString = parameter as string;
-        if (parameterString == null)
-            return AvaloniaProperty.UnsetValue;
-
-        if (Enum.IsDefined(value.GetType(), value) == false)
-            return AvaloniaProperty.UnsetValue;
-
-        object parameterValue = Enum.Parse(value.GetType(), parameterString);
-
-        return parameterValue.Equals(value);
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
-    {
-        string parameterString = parameter as string;
-        if (parameterString == null)
-            return AvaloniaProperty.UnsetValue;
-
-        if ((bool)value)
-        {
-            return Enum.Parse(targetType, parameterString);
-        }
-
-        return AvaloniaProperty.UnsetValue;
-    }
-    #endregion
-}

+ 0 - 27
src/PixiEditor.AvaloniaUI/Helpers/Converters/EnumToStringConverter.cs

@@ -1,27 +0,0 @@
-using PixiEditor.AvaloniaUI.Models.Dialogs;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class EnumToStringConverter : SingleInstanceConverter<EnumToStringConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
-    {
-        try
-        {
-            var type = value.GetType();
-            if (type == typeof(SizeUnit))
-            {
-                var valueCasted = (SizeUnit)value;
-                if (valueCasted == SizeUnit.Percentage)
-                    return "%";
-
-                return "PIXEL_UNIT";
-            }
-            return Enum.GetName((value.GetType()), value);
-        }
-        catch
-        {
-            return string.Empty;
-        }
-    }
-}

+ 0 - 40
src/PixiEditor.AvaloniaUI/Helpers/Converters/FileExtensionToColorConverter.cs

@@ -1,40 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using System.IO;
-using Avalonia.Media;
-using PixiEditor.AvaloniaUI.Models.Files;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class FileExtensionToColorConverter :
-    SingleInstanceConverter<FileExtensionToColorConverter>
-{
-    private static readonly Dictionary<string, SolidColorBrush> extensionsToBrushes;
-    public static readonly SolidColorBrush UnknownBrush = ColorBrush(100, 100, 100);
-
-    static FileExtensionToColorConverter()
-    {
-        extensionsToBrushes = new Dictionary<string, SolidColorBrush>();
-
-        foreach (var fileTypes in SupportedFilesHelper.FileTypes)
-        {
-            foreach (var ext in fileTypes.Extensions)
-            {
-                extensionsToBrushes[ext] = fileTypes.EditorColor;   
-            }
-        }
-    }
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture) =>
-        GetBrush((string)value);
-
-    public static Brush GetBrush(string path)
-    {
-        return extensionsToBrushes.GetValueOrDefault(Path.GetExtension(path).ToLower(), UnknownBrush);
-    }
-
-    private static SolidColorBrush ColorBrush(byte r, byte g, byte b)
-    {
-        return new SolidColorBrush(Color.FromRgb(r, g, b));
-    }
-}

+ 0 - 16
src/PixiEditor.AvaloniaUI/Helpers/Converters/FloorConverter.cs

@@ -1,16 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class FloorConverter : SingleInstanceConverter<FloorConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return Math.Floor((double)value);
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value;
-    }
-}

+ 0 - 32
src/PixiEditor.AvaloniaUI/Helpers/Converters/FormattedColorConverter.cs

@@ -1,32 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using Avalonia.Media;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class FormattedColorConverter
-    : SingleInstanceMultiValueConverter<FormattedColorConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return Convert(new[] { value }, targetType, parameter, culture);
-    }
-
-    public override object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture)
-    {
-        if (values == null ||
-            values.Count <= 1 ||
-            values[0] is not Color color ||
-            values[1] is not string format)
-        {
-            return "";
-        }
-
-        return format.ToLowerInvariant() switch
-        {
-            "hex" => color.ToString(),
-            "rgba" => $"({color.R}, {color.G}, {color.B}, {color.A})",
-            _ => "",
-        };
-    }
-}

+ 0 - 36
src/PixiEditor.AvaloniaUI/Helpers/Converters/GenericColorToMediaColorConverter.cs

@@ -1,36 +0,0 @@
-using System.Globalization;
-using Avalonia.Media;
-using PixiEditor.AvaloniaUI.Helpers.Extensions;
-using PixiEditor.Extensions.CommonApi.Palettes;
-using BackendColor = PixiEditor.DrawingApi.Core.ColorsImpl.Color;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class GenericColorToMediaColorConverter : SingleInstanceConverter<GenericColorToMediaColorConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        Color color = default;
-        if (value is BackendColor backendColor)
-        {
-            color = backendColor.ToColor();
-        }
-        else if (value is PaletteColor paletteColor)
-        {
-            color = paletteColor.ToMediaColor();
-        }
-
-        if (targetType == typeof(Brush))
-        {
-            return new SolidColorBrush(color);
-        }
-
-        return color;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        var color = (Color)value;
-        return new BackendColor(color.R, color.G, color.B, color.A);
-    }
-}

+ 0 - 21
src/PixiEditor.AvaloniaUI/Helpers/Converters/IndentConverter.cs

@@ -1,21 +0,0 @@
-using System.Globalization;
-using Avalonia.Controls;
-using Avalonia.Data;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class IndentConverter
-    : SingleInstanceConverter<IndentConverter>
-{
-    private const int IndentSize = 20;
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return new GridLength(((GridLength)value).Value + IndentSize);
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return BindingOperations.DoNothing;
-    }
-}

+ 0 - 32
src/PixiEditor.AvaloniaUI/Helpers/Converters/IndexToAssociatedKeyConverter.cs

@@ -1,32 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using PixiEditor.Extensions.CommonApi.Palettes;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class IndexToAssociatedKeyConverter : SingleInstanceMultiValueConverter<IndexToAssociatedKeyConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return Convert(new List<object?> { value, parameter }, targetType, null, culture);
-    }
-
-    public override object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture)
-    {
-        if (values.Count != 2) return (int?)null;
-
-        if (values[0] is not PaletteColor paletteColor) return null;
-        if(values[1] is not IList<PaletteColor> paletteColors) return null;
-
-        int colIndex = paletteColors.IndexOf(paletteColor);
-
-        if (colIndex == -1) return null;
-        if (colIndex < 10)
-        {
-            if (colIndex == 9) return 0;
-            return (int?)colIndex + 1;
-        }
-
-        return null;
-    }
-}

+ 0 - 18
src/PixiEditor.AvaloniaUI/Helpers/Converters/IntToPickerTypeConverter.cs

@@ -1,18 +0,0 @@
-using System.Globalization;
-using ColorPicker.Models;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class IntToPickerTypeConverter
-    : SingleInstanceConverter<IntToPickerTypeConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return (PickerType)value;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return (int)value;
-    }
-}

+ 0 - 15
src/PixiEditor.AvaloniaUI/Helpers/Converters/IntToViewportRectConverter.cs

@@ -1,15 +0,0 @@
-using System.Globalization;
-using Avalonia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class IntToViewportRectConverter
-    : SingleInstanceConverter<IntToViewportRectConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return parameter is string and "vertical"
-            ? new Rect(0, 0, 1d / (int)value, 1d)
-            : (object)new Rect(0, 0, 1d, 1d / (int)value);
-    }
-}

+ 0 - 10
src/PixiEditor.AvaloniaUI/Helpers/Converters/IsSelectionToolConverter.cs

@@ -1,10 +0,0 @@
-using System.Globalization;
-using PixiEditor.AvaloniaUI.ViewModels.Tools.Tools;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class IsSelectionToolConverter : SingleInstanceConverter<IsSelectionToolConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture) =>
-        value is SelectToolViewModel or LassoToolViewModel or MagicWandToolViewModel;
-}

+ 0 - 64
src/PixiEditor.AvaloniaUI/Helpers/Converters/JsonConverters/DefaultUnknownEnumConverter.cs

@@ -1,64 +0,0 @@
-using System.Reflection;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters.JsonConverters;
-
-public class DefaultUnknownEnumConverter : StringEnumConverter
-{
-    /// <summary>
-    /// The default value used to fallback on when a enum is not convertable.
-    /// </summary>
-    private readonly int defaultValue;
-
-    /// <inheritdoc />
-    /// <summary>
-    /// Default constructor. Defaults the default value to 0.
-    /// </summary>
-    public DefaultUnknownEnumConverter()
-    {
-
-    }
-
-    /// <inheritdoc />
-    /// <summary>
-    /// Sets the default value for the enum value.
-    /// </summary>
-    /// <param name="defaultValue">The default value to use.</param>
-    public DefaultUnknownEnumConverter(int defaultValue)
-    {
-        this.defaultValue = defaultValue;
-    }
-
-    /// <inheritdoc />
-    /// <summary>
-    /// Reads the provided JSON and attempts to convert using StringEnumConverter. If that fails set the value to the default value.
-    /// </summary>
-    /// <param name="reader">Reads the JSON value.</param>
-    /// <param name="objectType">Current type that is being converted.</param>
-    /// <param name="existingValue">The existing value being read.</param>
-    /// <param name="serializer">Instance of the JSON Serializer.</param>
-    /// <returns>The deserialized value of the enum if it exists or the default value if it does not.</returns>
-    public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
-    {
-        try
-        {
-            return base.ReadJson(reader, objectType, existingValue, serializer);
-        }
-        catch
-        {
-            return Enum.Parse(objectType, $"{defaultValue}");
-        }
-    }
-
-    /// <inheritdoc />
-    /// <summary>
-    /// Validates that this converter can handle the type that is being provided.
-    /// </summary>
-    /// <param name="objectType">The type of the object being converted.</param>
-    /// <returns>True if the base class says so, and if the value is an enum and has a default value to fall on.</returns>
-    public override bool CanConvert(Type objectType)
-    {
-        return base.CanConvert(objectType) && objectType.GetTypeInfo().IsEnum && Enum.IsDefined(objectType, defaultValue);
-    }
-}

+ 0 - 23
src/PixiEditor.AvaloniaUI/Helpers/Converters/KeyToStringConverter.cs

@@ -1,23 +0,0 @@
-using System.Globalization;
-using Avalonia.Input;
-using PixiEditor.Extensions.Common.Localization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class KeyToStringConverter
-    : SingleInstanceConverter<KeyToStringConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture) =>
-        value switch
-        {
-            Key key => (object)InputKeyHelpers.GetKeyboardKey(key),
-            KeyModifiers modifier => modifier switch
-            {
-                KeyModifiers.Control => new LocalizedString("CTRL_KEY"),
-                KeyModifiers.Shift => new LocalizedString("SHIFT_KEY"),
-                KeyModifiers.Alt => new LocalizedString("ALT_KEY"),
-                _ => modifier.ToString()
-            },
-            _ => string.Empty
-        };
-}

+ 0 - 33
src/PixiEditor.AvaloniaUI/Helpers/Converters/ModifierFlagToModifiersConverter.cs

@@ -1,33 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using Avalonia.Input;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ModifierFlagToModifiersConverter : SingleInstanceConverter<ModifierFlagToModifiersConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return GetModifiers((KeyModifiers)value);
-    }
-
-    private IEnumerable<KeyModifiers> GetModifiers(KeyModifiers keys)
-    {
-        if (keys.HasFlag(KeyModifiers.Meta))
-        {
-            yield return KeyModifiers.Meta;
-        }
-        else if (keys.HasFlag(KeyModifiers.Control))
-        {
-            yield return KeyModifiers.Control;
-        }
-        else if (keys.HasFlag(KeyModifiers.Shift))
-        {
-            yield return KeyModifiers.Shift;
-        }
-        else if (keys.HasFlag(KeyModifiers.Alt))
-        {
-            yield return KeyModifiers.Alt;
-        }
-    }
-}

+ 0 - 40
src/PixiEditor.AvaloniaUI/Helpers/Converters/MultiplyConverter.cs

@@ -1,40 +0,0 @@
-using System.Globalization;
-using Avalonia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class MultiplyConverter : SingleInstanceConverter<MultiplyConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        double? actuallyValue = NumberToDouble(value);
-        double? factor = NumberToDouble(parameter);
-        if (actuallyValue is null || factor is null)
-            return AvaloniaProperty.UnsetValue;
-        return actuallyValue * factor;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        double? actuallyValue = NumberToDouble(value);
-        double? factor = NumberToDouble(parameter);
-        if (actuallyValue is null || factor is null)
-            return AvaloniaProperty.UnsetValue;
-        return actuallyValue / factor;
-    }
-
-    private double? NumberToDouble(object number)
-    {
-        return number switch
-        {
-            int n => n,
-            uint n => n,
-            float n => n,
-            double n => n,
-            short n => n,
-            long n => n,
-            ulong n => n,
-            ushort n => n,
-            _ => null,
-        };
-    }
-}

+ 0 - 43
src/PixiEditor.AvaloniaUI/Helpers/Converters/NotNullToVisibilityConverter.cs

@@ -1,43 +0,0 @@
-using System.Globalization;
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-// TODO: check if this converter can be replaced with StringConverters.IsNullOrEmpty, StringConverters.IsNotNullOrEmpty, ObjectConverters.IsNull, or ObjectConverters.IsNotNull
-internal class NotNullToVisibilityConverter
-    : MarkupConverter
-{
-    public bool Inverted { get; set; }
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        bool isNull = IsDefaultValue(value);
-
-        if (Inverted)
-        {
-            isNull = !isNull;
-        }
-
-        return !isNull;
-    }
-    
-    bool IsDefaultValue(object obj)
-    {
-        if (obj is null)
-        {
-            return true;
-        }
-        
-        var type = obj.GetType();
-
-        //TODO: Try to find what breaks without below, because in my opinion this
-        // is not a correct thing to do with NotNull converter, lots with false positives, like 0 as a int
-        /*if (type.IsValueType)
-        {
-            object defaultValue = Activator.CreateInstance(type);
-            return obj.Equals(defaultValue);
-        }*/
-
-        return false;
-    }
-}

+ 0 - 12
src/PixiEditor.AvaloniaUI/Helpers/Converters/NullToVisibilityConverter.cs

@@ -1,12 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class NullToVisibilityConverter
-    : SingleInstanceConverter<NullToVisibilityConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value is null;
-    }
-}

+ 0 - 20
src/PixiEditor.AvaloniaUI/Helpers/Converters/PaletteItemsToWidthConverter.cs

@@ -1,20 +0,0 @@
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Globalization;
-using PixiEditor.DrawingApi.Core.ColorsImpl;
-using PixiEditor.Extensions.CommonApi.Palettes;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class PaletteItemsToWidthConverter : SingleInstanceConverter<PaletteItemsToWidthConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is IList<PaletteColor> { Count: > 0 })
-        {
-            return 60;
-        }
-
-        return 0;
-    }
-}

+ 0 - 17
src/PixiEditor.AvaloniaUI/Helpers/Converters/PaletteViewerWidthToVisibilityConverter.cs

@@ -1,17 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class PaletteViewerWidthToVisibilityConverter : SingleInstanceConverter<PaletteViewerWidthToVisibilityConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        bool isCompact = value is double and < 100;
-        if (parameter is "False" or false)
-        {
-            return !isCompact;
-        }
-
-        return isCompact;
-    }
-}

+ 0 - 19
src/PixiEditor.AvaloniaUI/Helpers/Converters/RadiansToDegreesConverter.cs

@@ -1,19 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class RadiansToDegreesConverter : SingleInstanceConverter<RadiansToDegreesConverter>
-{
-    private const double RadiansToDegrees = 180 / Math.PI;
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-
-        if (value is double angle)
-        {
-            return Math.Truncate((angle * RadiansToDegrees + 360) % 360);
-        }
-
-        return 0;
-    }
-}

+ 0 - 20
src/PixiEditor.AvaloniaUI/Helpers/Converters/ReciprocalConverter.cs

@@ -1,20 +0,0 @@
-using System.Globalization;
-using Avalonia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class ReciprocalConverter : SingleInstanceConverter<ReciprocalConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is not double num)
-            return AvaloniaProperty.UnsetValue;
-
-        return Convert(num, parameter is double mult ? mult : 1d);
-    }
-
-    public static double Convert(double num, double mult = 1)
-    {
-        var result = mult / num;
-        return Math.Clamp(result, 1e-15, 1e15);
-    }
-}

+ 0 - 26
src/PixiEditor.AvaloniaUI/Helpers/Converters/ScaleToBitmapScalingModeConverter.cs

@@ -1,26 +0,0 @@
-using System.Globalization;
-using Avalonia.Media.Imaging;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ScaleToBitmapScalingModeConverter : SingleInstanceConverter<ScaleToBitmapScalingModeConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is not double scale)
-            return BitmapInterpolationMode.None;
-        return Calculate(scale);
-    }
-
-    public static BitmapInterpolationMode Calculate(double scale)
-    {
-        if (scale < 1)
-            return BitmapInterpolationMode.HighQuality;
-        return BitmapInterpolationMode.None;
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        throw new NotImplementedException();
-    }
-}

+ 0 - 22
src/PixiEditor.AvaloniaUI/Helpers/Converters/SingleInstanceConverter.cs

@@ -1,22 +0,0 @@
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-/// <summary>
-/// Use this if you want to share the same converter over the whole application. <para/> Do not use this if your converter has properties.
-/// </summary>
-internal abstract class SingleInstanceConverter<TThis> : MarkupConverter
-    where TThis : SingleInstanceConverter<TThis>
-{
-    private static SingleInstanceConverter<TThis> instance;
-
-    public override object ProvideValue(IServiceProvider serviceProvider)
-    {
-        if (instance is null)
-        {
-            instance = this;
-        }
-
-        return instance;
-    }
-}

+ 0 - 24
src/PixiEditor.AvaloniaUI/Helpers/Converters/SingleInstanceMultiValueConverter.cs

@@ -1,24 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using Avalonia.Data.Converters;
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal abstract class SingleInstanceMultiValueConverter<TThis> : MarkupConverter, IMultiValueConverter
-    where TThis : SingleInstanceMultiValueConverter<TThis>
-{
-    private static SingleInstanceMultiValueConverter<TThis> instance;
-
-    public override object ProvideValue(IServiceProvider serviceProvider)
-    {
-        if (instance is null)
-        {
-            instance = this;
-        }
-
-        return instance;
-    }
-
-    public abstract object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture);
-}

+ 0 - 23
src/PixiEditor.AvaloniaUI/Helpers/Converters/StructureMemberSelectionTypeToColorConverter.cs

@@ -1,23 +0,0 @@
-using System.Globalization;
-using Avalonia.Media;
-using PixiEditor.AvaloniaUI.Models.Layers;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-internal class StructureMemberSelectionTypeToColorConverter : SingleInstanceConverter<StructureMemberSelectionTypeToColorConverter>
-{
-    // Can't use DynamicResource, because properties are not AvaloniaProperty
-    public IBrush NoneColor { get; set; }
-    public IBrush SoftColor { get; set; }
-    public IBrush HardColor { get; set; }
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value switch
-        {
-            StructureMemberSelectionType.Hard => HardColor,
-            StructureMemberSelectionType.Soft => SoftColor,
-            StructureMemberSelectionType.None => NoneColor,
-            _ => NoneColor,
-        };
-    }
-}

+ 0 - 24
src/PixiEditor.AvaloniaUI/Helpers/Converters/SubtractConverter.cs

@@ -1,24 +0,0 @@
-using System.Globalization;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class SubtractConverter : SingleInstanceConverter<SubtractConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        object parsedValue = value is string stringValue ? double.Parse(stringValue) : value;
-        object parsedParameter = parameter is string parameterString ? double.Parse(parameterString) : parameter;
-        
-        if (parsedValue is not double doubleValue)
-        {
-            return value;
-        }
-
-        if (parsedParameter is not double doubleParameter)
-        {
-            return value;
-        }
-
-        return doubleValue - doubleParameter;
-    }
-}

+ 0 - 23
src/PixiEditor.AvaloniaUI/Helpers/Converters/ThresholdVisibilityConverter.cs

@@ -1,23 +0,0 @@
-using System.Globalization;
-using PixiEditor.UI.Common.Converters;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ThresholdVisibilityConverter
-    : MarkupConverter
-{
-    public double Threshold { get; set; } = 100;
-    public bool CheckIfLess { get; set; } = false;
-
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return Check((double)value);
-    }
-
-    public bool Check(double value)
-    {
-        return CheckIfLess
-            ? value < Threshold
-            : value >= Threshold;
-    }
-}

+ 0 - 36
src/PixiEditor.AvaloniaUI/Helpers/Converters/ToolSizeToIntConverter.cs

@@ -1,36 +0,0 @@
-using System.Globalization;
-using System.Text;
-using System.Text.RegularExpressions;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ToolSizeToIntConverter
-    : SingleInstanceConverter<ToolSizeToIntConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return value.ToString();
-    }
-
-    public override object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is not string s)
-        {
-            return null;
-        }
-
-        Match match = Regex.Match(s, @"\d+");
-
-        if (!match.Success)
-        {
-            return null;
-        }
-
-        if (int.TryParse(match.Groups[0].ValueSpan.ToString().Normalize(NormalizationForm.FormKC), out int result))
-        {
-            return result;
-        }
-
-        return null;
-    }
-}

+ 0 - 26
src/PixiEditor.AvaloniaUI/Helpers/Converters/WidthToBitmapScalingModeConverter.cs

@@ -1,26 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using Avalonia;
-using Avalonia.Media.Imaging;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class WidthToBitmapScalingModeConverter : SingleInstanceMultiValueConverter<WidthToBitmapScalingModeConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        return Convert(new [] {value}, targetType, parameter, culture);
-    }
-
-    public override object? Convert(IList<object?> values, Type targetType, object? parameter, CultureInfo culture)
-    {
-        int? pixelWidth = values[0] as int?;
-        double? actualWidth = values[1] as double?;
-        if (pixelWidth == null || actualWidth == null)
-            return AvaloniaProperty.UnsetValue;
-        double zoomLevel = actualWidth.Value / pixelWidth.Value;
-        if (zoomLevel < 1)
-            return BitmapInterpolationMode.HighQuality;
-        return BitmapInterpolationMode.None;
-    }
-}

+ 0 - 15
src/PixiEditor.AvaloniaUI/Helpers/Converters/ZoomModeToHitTestVisibleConverter.cs

@@ -1,15 +0,0 @@
-using System.Globalization;
-using Avalonia;
-using PixiEditor.Zoombox;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ZoomModeToHitTestVisibleConverter : SingleInstanceConverter<ZoomModeToHitTestVisibleConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is not ZoomboxMode zoomboxMode)
-            return AvaloniaProperty.UnsetValue;
-        return zoomboxMode == ZoomboxMode.Normal;
-    }
-}

+ 0 - 29
src/PixiEditor.AvaloniaUI/Helpers/Converters/ZoomToViewportConverter.cs

@@ -1,29 +0,0 @@
-using System.Globalization;
-using Avalonia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Converters;
-
-internal class ZoomToViewportConverter
-    : SingleInstanceConverter<ZoomToViewportConverter>
-{
-    public override object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-    {
-        if (value is double scale && parameter is double factor)
-        {
-            var newSize = ZoomToViewport(factor, scale);
-            return new RelativeRect(0, 0, newSize, newSize, RelativeUnit.Absolute);
-        }
-
-        return AvaloniaProperty.UnsetValue;
-    }
-
-    public static double ZoomToViewport(double factor, double scale)
-    {
-        double newSize = Math.Clamp(factor / scale, 2, 9999);
-
-        double log = Math.Log(newSize, 2);
-        //round to power of 2
-        newSize = Math.Pow(2, Math.Round(log));
-        return newSize;
-    }
-}

+ 0 - 159
src/PixiEditor.AvaloniaUI/Helpers/CrashHelper.cs

@@ -1,159 +0,0 @@
-using System.Collections.Generic;
-using System.Globalization;
-using System.IO;
-using System.Net.Http;
-using System.Runtime.CompilerServices;
-using System.Text;
-using System.Threading.Tasks;
-using ByteSizeLib;
-using Hardware.Info;
-using PixiEditor.AvaloniaUI.Models.ExceptionHandling;
-using PixiEditor.AvaloniaUI.ViewModels.Document;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal class CrashHelper
-{
-    private readonly IHardwareInfo hwInfo;
-
-    public static void SaveCrashInfo(Exception exception, IEnumerable<DocumentViewModel> documents)
-    {
-        try
-        {
-            //TODO: proper implementation of Mouse.OverrideCursor = Cursors.Wait;
-        }
-        catch (Exception e)
-        {
-            exception = new AggregateException(exception, e);
-        }
-        
-        var report = CrashReport.Generate(exception);
-        report.TrySave(documents);
-        report.RestartToCrashReport();
-    }
-
-    public CrashHelper()
-    {
-        hwInfo = new HardwareInfo();
-    }
-
-    public void GetCPUInformation(StringBuilder builder)
-    {
-        builder.AppendLine("CPU:");
-        hwInfo.RefreshCPUList(false);
-
-        foreach (var processor in hwInfo.CpuList)
-        {
-            builder
-                .AppendLine($"  Name: {processor.Name}")
-                .AppendLine($"  Speed: {(processor.CurrentClockSpeed / 1000f).ToString("F2", CultureInfo.InvariantCulture)} GHz")
-                .AppendLine($"  Max Speed: {(processor.MaxClockSpeed / 1000f).ToString("F2", CultureInfo.InvariantCulture)} GHz")
-                .AppendLine();
-        }
-    }
-
-    public void GetGPUInformation(StringBuilder builder)
-    {
-        builder.AppendLine("GPU:");
-        hwInfo.RefreshVideoControllerList();
-
-        foreach (var gpu in hwInfo.VideoControllerList)
-        {
-            builder
-                .AppendLine($"  Name: {gpu.Name}")
-                .AppendLine($"  Driver: {gpu.DriverVersion}")
-                .AppendLine();
-        }
-    }
-
-    public void GetMemoryInformation(StringBuilder builder)
-    {
-        builder.AppendLine("Memory:");
-        hwInfo.RefreshMemoryStatus();
-
-        var memInfo = hwInfo.MemoryStatus;
-
-        builder
-            .AppendLine($"  Available: {new ByteSize(memInfo.AvailablePhysical).ToString("", CultureInfo.InvariantCulture)}")
-            .AppendLine($"  Total: {new ByteSize(memInfo.TotalPhysical).ToString("", CultureInfo.InvariantCulture)}");
-    }
-
-    public static void AddExceptionMessage(StringBuilder builder, Exception e)
-    {
-        builder
-            .AppendLine("\n-------Crash message-------")
-            .Append(e.GetType().ToString())
-            .Append(": ")
-            .AppendLine(e.Message);
-        {
-            var innerException = e.InnerException;
-            while (innerException != null)
-            {
-                builder
-                    .Append("\n-----Inner exception-----\n")
-                    .Append(innerException.GetType().ToString())
-                    .Append(": ")
-                    .Append(innerException.Message);
-                innerException = innerException.InnerException;
-            }
-        }
-
-        builder
-            .Append("\n\n-------Stack trace-------\n")
-            .Append(e.StackTrace);
-        {
-            var innerException = e.InnerException;
-            while (innerException != null)
-            {
-                builder
-                    .Append("\n-----Inner exception-----\n")
-                    .Append(innerException.StackTrace);
-                innerException = innerException.InnerException;
-            }
-        }
-    }
-    
-    public static void SendExceptionInfoToWebhook(Exception e, bool wait = false,
-        [CallerFilePath] string filePath = "<unknown>", [CallerMemberName] string memberName = "<unknown>")
-    {
-        // TODO: quadruple check that this Task.Run is actually acceptable here
-        // I think it might not be because there is stuff about the main window in the crash report, so Avalonia is touched from a different thread (is it bad for avalonia?)
-        var task = Task.Run(() => SendExceptionInfoToWebhookAsync(e, filePath, memberName));
-        if (wait)
-        {
-            task.Wait();
-        }
-    }
-
-    public static async Task SendExceptionInfoToWebhookAsync(Exception e, [CallerFilePath] string filePath = "<unknown>", [CallerMemberName] string memberName = "<unknown>")
-    {
-        // TODO: Proper DebugBuild checking
-        /*if (DebugViewModel.IsDebugBuild)
-            return;*/
-        await SendReportTextToWebhookAsync(CrashReport.Generate(e), $"{filePath}; Method {memberName}");
-    }
-
-    public static async Task SendReportTextToWebhookAsync(CrashReport report, string catchLocation = null)
-    {
-        string reportText = report.ReportText;
-        if (catchLocation is not null)
-        {
-            reportText = $"The report was generated from an exception caught in {catchLocation}.\r\n{reportText}";
-        }
-
-        byte[] bytes = Encoding.UTF8.GetBytes(reportText);
-        string filename = Path.GetFileNameWithoutExtension(report.FilePath) + ".txt";
-
-        MultipartFormDataContent formData = new MultipartFormDataContent
-        {
-            { new ByteArrayContent(bytes, 0, bytes.Length), "crash-report", filename }
-        };
-        try
-        {
-            using HttpClient httpClient = new HttpClient();
-            string url = BuildConstants.CrashReportWebhookUrl;
-            await httpClient.PostAsync(url, formData);
-        }
-        catch { }
-    }
-}

+ 0 - 37
src/PixiEditor.AvaloniaUI/Helpers/DesignCommandHelpers.cs

@@ -1,37 +0,0 @@
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using PixiEditor.AvaloniaUI.Models.Commands;
-using PixiEditor.AvaloniaUI.Models.Commands.Exceptions;
-using CommandAttribute = PixiEditor.AvaloniaUI.Models.Commands.Attributes.Commands.Command;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-/// <summary>
-/// Helps with debugging when using XAML
-/// </summary>
-internal static class DesignCommandHelpers
-{
-    private static IEnumerable<CommandAttribute.CommandAttribute> _commands;
-
-    public static CommandAttribute.CommandAttribute GetCommandAttribute(string name)
-    {
-        if (_commands == null)
-        {
-            _commands = Assembly
-                .GetAssembly(typeof(CommandController))
-                .GetTypes()
-                .SelectMany(x => x.GetMethods())
-                .SelectMany(x => x.GetCustomAttributes<CommandAttribute.CommandAttribute>());
-        }
-
-        var command = _commands.SingleOrDefault(x => x.InternalName == name || x.InternalName == $"#DEBUG#{name}");
-
-        if (command == null)
-        {
-            throw new CommandNotFoundException(name);
-        }
-
-        return command;
-    }
-}

+ 0 - 30
src/PixiEditor.AvaloniaUI/Helpers/Extensions/BlendModeEx.cs

@@ -1,30 +0,0 @@
-using PixiEditor.ChangeableDocument.Enums;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-internal static class BlendModeEx
-{
-    public static string LocalizedKeys(this BlendMode mode)
-    {
-        return mode switch
-        {
-            BlendMode.Normal => "NORMAL_BLEND_MODE",
-            BlendMode.Darken => "DARKEN_BLEND_MODE",
-            BlendMode.Multiply => "MULTIPLY_BLEND_MODE",
-            BlendMode.ColorBurn => "COLOR_BURN_BLEND_MODE",
-            BlendMode.Lighten => "LIGHTEN_BLEND_MODE",
-            BlendMode.Screen => "SCREEN_BLEND_MODE",
-            BlendMode.ColorDodge => "COLOR_DODGE_BLEND_MODE",
-            BlendMode.LinearDodge => "LINEAR_DODGE_BLEND_MODE",
-            BlendMode.Overlay => "OVERLAY_BLEND_MODE",
-            BlendMode.SoftLight => "SOFT_LIGHT_BLEND_MODE",
-            BlendMode.HardLight => "HARD_LIGHT_BLEND_MODE",
-            BlendMode.Difference => "DIFFERENCE_BLEND_MODE",
-            BlendMode.Exclusion => "EXCLUSION_BLEND_MODE",
-            BlendMode.Hue => "HUE_BLEND_MODE",
-            BlendMode.Saturation => "SATURATION_BLEND_MODE",
-            BlendMode.Luminosity => "LUMINOSITY_BLEND_MODE",
-            BlendMode.Color => "COLOR_BLEND_MODE",
-            _ => "NOT_SUPPORTED_BLEND_MODE"
-        };
-    }
-}

+ 0 - 33
src/PixiEditor.AvaloniaUI/Helpers/Extensions/ColorHelpers.cs

@@ -1,33 +0,0 @@
-using Avalonia.Media;
-using PixiEditor.Extensions.CommonApi.Palettes;
-using BackendColor = PixiEditor.DrawingApi.Core.ColorsImpl.Color;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-
-internal static class ColorHelpers
-{
-    public static BackendColor ToOpaqueColor(this Color color) => new(color.R, color.G, color.B);
-    public static BackendColor ToColor(this Color color) => new(color.R, color.G, color.B, color.A);
-    public static BackendColor ToColor(this PaletteColor color) => new(color.R, color.G, color.B, 255);
-
-    public static PaletteColor ToPaletteColor(this Color color) => new(color.R, color.G, color.B);
-    public static PaletteColor ToPaletteColor(this BackendColor color) => new(color.R, color.G, color.B);
-
-    public static Color ToOpaqueMediaColor(this BackendColor color) => Color.FromRgb(color.R, color.G, color.B);
-    public static Color ToColor(this BackendColor color) => Color.FromArgb(color.A, color.R, color.G, color.B);
-    public static Color ToMediaColor(this PaletteColor color) => Color.FromRgb(color.R, color.G, color.B);
-    
-    public static BackendColor BlendColors(BackendColor bottomColor, BackendColor topColor)
-    {
-        if (topColor.A is < 255 and > 0)
-        {
-            byte r = (byte)((topColor.R * topColor.A / 255) + (bottomColor.R * bottomColor.A * (255 - topColor.A) / (255 * 255)));
-            byte g = (byte)((topColor.G * topColor.A / 255) + (bottomColor.G * bottomColor.A * (255 - topColor.A) / (255 * 255)));
-            byte b = (byte)((topColor.B * topColor.A / 255) + (bottomColor.B * bottomColor.A * (255 - topColor.A) / (255 * 255)));
-            byte a = (byte)(topColor.A + (bottomColor.A * (255 - topColor.A) / 255));
-            return new BackendColor(r, g, b, a);
-        }
-
-        return topColor.A == 255 ? topColor : bottomColor;
-    }
-}

+ 0 - 29
src/PixiEditor.AvaloniaUI/Helpers/Extensions/DictionaryHelper.cs

@@ -1,29 +0,0 @@
-using System.Collections.Generic;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-
-internal static class DictionaryHelper
-{
-    public static void AddRangeOverride<TKey, TValue>(
-        this IDictionary<TKey, TValue> dict,
-        IDictionary<TKey, TValue> dictToAdd)
-    {
-        foreach (KeyValuePair<TKey, TValue> item in dictToAdd)
-        {
-            dict[item.Key] = item.Value;
-        }
-    }
-
-    public static void AddRangeNewOnly<TKey, TValue>(
-        this IDictionary<TKey, TValue> dict,
-        IDictionary<TKey, TValue> dictToAdd)
-    {
-        foreach (KeyValuePair<TKey, TValue> item in dictToAdd)
-        {
-            if (!dict.ContainsKey(item.Key))
-            {
-                dict.Add(item.Key, item.Value);
-            }
-        }
-    }
-}

+ 0 - 18
src/PixiEditor.AvaloniaUI/Helpers/Extensions/DirectoryExtensions.cs

@@ -1,18 +0,0 @@
-using System.Linq;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-
-internal static class DirectoryExtensions
-{
-    /// <summary>
-    ///     Gets files in directory with multiple filters.
-    /// </summary>
-    /// <param name="sourceFolder">Folder to get files from.</param>
-    /// <param name="filters">Filters separated by '|' character.</param>
-    /// <param name="searchOption">Search option for directory.</param>
-    /// <returns>List of file paths found.</returns>
-    public static string[] GetFiles(string sourceFolder, string filters, System.IO.SearchOption searchOption)
-    {
-        return filters.Split('|').SelectMany(filter => System.IO.Directory.GetFiles(sourceFolder, $"*{filter}", searchOption)).ToArray();
-    }
-}

+ 0 - 90
src/PixiEditor.AvaloniaUI/Helpers/Extensions/PixelFormatHelper.cs

@@ -1,90 +0,0 @@
-using Avalonia.Platform;
-using PixiEditor.DrawingApi.Core.Surfaces.ImageData;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-
-internal static class PixelFormatHelper
-{
-    public static ColorType ToColorType(this PixelFormat format, out AlphaType alphaType)
-    {
-        if (TryConvertToColorType(format, out var color, out alphaType))
-        {
-            return color;
-        }
-
-        throw new NotImplementedException($"Skia does not support the '{format}' format");
-    }
-    
-    public static ColorType ToColorType(this SKColorType colorType)
-    { 
-        return (ColorType)colorType;
-    }
-    
-    public static AlphaType ToAlphaType(this SKAlphaType alphaType)
-    {
-        return (AlphaType)alphaType;
-    }
-
-    public static bool TryConvertToColorType(this PixelFormat format, out ColorType colorType, out AlphaType alphaType)
-    {
-        if (format == PixelFormats.Rgba64)
-        {
-            alphaType = AlphaType.Unpremul;
-            colorType = ColorType.Rgba16161616;
-            return true;
-        }
-
-        if (format == PixelFormats.Bgra8888)
-        {
-            alphaType = AlphaType.Unpremul;
-            colorType = ColorType.Bgra8888;
-            return true;
-        }
-
-        /*if (format == PixelFormats.Bgra32)
-        {
-            alphaType = AlphaType.Unpremul;
-            colorType = ColorType.Bgra8888;
-            return true;
-        }*/
-
-        /*if (format == PixelFormats.Default)
-        {
-            alphaType = AlphaType.Unpremul;
-            colorType = ColorType.RgbaF16;
-            return true;
-        }*/
-
-        if (format == PixelFormats.Gray8)
-        {
-            alphaType = AlphaType.Opaque;
-            colorType = ColorType.Gray8;
-            return true;
-        }
-
-        /*if (format == PixelFormats.Pbgra32)
-        {
-            alphaType = AlphaType.Premul;
-            colorType = ColorType.Bgra8888;
-            return true;
-        }*/
-
-        if (format == PixelFormats.Bgr24 || format == PixelFormats.BlackWhite ||
-            format == PixelFormats.Gray16 ||
-            format == PixelFormats.Gray2 || format == PixelFormats.Gray32Float || format == PixelFormats.Gray4
-            || format == PixelFormats.Rgb24)
-        {
-            alphaType = AlphaType.Unknown;
-            colorType = ColorType.Unknown;
-            return false;
-        }
-
-        throw new NotImplementedException(
-            $"'{format}' has not been implemented by {nameof(PixelFormatHelper)}.{nameof(TryConvertToColorType)}()");
-    }
-
-    public static bool IsSkiaSupported(this PixelFormat format)
-    {
-        return TryConvertToColorType(format, out _, out _);
-    }
-}

+ 0 - 99
src/PixiEditor.AvaloniaUI/Helpers/Extensions/PixiParserDocumentEx.cs

@@ -1,99 +0,0 @@
-using System.Collections;
-using ChunkyImageLib;
-using PixiEditor.AvaloniaUI.ViewModels.Document;
-using PixiEditor.DrawingApi.Core;
-using PixiEditor.DrawingApi.Core.Surfaces.ImageData;
-using PixiEditor.DrawingApi.Skia;
-using PixiEditor.Extensions.CommonApi.Palettes;
-using PixiEditor.Numerics;
-using PixiEditor.Parser;
-using PixiEditor.Parser.Graph;
-using PixiEditor.Parser.Skia;
-
-namespace PixiEditor.AvaloniaUI.Helpers.Extensions;
-
-internal static class PixiParserDocumentEx
-{
-    public static VecD ToVecD(this Vector2 vec)
-    {
-        return new VecD(vec.X, vec.Y);
-    }
-
-    public static Vector2 ToVector2(this VecD vec)
-    {
-        return new Vector2() { X = vec.X, Y = vec.Y };
-    }
-
-    public static DocumentViewModel ToDocument(this Document document)
-    {
-        ImageEncoder? encoder = document.GetEncoder();
-        if (encoder == null)
-        {
-            throw new ArgumentException("Document does not have a valid encoder");
-        }
-
-        return DocumentViewModel.Build(b => b
-            .WithSize(document.Width, document.Height)
-            .WithImageEncoder(document.ImageEncoderUsed)
-            .WithPalette(document.Palette, color => new PaletteColor(color.R, color.G, color.B))
-            .WithSwatches(document.Swatches, x => new(x.R, x.G, x.B))
-            .WithReferenceLayer(document.ReferenceLayer, BuildReferenceLayer, encoder)
-            .WithGraph(document.Graph, BuildGraph)
-            .WithAnimationData(document.AnimationData));
-    }
-
-    private static void BuildGraph(NodeGraph graph, NodeGraphBuilder graphBuilder)
-    {
-        if (graph.AllNodes != null)
-        {
-            foreach (var node in graph.AllNodes)
-            {
-                graphBuilder.WithNode(x => x
-                    .WithId(node.Id)
-                    .WithPosition(node.Position)
-                    .WithName(node.Name)
-                    .WithUniqueNodeName(node.UniqueNodeName)
-                    .WithKeyFrames(node.KeyFrames)
-                    .WithInputValues(ToDictionary(node.InputPropertyValues))
-                    .WithAdditionalData(node.AdditionalData)
-                    .WithConnections(node.InputConnections));
-            }
-        }
-    }
-
-    private static Dictionary<string, object> ToDictionary(IEnumerable<NodePropertyValue> properties)
-    {
-        Dictionary<string, object> dict = new();
-        foreach (var property in properties)
-        {
-            dict[property.PropertyName] = property.Value;
-        }
-
-        return dict;
-    }
-
-    private static void BuildReferenceLayer(
-        ReferenceLayer referenceLayer,
-        DocumentViewModelBuilder.ReferenceLayerBuilder layerBuilder,
-        ImageEncoder encoder)
-    {
-        var surface = DecodeSurface(referenceLayer.ImageBytes, referenceLayer.ImageWidth, referenceLayer.ImageHeight, encoder);
-
-        layerBuilder
-            .WithIsVisible(referenceLayer.Enabled)
-            .WithShape(referenceLayer.Corners)
-            .WithIsTopmost(referenceLayer.Topmost)
-            .WithSurface(surface);
-    }
-
-    private static Surface DecodeSurface(byte[] imgBytes, int width, int height, ImageEncoder encoder)
-    {
-        Surface surface = new Surface(new VecI(width, height));
-
-        byte[] decoded =
-            encoder.Decode(imgBytes, out SKImageInfo info);
-        surface.DrawBytes(surface.Size, decoded, info.ColorType.ToColorType(), info.AlphaType.ToAlphaType());
-
-        return surface;
-    }
-}

+ 0 - 68
src/PixiEditor.AvaloniaUI/Helpers/IconEvaluators.cs

@@ -1,68 +0,0 @@
-using System.Globalization;
-using System.Reflection;
-using Avalonia;
-using Avalonia.Controls;
-using Avalonia.Media;
-using Avalonia.Media.Imaging;
-using Avalonia.Platform;
-using PixiEditor.AvaloniaUI.Models.Commands.Attributes.Evaluators;
-using PixiEditor.AvaloniaUI.Models.Commands.Commands;
-using PixiEditor.AvaloniaUI.Models.Commands.Search;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class IconEvaluators
-{
-    public static Dictionary<string, Bitmap> images = new();
-
-    [Evaluator.Icon("PixiEditor.BitmapIcon")]
-    public static IImage GetBitmapIcon(object parameter)
-    {
-        string path = GetDefaultPath(parameter as Command);
-
-        var image = images.GetValueOrDefault(path);
-        if (image is not null)
-            return image;
-            
-        Uri uri = new($"avares://{Assembly.GetExecutingAssembly().GetName().Name}/{path}");
-        if (!AssetLoader.Exists(uri))
-            return null;
-            
-        image = new Bitmap(AssetLoader.Open(uri));
-        images.Add(path, image);
-
-        return image;
-    }
-    
-    public static string GetDefaultPath(Command command)
-    {
-        string path;
-
-        if (command.Icon != null)
-        {
-            if (command.Icon.StartsWith('@'))
-            {
-                path = command.Icon[1..];
-            }
-            else if (command.Icon.StartsWith('$'))
-            {
-                path = $"Images/Commands/{command.Icon[1..].Replace('.', '/')}.png";
-            }
-            else
-            {
-                path = $"Images/{command.Icon}";
-            }
-        }
-        else
-        {
-            path = $"Images/Commands/{command.InternalName.Replace('.', '/')}.png";
-        }
-
-        if (path.StartsWith("/"))
-        {
-            path = path[1..];
-        }
-
-        return path;
-    }
-}

+ 0 - 13
src/PixiEditor.AvaloniaUI/Helpers/InputKeyHelpers.cs

@@ -1,13 +0,0 @@
-using Avalonia.Input;
-using PixiEditor.OperatingSystem;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class InputKeyHelpers
-{
-    /// <summary>
-    /// Returns the character of the <paramref name="key"/> mapped to the users keyboard layout
-    /// </summary>
-    public static string GetKeyboardKey(Key key, bool forceInvariant = false) =>
-        IOperatingSystem.Current.InputKeys.GetKeyboardKey(key, forceInvariant);
-}

+ 0 - 65
src/PixiEditor.AvaloniaUI/Helpers/PaletteHelpers.cs

@@ -1,65 +0,0 @@
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Threading.Tasks;
-using Avalonia.Platform.Storage;
-using PixiEditor.Extensions.CommonApi.Palettes.Parsers;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class PaletteHelpers
-{
-    public static List<FilePickerFileType> GetFilter(IList<PaletteFileParser> parsers, bool includeCommon)
-    {
-        List<FilePickerFileType> filePickerFileTypes = new();
-
-        if (includeCommon)
-        {
-            List<string> allSupportedFormats = new();
-            foreach (var parser in parsers)
-            {
-                allSupportedFormats.AddRange(parser.SupportedFileExtensions
-                    .Select(x => x.Replace(".", "*.")));
-            }
-
-            string allSupportedFormatsString = string.Join(';', allSupportedFormats);
-            filePickerFileTypes.Add(new FilePickerFileType($"Palette Files ({allSupportedFormatsString}")
-            {
-                Patterns = allSupportedFormats
-            });
-        }
-
-        foreach (var parser in parsers)
-        {
-            string supportedFormats = string.Join(';', parser.SupportedFileExtensions).Replace(".", "*.");
-            filePickerFileTypes.Add(new FilePickerFileType($"{parser.FileName}")
-            {
-                Patterns = parser.SupportedFileExtensions
-            });
-        }
-
-        return filePickerFileTypes;
-    }
-    
-    public static async Task<PaletteFileData?> GetValidParser(IList<PaletteFileParser> parsers, string fileName)
-    {
-        // check all parsers for formats with same file extension
-        var parserList = parsers.Where(x => x.SupportedFileExtensions.Contains(Path.GetExtension(fileName).ToLower())).ToList();
-
-        int index = 0;
-        foreach (var parser in parserList)
-        {
-            var data = await parser.Parse(fileName);
-            index++;
-
-            if ((data.IsCorrupted || data.Colors.Length == 0) && index == parserList.Count) 
-                return null; // fail if none of the parsers in our list can read the file
-            if (data.IsCorrupted) 
-                continue; // skip to next parser if unable to read
-
-            return data;
-        }
-
-        return null;
-    }
-}

+ 0 - 17
src/PixiEditor.AvaloniaUI/Helpers/ProcessHelper.cs

@@ -1,17 +0,0 @@
-using System.Diagnostics;
-using PixiEditor.OperatingSystem;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class ProcessHelper
-{
-    public static Process RunAsAdmin(string path)
-    {
-        return IOperatingSystem.Current.ProcessUtility.RunAsAdmin(path);
-    }
-
-    public static bool IsRunningAsAdministrator()
-    {
-        return IOperatingSystem.Current.ProcessUtility.IsRunningAsAdministrator();
-    }
-}

+ 0 - 17
src/PixiEditor.AvaloniaUI/Helpers/SizeCalculator.cs

@@ -1,17 +0,0 @@
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class SizeCalculator
-{
-    public static System.Drawing.Size CalcAbsoluteFromPercentage(float percentage, System.Drawing.Size currentSize)
-    {
-        float percFactor = percentage / 100f;
-        float newWidth = currentSize.Width * percFactor;
-        float newHeight = currentSize.Height * percFactor;
-        return new System.Drawing.Size((int)MathF.Round(newWidth), (int)MathF.Round(newHeight));
-    }
-
-    public static int CalcPercentageFromAbsolute(int initAbsoluteSize, int currentAbsoluteSize)
-    {
-        return (int)((float)currentAbsoluteSize * 100) / initAbsoluteSize;
-    }
-}

+ 0 - 27
src/PixiEditor.AvaloniaUI/Helpers/StringHelpers.cs

@@ -1,27 +0,0 @@
-using System.Text;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class StringHelpers
-{
-    public static string AddSpacesBeforeUppercaseLetters(this string text)
-    {
-        if (string.IsNullOrWhiteSpace(text))
-            return "";
-
-        StringBuilder newText = new StringBuilder(text.Length * 2);
-        newText.Append(text[0]);
-        for (int i = 1; i < text.Length; i++)
-        {
-            if (char.IsUpper(text[i]) && text[i - 1] != ' ')
-                newText.Append(' ');
-            newText.Append(text[i]);
-        }
-        return newText.ToString();
-    }
-
-    public static string Limit(this string value, int maxLenght)
-    {
-        return value.Length > maxLenght ? value.Substring(0, maxLenght) : value;
-    }
-}

+ 0 - 95
src/PixiEditor.AvaloniaUI/Helpers/SupportedFilesHelper.cs

@@ -1,95 +0,0 @@
-using Avalonia.Platform.Storage;
-using PixiEditor.AvaloniaUI.Models.Files;
-using PixiEditor.AvaloniaUI.Models.IO;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal class SupportedFilesHelper
-{
-    public static string[] AllSupportedExtensions { get; private set; }
-    public static string[] PrimaryExtensions { get; private set; }
-    
-    public static List<IoFileType> FileTypes { get; private set; }
-    
-    public static void InitFileTypes(IEnumerable<IoFileType> fileTypes)
-    {
-        FileTypes = fileTypes.ToList();
-
-        AllSupportedExtensions = FileTypes.SelectMany(i => i.Extensions).ToArray();
-        PrimaryExtensions = FileTypes.Select(i => i.PrimaryExtension).ToArray();
-    }
-
-    public static string FixFileExtension(string pathWithOrWithoutExtension, IoFileType requestedType)
-    {
-        if (requestedType == null)
-            throw new ArgumentException("A valid filetype is required", nameof(requestedType));
-
-        var typeFromPath = ParseImageFormat(Path.GetExtension(pathWithOrWithoutExtension));
-        if (typeFromPath != null && typeFromPath == requestedType)
-            return pathWithOrWithoutExtension;
-        return AppendExtension(pathWithOrWithoutExtension, requestedType);
-    }
-
-    public static string AppendExtension(string path, IoFileType data)
-    {
-        string ext = data.Extensions.First();
-        string filename = Path.GetFileName(path);
-        if (filename.Length + ext.Length > 255)
-            filename = filename.Substring(0, 255 - ext.Length);
-        filename += ext;
-        return Path.Combine(Path.GetDirectoryName(path), filename);
-    }
-
-    public static bool IsSupported(string path)
-    {
-        var ext = Path.GetExtension(path.ToLower());
-        if (string.IsNullOrEmpty(ext))
-        {
-            ext = $".{path.ToLower()}";
-        }
-
-        return IsExtensionSupported(ext);
-    }
-
-    public static bool IsExtensionSupported(string fileExtension)
-    {
-        return AllSupportedExtensions.Contains(fileExtension);
-    }
-    public static IoFileType ParseImageFormat(string extension)
-    {
-        var allExts = FileTypes;
-        var fileData = allExts.SingleOrDefault(i => i.Extensions.Contains(extension));
-        return fileData;
-    }
-
-    public static List<IoFileType> GetAllSupportedFileTypes(FileTypeDialogDataSet.SetKind setKind)
-    {
-        var allExts = FileTypes.Where(x => setKind.HasFlag(x.SetKind)).ToList();
-        return allExts;
-    }
-
-    public static List<FilePickerFileType> BuildSaveFilter(FileTypeDialogDataSet.SetKind setKind = FileTypeDialogDataSet.SetKind.Any)
-    {
-        var allSupportedExtensions = GetAllSupportedFileTypes(setKind);
-        var filter = allSupportedExtensions.Select(i => i.SaveFilter).ToList();
-
-        return filter;
-    }
-
-    public static IoFileType GetSaveFileType(FileTypeDialogDataSet.SetKind setKind, IStorageFile file)
-    {
-        var allSupportedExtensions = GetAllSupportedFileTypes(setKind);
-
-        if (file is null)
-            return null;
-
-        string extension = Path.GetExtension(file.Path.LocalPath);
-        return allSupportedExtensions.Single(i => i.Extensions.Contains(extension));
-    }
-
-    public static List<FilePickerFileType> BuildOpenFilter()
-    {
-        var any = new FileTypeDialogDataSet(FileTypeDialogDataSet.SetKind.Any).GetFormattedTypes(true);
-        return any.ToList();
-    }
-}

+ 0 - 56
src/PixiEditor.AvaloniaUI/Helpers/SurfaceHelpers.cs

@@ -1,56 +0,0 @@
-using Avalonia.Media.Imaging;
-using ChunkyImageLib;
-using PixiEditor.AvaloniaUI.Helpers.Extensions;
-using PixiEditor.DrawingApi.Core;
-using PixiEditor.DrawingApi.Core.Numerics;
-using PixiEditor.DrawingApi.Core.Surfaces.ImageData;
-using PixiEditor.Numerics;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-public static class SurfaceHelpers
-{
-    public static Surface FromBitmap(Bitmap original)
-    {
-        if(original.Format == null) throw new ArgumentException("Bitmap format must be non-null");
-
-        ColorType color = original.Format.Value.ToColorType(out AlphaType alpha);
-        if (original.PixelSize.Width <= 0 || original.PixelSize.Height <= 0)
-            throw new ArgumentException("Surface dimensions must be non-zero");
-
-        int stride = (original.PixelSize.Width * original.Format.Value.BitsPerPixel + 7) / 8;
-        byte[] pixels = original.ExtractPixels();
-
-        Surface surface = new Surface(new VecI(original.PixelSize.Width, original.PixelSize.Height));
-        surface.DrawBytes(surface.Size, pixels, color, alpha);
-        return surface;
-    }
-
-    public static WriteableBitmap ToWriteableBitmap(this Surface surface)
-    {
-        WriteableBitmap result = WriteableBitmapUtility.CreateBitmap(surface.Size);
-        using var framebuffer = result.Lock();
-        var dirty = new RectI(0, 0, surface.Size.X, surface.Size.Y);
-        framebuffer.WritePixels(dirty, ToByteArray(surface));
-        //result.AddDirtyRect(dirty); //TODO: Look at this later, no DirtyRect in Avalonia
-        return result;
-    }
-
-    public static unsafe byte[] ToByteArray(this Surface surface, ColorType colorType = ColorType.Bgra8888, AlphaType alphaType = AlphaType.Premul)
-    {
-        int width = surface.Size.X;
-        int height = surface.Size.Y;
-        var imageInfo = new ImageInfo(width, height, colorType, alphaType, ColorSpace.CreateSrgb());
-
-        byte[] buffer = new byte[width * height * imageInfo.BytesPerPixel];
-        fixed (void* pointer = buffer)
-        {
-            if (!surface.DrawingSurface.ReadPixels(imageInfo, new IntPtr(pointer), imageInfo.RowBytes, 0, 0))
-            {
-                throw new InvalidOperationException("Could not read surface into buffer");
-            }
-        }
-
-        return buffer;
-    }
-}

+ 0 - 10
src/PixiEditor.AvaloniaUI/Helpers/UI/ExecutionTrigger.cs

@@ -1,10 +0,0 @@
-namespace PixiEditor.AvaloniaUI.Helpers.UI;
-
-internal class ExecutionTrigger<T>
-{
-    public event EventHandler<T> Triggered;
-    public void Execute(object sender, T args)
-    {
-        Triggered?.Invoke(sender, args);
-    }
-}

+ 0 - 20
src/PixiEditor.AvaloniaUI/Helpers/UI/TreeViewItemHelper.cs

@@ -1,20 +0,0 @@
-using Avalonia;
-using Avalonia.Controls;
-
-namespace PixiEditor.AvaloniaUI.Helpers.UI;
-
-internal static class TreeViewItemHelper
-{
-    public static GridLength GetIndent(AvaloniaObject obj)
-    {
-        return obj.GetValue(IndentProperty);
-    }
-
-    public static void SetIndent(AvaloniaObject obj, GridLength value)
-    {
-        obj.SetValue(IndentProperty, value);
-    }
-
-    public static readonly AttachedProperty<GridLength> IndentProperty =
-        AvaloniaProperty.RegisterAttached<AvaloniaObject, GridLength>("Indent", typeof(TreeViewItemHelper), new GridLength(0));
-}

+ 0 - 39
src/PixiEditor.AvaloniaUI/Helpers/VersionHelpers.cs

@@ -1,39 +0,0 @@
-using System.Reflection;
-using System.Text;
-
-namespace PixiEditor.AvaloniaUI.Helpers;
-
-internal static class VersionHelpers
-{
-    public static Version GetCurrentAssemblyVersion() => Assembly.GetExecutingAssembly().GetName().Version;
-
-    public static string GetCurrentAssemblyVersion(Func<Version, string> toString) => toString(GetCurrentAssemblyVersion());
-
-    public static string GetCurrentAssemblyVersionString(bool moreSpecific = false)
-    {
-        StringBuilder builder = new(GetCurrentAssemblyVersion().ToString());
-
-#if DEVRELEASE
-        builder.Append(" Dev Build");
-        return builder.ToString();
-#elif MSIX_DEBUG
-        builder.Append(" MSIX Debug Build");
-        return builder.ToString();
-#elif DEBUG
-        builder.Append(" Debug Build");
-        return builder.ToString();
-#endif
-
-        if (!moreSpecific)
-            return builder.ToString();
-
-#if STEAM
-        builder.Append(" Steam Build");
-#elif MSIX
-        builder.Append(" MSIX Build");
-#elif RELEASE
-        builder.Append(" Release Build");
-#endif
-        return builder.ToString();
-    }
-}

BIN
src/PixiEditor.AvaloniaUI/Images/CheckerTile.png


BIN
src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Layer/ToggleMask.png


BIN
src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Layer/ToggleVisible.png


BIN
src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Links/OpenDocumentation.png


BIN
src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Links/OpenRepository.png


BIN
src/PixiEditor.AvaloniaUI/Images/Commands/PixiEditor/Search/Toggle.png


BIN
src/PixiEditor.AvaloniaUI/Images/DiagonalRed.png


BIN
src/PixiEditor.AvaloniaUI/Images/Download.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/ar.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/cs.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/de.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/en.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/es.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/hu.png


BIN
src/PixiEditor.AvaloniaUI/Images/LanguageFlags/it.png


Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott