From 193bb60caa89a46458f321b00f7c839c2274bff4 Mon Sep 17 00:00:00 2001 From: Syping Date: Sat, 21 Jul 2018 18:33:08 +0200 Subject: [PATCH] image overwriter improved --- .travis.yml | 10 ---- ImportDialog.cpp | 64 +++++++++++++++++++- ImportDialog.h | 4 ++ PictureDialog.cpp | 51 ++++++++++++---- SnapmaticWidget.cpp | 40 +++++++++++-- res/gta5sync.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_de.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_en_US.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_fr.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_ru.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_uk.ts | 135 +++++++++++++++++++++++------------------- res/gta5sync_zh_TW.ts | 135 +++++++++++++++++++++++------------------- 12 files changed, 658 insertions(+), 456 deletions(-) diff --git a/.travis.yml b/.travis.yml index 55de114..ec1af1f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,22 +8,12 @@ service: matrix: include: - - env: - - BUILD_SCRIPT=debian_docker.sh - - RELEASE_LABEL="Debian 32-Bit Package" - - DEBIAN_VERSION=stretch - - DOCKER_USER=i386 - - APT_INSTALL=clang - env: - BUILD_SCRIPT=debian_docker.sh - RELEASE_LABEL="Debian 64-Bit Package" - DEBIAN_VERSION=stretch - DOCKER_USER=amd64 - APT_INSTALL=clang - - env: - - BUILD_SCRIPT=windows_docker.sh - - QT_SELECT=qt5-i686-w64-mingw32 - - RELEASE_LABEL="Windows 32-Bit Portable" - env: - BUILD_SCRIPT=windows_docker.sh - QT_SELECT=qt5-x86_64-w64-mingw32 diff --git a/ImportDialog.cpp b/ImportDialog.cpp index ea8bf25..bb9ebda 100644 --- a/ImportDialog.cpp +++ b/ImportDialog.cpp @@ -55,6 +55,7 @@ ImportDialog::ImportDialog(QString profileName, QWidget *parent) : ui->cmdOK->setDefault(true); ui->cmdOK->setFocus(); importAgreed = false; + settingsLocked = false; watermarkAvatar = true; watermarkPicture = false; insideAvatarZone = false; @@ -262,16 +263,31 @@ void ImportDialog::cropPicture() qreal screenRatio = AppEnv::screenRatio(); QDialog cropDialog(this); +#if QT_VERSION >= 0x050000 + cropDialog.setObjectName(QStringLiteral("CropDialog")); +#else + cropDialog.setObjectName(QString::fromUtf8("CropDialog")); +#endif cropDialog.setWindowTitle(tr("Crop Picture...")); cropDialog.setWindowFlags(cropDialog.windowFlags()^Qt::WindowContextHelpButtonHint); cropDialog.setModal(true); QVBoxLayout cropLayout; +#if QT_VERSION >= 0x050000 + cropLayout.setObjectName(QStringLiteral("CropLayout")); +#else + cropLayout.setObjectName(QString::fromUtf8("CropLayout")); +#endif cropLayout.setContentsMargins(0, 0, 0, 0); cropLayout.setSpacing(0); cropDialog.setLayout(&cropLayout); ImageCropper imageCropper(&cropDialog); +#if QT_VERSION >= 0x050000 + imageCropper.setObjectName(QStringLiteral("ImageCropper")); +#else + imageCropper.setObjectName(QString::fromUtf8("ImageCropper")); +#endif imageCropper.setBackgroundColor(Qt::black); imageCropper.setCroppingRectBorderColor(QColor(255, 255, 255, 127)); imageCropper.setImage(QPixmap::fromImage(workImage, Qt::AutoColor)); @@ -280,9 +296,19 @@ void ImportDialog::cropPicture() cropLayout.addWidget(&imageCropper); QHBoxLayout buttonLayout; +#if QT_VERSION >= 0x050000 + cropLayout.setObjectName(QStringLiteral("ButtonLayout")); +#else + cropLayout.setObjectName(QString::fromUtf8("ButtonLayout")); +#endif cropLayout.addLayout(&buttonLayout); QPushButton cropButton(&cropDialog); +#if QT_VERSION >= 0x050000 + cropButton.setObjectName(QStringLiteral("CropButton")); +#else + cropButton.setObjectName(QString::fromUtf8("CropButton")); +#endif cropButton.setMinimumSize(0, 40 * screenRatio); cropButton.setText(tr("&Crop")); cropButton.setToolTip(tr("Crop Picture")); @@ -292,7 +318,7 @@ void ImportDialog::cropPicture() cropDialog.show(); cropDialog.setFixedSize(cropDialog.sizeHint()); - if (cropDialog.exec() == true) + if (cropDialog.exec() == QDialog::Accepted) { QImage *croppedImage = new QImage(imageCropper.cropImage().toImage()); setImage(croppedImage); @@ -413,6 +439,37 @@ void ImportDialog::setImage(QImage *image_) delete image_; } processImage(); + lockSettings(false); +} + +void ImportDialog::lockSettings(bool lock) +{ + ui->cbAvatar->setDisabled(lock); + ui->cbForceAvatarColour->setDisabled(lock); + ui->cbIgnore->setDisabled(lock); + ui->cbStretch->setDisabled(lock); + ui->cbWatermark->setDisabled(lock); + ui->cmdBackgroundChange->setDisabled(lock); + ui->cmdBackgroundWipe->setDisabled(lock); + ui->cmdColourChange->setDisabled(lock); + ui->labBackgroundImage->setDisabled(lock); + ui->labColour->setDisabled(lock); + ui->gbSettings->setDisabled(lock); + ui->gbBackground->setDisabled(lock); + ui->cmdOK->setDisabled(lock); + settingsLocked = lock; +} + +void ImportDialog::enableOverwriteMode() +{ + setWindowTitle(QApplication::translate("ImageEditorDialog", "Overwrite Image...")); + ui->cmdOK->setText(QApplication::translate("ImageEditorDialog", "&Overwrite")); + ui->cmdOK->setToolTip(QApplication::translate("ImageEditorDialog", "Apply changes")); + ui->cmdCancel->setText(QApplication::translate("ImageEditorDialog", "&Close")); + ui->cmdCancel->setToolTip(QApplication::translate("ImageEditorDialog", "Discard changes")); + ui->cmdCancel->setDefault(true); + ui->cmdCancel->setFocus(); + lockSettings(true); } bool ImportDialog::isImportAgreed() @@ -420,6 +477,11 @@ bool ImportDialog::isImportAgreed() return importAgreed; } +bool ImportDialog::areSettingsLocked() +{ + return settingsLocked; +} + QString ImportDialog::getImageTitle() { return imageTitle; diff --git a/ImportDialog.h b/ImportDialog.h index 7d35d49..839632f 100644 --- a/ImportDialog.h +++ b/ImportDialog.h @@ -36,7 +36,10 @@ public: QImage image(); QString getImageTitle(); void setImage(QImage *image); + void lockSettings(bool lock); + void enableOverwriteMode(); bool isImportAgreed(); + bool areSettingsLocked(); private slots: void processImage(); @@ -69,6 +72,7 @@ private: bool watermarkPicture; bool watermarkAvatar; bool watermarkBlock; + bool settingsLocked; bool importAgreed; int snapmaticResolutionLW; int snapmaticResolutionLH; diff --git a/PictureDialog.cpp b/PictureDialog.cpp index cc2cf07..5c29b60 100644 --- a/PictureDialog.cpp +++ b/PictureDialog.cpp @@ -27,6 +27,7 @@ #include "SnapmaticEditor.h" #include "StandardPaths.h" #include "PictureExport.h" +#include "ImportDialog.h" #include "StringParser.h" #include "GlobalString.h" #include "UiModLabel.h" @@ -940,25 +941,49 @@ void PictureDialog::editSnapmaticProperties() void PictureDialog::editSnapmaticImage() { - SnapmaticPicture *picture = smpic; - ImageEditorDialog *imageEditor; + QImage *currentImage = new QImage(smpic->getImage()); + ImportDialog *importDialog; if (rqFullscreen && fullscreenWidget != nullptr) { - imageEditor = new ImageEditorDialog(picture, profileName, fullscreenWidget); + importDialog = new ImportDialog(profileName, fullscreenWidget); } else { - imageEditor = new ImageEditorDialog(picture, profileName, this); + importDialog = new ImportDialog(profileName, this); } - imageEditor->setWindowIcon(windowIcon()); - imageEditor->setModal(true); -#ifndef Q_OS_ANDROID - imageEditor->show(); -#else - imageEditor->showMaximized(); -#endif - imageEditor->exec(); - delete imageEditor; + importDialog->setWindowIcon(windowIcon()); + importDialog->setImage(currentImage); + importDialog->enableOverwriteMode(); + importDialog->setModal(true); + importDialog->exec(); + if (importDialog->isImportAgreed()) + { + const QByteArray previousPicture = smpic->getPictureStream(); + bool success = smpic->setImage(importDialog->image()); + if (success) + { + QString currentFilePath = smpic->getPictureFilePath(); + QString originalFilePath = smpic->getOriginalPictureFilePath(); + QString backupFileName = originalFilePath % ".bak"; + if (!QFile::exists(backupFileName)) + { + QFile::copy(currentFilePath, backupFileName); + } + if (!smpic->exportPicture(currentFilePath)) + { + smpic->setPictureStream(previousPicture); + QMessageBox::warning(this, QApplication::translate("ImageEditorDialog", "Snapmatic Image Editor"), QApplication::translate("ImageEditorDialog", "Patching of Snapmatic Image failed because of I/O Error")); + return; + } + smpic->emitCustomSignal("PictureUpdated"); + } + else + { + QMessageBox::warning(this, QApplication::translate("ImageEditorDialog", "Snapmatic Image Editor"), QApplication::translate("ImageEditorDialog", "Patching of Snapmatic Image failed because of Image Error")); + return; + } + } + delete importDialog; } void PictureDialog::editSnapmaticRawJson() diff --git a/SnapmaticWidget.cpp b/SnapmaticWidget.cpp index d18c006..5785219 100644 --- a/SnapmaticWidget.cpp +++ b/SnapmaticWidget.cpp @@ -27,6 +27,7 @@ #include "PictureDialog.h" #include "PictureExport.h" #include "StringParser.h" +#include "ImportDialog.h" #include "AppEnv.h" #include "config.h" #include @@ -320,11 +321,40 @@ void SnapmaticWidget::editSnapmaticRawJson() void SnapmaticWidget::editSnapmaticImage() { - ImageEditorDialog *imageEditor = new ImageEditorDialog(smpic, profileName, this); - imageEditor->setModal(true); - imageEditor->show(); - imageEditor->exec(); - delete imageEditor; + QImage *currentImage = new QImage(smpic->getImage()); + ImportDialog *importDialog = new ImportDialog(profileName, this); + importDialog->setImage(currentImage); + importDialog->enableOverwriteMode(); + importDialog->setModal(true); + importDialog->exec(); + if (importDialog->isImportAgreed()) + { + const QByteArray previousPicture = smpic->getPictureStream(); + bool success = smpic->setImage(importDialog->image()); + if (success) + { + QString currentFilePath = smpic->getPictureFilePath(); + QString originalFilePath = smpic->getOriginalPictureFilePath(); + QString backupFileName = originalFilePath % ".bak"; + if (!QFile::exists(backupFileName)) + { + QFile::copy(currentFilePath, backupFileName); + } + if (!smpic->exportPicture(currentFilePath)) + { + smpic->setPictureStream(previousPicture); + QMessageBox::warning(this, QApplication::translate("ImageEditorDialog", "Snapmatic Image Editor"), QApplication::translate("ImageEditorDialog", "Patching of Snapmatic Image failed because of I/O Error")); + return; + } + smpic->emitCustomSignal("PictureUpdated"); + } + else + { + QMessageBox::warning(this, QApplication::translate("ImageEditorDialog", "Snapmatic Image Editor"), QApplication::translate("ImageEditorDialog", "Patching of Snapmatic Image failed because of Image Error")); + return; + } + } + delete importDialog; } void SnapmaticWidget::openMapViewer() diff --git a/res/gta5sync.ts b/res/gta5sync.ts index 4a8768a..4f2b2d6 100644 --- a/res/gta5sync.ts +++ b/res/gta5sync.ts @@ -167,6 +167,7 @@ Pictures and Savegames ImageEditorDialog + Overwrite Image... @@ -182,37 +183,49 @@ Pictures and Savegames + Apply changes + &Overwrite + Discard changes + &Close + + + + Snapmatic Image Editor + + Patching of Snapmatic Image failed because of I/O Error + + Patching of Snapmatic Image failed because of Image Error @@ -252,8 +265,8 @@ Pictures and Savegames - - + + Background Colour: <span style="color: %1">%1</span> @@ -270,8 +283,8 @@ Pictures and Savegames - - + + Background Image: @@ -326,67 +339,67 @@ Pictures and Savegames - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! - + Custom Picture Custom Picture Description in SC, don't use Special Character! - + Crop Picture... - + &Crop - + Crop Picture - + Snapmatic Avatar Zone - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! - + Select Colour... - + Background Image: %1 - + File Background Image: File @@ -846,80 +859,80 @@ Y: %2 - + Export as &Picture... - + Export as &Snapmatic... - + &Edit Properties... - + &Overwrite Image... - + Open &Map Viewer... - + Open &JSON Editor... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate - - + + Snapmatic Picture Viewer - - + + Failed at %1 - - + + No Players - - + + No Crew - + Unknown Location - + Avatar Preview Mode Press 1 for Default View @@ -1128,8 +1141,8 @@ Press 1 for Default View - - + + @@ -1140,12 +1153,12 @@ Press 1 for Default View - - - - - - + + + + + + @@ -1165,16 +1178,16 @@ Press 1 for Default View - - + + All image files (%1) - - + + All files (**) @@ -1182,16 +1195,16 @@ Press 1 for Default View - - + + Can't import %1 because file can't be open - - + + Can't import %1 because file can't be parsed properly @@ -1701,9 +1714,9 @@ Press 1 for Default View - + - + Snapmatic Properties @@ -1784,9 +1797,9 @@ Press 1 for Default View - + - + Patching of Snapmatic Properties failed because of I/O Error @@ -1978,8 +1991,8 @@ Press 1 for Default View - - + + Delete picture @@ -2039,22 +2052,22 @@ Press 1 for Default View - + Are you sure to delete %1 from your Snapmatic pictures? - + Failed at deleting %1 from your Snapmatic pictures - + Failed to hide %1 In-game from your Snapmatic pictures - + Failed to show %1 In-game from your Snapmatic pictures @@ -2255,14 +2268,14 @@ Press 1 for Default View - + Show In-game - + Hide In-game diff --git a/res/gta5sync_de.ts b/res/gta5sync_de.ts index 3360bb0..1a8ec1d 100644 --- a/res/gta5sync_de.ts +++ b/res/gta5sync_de.ts @@ -178,11 +178,16 @@ Snapmatic Bilder und Spielständen + + + + Snapmatic Image Editor Snapmatic Bild Editor + Overwrite Image... Bild überschreiben... @@ -198,31 +203,39 @@ Snapmatic Bilder und Spielständen + Apply changes Änderungen übernehmen + &Overwrite &Überschreiben + Discard changes Änderungen verwerfen + &Close S&chließen + + Patching of Snapmatic Image failed because of I/O Error Patchen von Snapmatic Bild fehlgeschlagen wegen I/O Fehler + + Patching of Snapmatic Image failed because of Image Error Patchen von Snapmatic Bild fehlgeschlagen wegen Bild Fehler @@ -262,8 +275,8 @@ Snapmatic Bilder und Spielständen - - + + Background Colour: <span style="color: %1">%1</span> Hintergrundfarbe: <span style="color: %1">%1</span> @@ -289,7 +302,7 @@ Snapmatic Bilder und Spielständen Hintergrundbild entfernen - + Background Image: %1 Hintergrundbild: %1 @@ -335,69 +348,69 @@ Snapmatic Bilder und Spielständen - - + + Background Image: Hintergrundbild: - + &Import new Picture... Neues Bild &importieren... - + &Crop Picture... Bild zu&schneiden... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! Eigener Avatar - + Custom Picture Custom Picture Description in SC, don't use Special Character! Eigenes Bild - + Crop Picture... Bild zuschneiden... - + &Crop Zu&schneiden - + Crop Picture Bild zuschneiden - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! Bist du sicher ein Quadrat Bild außerhalb der Avatar Zone zu verwenden? Wenn du es als Avatar verwenden möchtest wird es abgetrennt! - + Snapmatic Avatar Zone Snapmatic Avatar Zone - + Select Colour... Farbe auswählen... - + File Background Image: File Datei @@ -867,37 +880,37 @@ Y: %2 Exportieren - + Export as &Picture... Als &Bild exportieren... - + Export as &Snapmatic... Als &Snapmatic exportieren... - + &Edit Properties... Eigenschaften bearb&eiten... - + &Overwrite Image... Bild &überschreiben... - + Open &Map Viewer... &Kartenansicht öffnen... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -906,39 +919,39 @@ Taste 2 - Overlay umschalten Pfeiltasten - Navigieren - - + + Snapmatic Picture Viewer Snapmatic Bildansicht - - + + Failed at %1 Fehlgeschlagen beim %1 - - + + No Crew Keine Crew - - + + No Players Keine Spieler - + Avatar Preview Mode Press 1 for Default View Avatar Vorschaumodus Drücke 1 für Standardmodus - + Unknown Location Unbekannter Standort @@ -1040,7 +1053,7 @@ Drücke 1 für Standardmodus Keine gültige Datei wurde ausgewählt - + Open &JSON Editor... &JSON Editor öffnen... @@ -1155,8 +1168,8 @@ Drücke 1 für Standardmodus - - + + @@ -1167,12 +1180,12 @@ Drücke 1 für Standardmodus - - - - - - + + + + + + @@ -1209,16 +1222,16 @@ Drücke 1 für Standardmodus - - + + All image files (%1) Alle Bilddateien (%1) - - + + All files (**) @@ -1253,16 +1266,16 @@ Drücke 1 für Standardmodus - - + + Can't import %1 because file can't be open Kann %1 nicht importieren weil die Datei nicht geöffnet werden kann - - + + Can't import %1 because file can't be parsed properly Kann %1 nicht importieren weil die Datei nicht richtig gelesen werden kann @@ -1726,9 +1739,9 @@ Drücke 1 für Standardmodus - + - + Snapmatic Properties Snapmatic Eigenschaften @@ -1867,9 +1880,9 @@ Drücke 1 für Standardmodus - + - + Patching of Snapmatic Properties failed because of I/O Error Patchen von Snapmatic Eigenschaften fehlgeschlagen wegen I/O Fehler @@ -1993,23 +2006,23 @@ Drücke 1 für Standardmodus - - + + Delete picture Bild löschen - + Are you sure to delete %1 from your Snapmatic pictures? Bist du sicher %1 von deine Snapmatic Bilder zu löschen? - + Failed to hide %1 In-game from your Snapmatic pictures Fehlgeschlagen beim Ausblenden von %1 im Spiel von deinen Snapmatic Bildern - + Failed to show %1 In-game from your Snapmatic pictures Fehlgeschlagen beim Anzeigen von %1 im Spiel von deinen Snapmatic Bildern @@ -2079,7 +2092,7 @@ Drücke 1 für Standardmodus Bild exportieren - + Failed at deleting %1 from your Snapmatic pictures Fehlgeschlagen beim Löschen von %1 von deinen Snapmatic Bildern @@ -2305,14 +2318,14 @@ Drücke 1 für Standardmodus - + Show In-game Im Spiel anzeigen - + Hide In-game Im Spiel ausblenden diff --git a/res/gta5sync_en_US.ts b/res/gta5sync_en_US.ts index d7c7694..fa39d1b 100644 --- a/res/gta5sync_en_US.ts +++ b/res/gta5sync_en_US.ts @@ -168,11 +168,16 @@ Pictures and Savegames + + + + Snapmatic Image Editor + Overwrite Image... @@ -188,31 +193,39 @@ Pictures and Savegames + Apply changes + &Overwrite + Discard changes + &Close + + Patching of Snapmatic Image failed because of I/O Error + + Patching of Snapmatic Image failed because of Image Error @@ -226,8 +239,8 @@ Pictures and Savegames - - + + Background Colour: <span style="color: %1">%1</span> Background Color: <span style="color: %1">%1</span> @@ -269,7 +282,7 @@ Pictures and Savegames - + Background Image: %1 @@ -325,68 +338,68 @@ Pictures and Savegames - - + + Background Image: - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! - + Custom Picture Custom Picture Description in SC, don't use Special Character! - + Crop Picture... - + &Crop - + Crop Picture - + Snapmatic Avatar Zone - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! - + Select Colour... Select Color... - + File Background Image: File @@ -846,74 +859,74 @@ Y: %2 - + Export as &Picture... - + Export as &Snapmatic... - + &Overwrite Image... - + &Edit Properties... - + Open &Map Viewer... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate - - + + Snapmatic Picture Viewer - - + + Failed at %1 - - + + No Players - - + + No Crew - + Unknown Location - + Avatar Preview Mode Press 1 for Default View @@ -1022,7 +1035,7 @@ Press 1 for Default View - + Open &JSON Editor... @@ -1148,8 +1161,8 @@ Press 1 for Default View - - + + @@ -1160,12 +1173,12 @@ Press 1 for Default View - - - - - - + + + + + + @@ -1208,16 +1221,16 @@ Press 1 for Default View - - + + All image files (%1) - - + + All files (**) @@ -1257,16 +1270,16 @@ Press 1 for Default View - - + + Can't import %1 because file can't be open - - + + Can't import %1 because file can't be parsed properly @@ -1701,9 +1714,9 @@ Press 1 for Default View - + - + Snapmatic Properties @@ -1836,9 +1849,9 @@ Press 1 for Default View - + - + Patching of Snapmatic Properties failed because of I/O Error @@ -1978,8 +1991,8 @@ Press 1 for Default View - - + + Delete picture @@ -2039,22 +2052,22 @@ Press 1 for Default View - + Are you sure to delete %1 from your Snapmatic pictures? - + Failed at deleting %1 from your Snapmatic pictures - + Failed to hide %1 In-game from your Snapmatic pictures - + Failed to show %1 In-game from your Snapmatic pictures @@ -2280,14 +2293,14 @@ Press 1 for Default View - + Show In-game - + Hide In-game diff --git a/res/gta5sync_fr.ts b/res/gta5sync_fr.ts index abf9beb..c2ff2fe 100644 --- a/res/gta5sync_fr.ts +++ b/res/gta5sync_fr.ts @@ -178,11 +178,16 @@ et les fichiers de sauvegarde de Grand Theft Auto V + + + + Snapmatic Image Editor Éditeur d'images Snapmatic + Overwrite Image... Remplacer l'image... @@ -198,31 +203,39 @@ et les fichiers de sauvegarde de Grand Theft Auto V + Apply changes Appliquer les changements + &Overwrite &Remplacer + Discard changes Annuler les changements + &Close &Fermer + + Patching of Snapmatic Image failed because of I/O Error Échec du patch Snapmatic : I/O Error + + Patching of Snapmatic Image failed because of Image Error Échec du patch Snapmatic : Image Error @@ -262,8 +275,8 @@ et les fichiers de sauvegarde de Grand Theft Auto V - - + + Background Colour: <span style="color: %1">%1</span> Couleur de fond : <span style="color: %1">%1</span> @@ -289,7 +302,7 @@ et les fichiers de sauvegarde de Grand Theft Auto V - + Background Image: %1 Image de fond : %1 @@ -335,69 +348,69 @@ et les fichiers de sauvegarde de Grand Theft Auto V - - + + Background Image: Image de fond : - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! Avatar personnalisé - + Custom Picture Custom Picture Description in SC, don't use Special Character! Image personnalisé - + Crop Picture... - + &Crop - + Crop Picture - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! Êtes-vous sûr d'utiliser une image carrée en dehors de la Zone d'Avatar ? Si vous l'utilisez comme Avatar, l'image sera détachée ! - + Snapmatic Avatar Zone Zone d'Avatar Snapmatic - + Select Colour... Choisir une couleur... - + File Background Image: File Fichier @@ -947,37 +960,37 @@ Y : %2 Fichier invalide - + Export as &Picture... Exporter comme &image... - + Export as &Snapmatic... Exporter comme &Snapmatic... - + &Overwrite Image... &Remplacer l'image... - + &Edit Properties... Modifier les &propriétés... - + Open &Map Viewer... Ouvrir la &Visionneuse de Carte... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -986,39 +999,39 @@ Touche 2 - Activer/désactiver l'overlay Touches fléchées - Naviguer - - + + Snapmatic Picture Viewer Visionneuse de photo Snapmatic - - + + Failed at %1 Echec de %1 - - + + No Crew Aucun crew - - + + No Players Aucun joueurs - + Avatar Preview Mode Press 1 for Default View Mode Aperçu Avatar Appuyer sur 1 pour le mode par défaut - + Unknown Location Emplacement inconnu @@ -1040,7 +1053,7 @@ Appuyer sur 1 pour le mode par défaut Échec de l'export de la photo Snapmatic - + Open &JSON Editor... Ouvrir l'éditeur &JSON... @@ -1166,8 +1179,8 @@ Appuyer sur 1 pour le mode par défaut - - + + @@ -1178,12 +1191,12 @@ Appuyer sur 1 pour le mode par défaut - - - - - - + + + + + + @@ -1215,16 +1228,16 @@ Appuyer sur 1 pour le mode par défaut - - + + All image files (%1) Toutes les images (%1) - - + + All files (**) @@ -1271,16 +1284,16 @@ Appuyer sur 1 pour le mode par défaut - - + + Can't import %1 because file can't be open Impossible d'importer %1, le fichier ne peut pas être ouvert - - + + Can't import %1 because file can't be parsed properly Impossible d'importer %1, le fichier ne peut pas être parsé correctement @@ -1727,9 +1740,9 @@ Appuyer sur 1 pour le mode par défaut - + - + Snapmatic Properties Propriétés Snapmatic @@ -1870,9 +1883,9 @@ Appuyer sur 1 pour le mode par défaut - + - + Patching of Snapmatic Properties failed because of I/O Error La modification des propriétés Snapmatic a échoué : erreur d'entrée/sortie @@ -2006,8 +2019,8 @@ Appuyer sur 1 pour le mode par défaut - - + + Delete picture Supprimer la photo @@ -2017,22 +2030,22 @@ Appuyer sur 1 pour le mode par défaut Supprimer - + Are you sure to delete %1 from your Snapmatic pictures? Supprimer %1 ? - + Failed at deleting %1 from your Snapmatic pictures Impossible de supprimer %1 - + Failed to hide %1 In-game from your Snapmatic pictures %1 n'a pas pu être rendu invisible en jeu - + Failed to show %1 In-game from your Snapmatic pictures %1 n'a pas pu être rendu visible en jeu @@ -2308,14 +2321,14 @@ Appuyer sur 1 pour le mode par défaut - + Show In-game Visible en jeu - + Hide In-game Invisible en jeu diff --git a/res/gta5sync_ru.ts b/res/gta5sync_ru.ts index 48d7957..97e3e63 100644 --- a/res/gta5sync_ru.ts +++ b/res/gta5sync_ru.ts @@ -180,11 +180,16 @@ Pictures and Savegames + + + + Snapmatic Image Editor Редактор картинок Snapmatic + Overwrite Image... Перезаписать картинку... @@ -200,31 +205,39 @@ Pictures and Savegames + Apply changes Применить изменения + &Overwrite &Перезаписать + Discard changes Отвергнуть изменения + &Close &Закрыть + + Patching of Snapmatic Image failed because of I/O Error Не удалось изменить картинку Snapmatic из-за ошибки ввода-вывода + + Patching of Snapmatic Image failed because of Image Error Не удалось изменить картинку Snapmatic из-за ошибки Image Error @@ -264,8 +277,8 @@ Pictures and Savegames - - + + Background Colour: <span style="color: %1">%1</span> Цвет фона: <span style="color: %1">%1</span> @@ -291,7 +304,7 @@ Pictures and Savegames - + Background Image: %1 Фоновая картинка: %1 @@ -339,68 +352,68 @@ Pictures and Savegames - - + + Background Image: Фоновая картинка: - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! Свой Аватар - + Custom Picture Custom Picture Description in SC, don't use Special Character! Своя Картинка - + Crop Picture... - + &Crop - + Crop Picture - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! Ты точно хочешь использовать квадратное изображение вне зоны аватарки? Если это аватар, то изображение будет обрезано! - + Snapmatic Avatar Zone Зона Snapmatic Аватарки - + Select Colour... Выбрать цвет... - + File Background Image: File Файл @@ -872,37 +885,37 @@ Y: %2 Экспортировать - + Export as &Picture... Экспортировать как &картинку... - + Export as &Snapmatic... Экспортировать как &Snapmatic... - + &Overwrite Image... &Перезаписать картинку... - + &Edit Properties... &Изменить свойства... - + Open &Map Viewer... Открыть &карту... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -911,39 +924,39 @@ Arrow Keys - Navigate Стрелки - Навигация - - + + Snapmatic Picture Viewer Просмотрщик фотографий Snapmatic - - + + Failed at %1 Ошибка при %1 - - + + No Crew Вне банды - - + + No Players Игроков нет - + Avatar Preview Mode Press 1 for Default View Режим просмотра аватарок Нажмите 1 для стандартного просмотра - + Unknown Location Неизвестное место @@ -1045,7 +1058,7 @@ Press 1 for Default View Картинки Snapmatic (PGTA*) - + Open &JSON Editor... Открыть &редактор JSON... @@ -1160,8 +1173,8 @@ Press 1 for Default View - - + + @@ -1172,12 +1185,12 @@ Press 1 for Default View - - - - - - + + + + + + @@ -1209,8 +1222,8 @@ Press 1 for Default View - - + + All files (**) @@ -1262,24 +1275,24 @@ Press 1 for Default View - - + + All image files (%1) Все файлы изображений (%1) - - + + Can't import %1 because file can't be open Не удалось открыть %1, файл не может быть открыт - - + + Can't import %1 because file can't be parsed properly Не получилось импортировать %1, файл не может быть правильно обработан @@ -1733,9 +1746,9 @@ Press 1 for Default View - + - + Snapmatic Properties Свойства Snapmatic @@ -1874,9 +1887,9 @@ Press 1 for Default View - + - + Patching of Snapmatic Properties failed because of I/O Error Не удалось измененить свойства Snapmatic из-за проблемы ввода/вывода @@ -2005,28 +2018,28 @@ Press 1 for Default View - - + + Delete picture Удалить картинку - + Are you sure to delete %1 from your Snapmatic pictures? Уверены, что хотите удалить %1 из коллекции картинок Snapmatic? - + Failed at deleting %1 from your Snapmatic pictures Не удалось удалить %1 из колелкции картинок Snapmatic - + Failed to hide %1 In-game from your Snapmatic pictures Не удалось скрыть %1 из списка картинок Snapmatic в игре - + Failed to show %1 In-game from your Snapmatic pictures Не удалось показать %1 в списке картинок Snapmatic в игре @@ -2312,14 +2325,14 @@ Press 1 for Default View - + Show In-game Показывать в игре - + Hide In-game Скрыть в игре diff --git a/res/gta5sync_uk.ts b/res/gta5sync_uk.ts index 7b18b5f..25beeea 100644 --- a/res/gta5sync_uk.ts +++ b/res/gta5sync_uk.ts @@ -177,6 +177,7 @@ Pictures and Savegames ImageEditorDialog + Overwrite Image... Перезаписати зображення... @@ -192,37 +193,49 @@ Pictures and Savegames + Apply changes Застосувати зміни + &Overwrite &Перезаписати + Discard changes Скасувати зміни + &Close &Закрити + + + + Snapmatic Image Editor Редактор Snapmatic зображень + + Patching of Snapmatic Image failed because of I/O Error Виправлення Snapmatic зображення не вдалося через I/O Error + + Patching of Snapmatic Image failed because of Image Error Виправлення Snapmatic зображення не вдалося через помилку картинки @@ -262,8 +275,8 @@ Pictures and Savegames - - + + Background Colour: <span style="color: %1">%1</span> Фоновий колір: <span style="color: %1">%1</span> @@ -280,8 +293,8 @@ Pictures and Savegames - - + + Background Image: Фонове зображення: @@ -336,68 +349,68 @@ Pictures and Savegames &Скасувати - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! Користувацький Аватар - + Custom Picture Custom Picture Description in SC, don't use Special Character! Користувацьке Зображення - + Crop Picture... - + &Crop - + Crop Picture - + Snapmatic Avatar Zone Зона Snapmatic Аватару - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! Ви впевнені, що будете використовувати квадратне зображення поза зоною аватара? Якщо ви хочете використовувати його як Аватар, зображення буде відокремлено! - + Select Colour... Вибір кольору... - + Background Image: %1 Фонове зображення: %1 - + File Background Image: File Файл @@ -861,43 +874,43 @@ Y: %2 &Закрити - + Export as &Picture... Експортувати як &зображення... - + Export as &Snapmatic... Експортувати як &Snapmatic... - + &Edit Properties... &Змінити властивості... - + &Overwrite Image... &Перезаписати зображення... - + Open &Map Viewer... Відкрити &карту... - + Open &JSON Editor... Відкрити редактор &JSON... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -906,37 +919,37 @@ Arrow Keys - Navigate Стрілки - Навігація - - + + Snapmatic Picture Viewer Переглядач фотографій Snapmatic - - + + Failed at %1 Помилка на%1 - - + + No Players Гравців немає - - + + No Crew Банди немає - + Unknown Location Невідома локація - + Avatar Preview Mode Press 1 for Default View Режим для аватарок @@ -1146,8 +1159,8 @@ Press 1 for Default View - - + + @@ -1158,12 +1171,12 @@ Press 1 for Default View - - - - - - + + + + + + @@ -1183,16 +1196,16 @@ Press 1 for Default View - - + + All image files (%1) Файли зображень (%1) - - + + All files (**) @@ -1200,16 +1213,16 @@ Press 1 for Default View - - + + Can't import %1 because file can't be open Неможливо імпортувати %1, оскільки файл не може бути відкритий - - + + Can't import %1 because file can't be parsed properly Неможливо імпортувати %1, оскільки файл неможливо розібрати правильно @@ -1727,9 +1740,9 @@ Press 1 for Default View - + - + Snapmatic Properties Властивості Snapmatic @@ -1810,9 +1823,9 @@ Press 1 for Default View - + - + Patching of Snapmatic Properties failed because of I/O Error Змінити властивості Snapmatic не вдалося через I/O Помилку @@ -2004,8 +2017,8 @@ Press 1 for Default View - - + + Delete picture Видалити фото @@ -2065,22 +2078,22 @@ Press 1 for Default View &Зняти виділення усіх - + Are you sure to delete %1 from your Snapmatic pictures? Ви дійсно бажаєте видалити %1 з ваших Snapmatic фотографій? - + Failed at deleting %1 from your Snapmatic pictures Не вдалося видалити%1 з ваших Snapmatic фотографій - + Failed to hide %1 In-game from your Snapmatic pictures Не вдалося сховати %1 Snapmatic у грі - + Failed to show %1 In-game from your Snapmatic pictures Не вдалося показати %1 Snapmatic у грі @@ -2281,14 +2294,14 @@ Press 1 for Default View - + Show In-game Показати у грі - + Hide In-game Сховати у грі diff --git a/res/gta5sync_zh_TW.ts b/res/gta5sync_zh_TW.ts index 4dbd674..9b1f39e 100644 --- a/res/gta5sync_zh_TW.ts +++ b/res/gta5sync_zh_TW.ts @@ -176,6 +176,7 @@ Pictures and Savegames ImageEditorDialog + Overwrite Image... 修改圖片... @@ -191,37 +192,49 @@ Pictures and Savegames + Apply changes 套用變更 + &Overwrite 修改(&O) + Discard changes 捨棄變更 + &Close 關閉(&C) + + + + Snapmatic Image Editor Snapmatic 圖片編輯器 + + Patching of Snapmatic Image failed because of I/O Error I/O 錯誤,Snapmatic 圖片更新失敗 + + Patching of Snapmatic Image failed because of Image Error 圖片錯誤,Snapmatic 圖片更新失敗 @@ -261,8 +274,8 @@ Pictures and Savegames - - + + Background Colour: <span style="color: %1">%1</span> 背景顏色: <span style="color: %1">%1</span> @@ -279,8 +292,8 @@ Pictures and Savegames - - + + Background Image: 背景圖片: @@ -335,67 +348,67 @@ Pictures and Savegames 取消(&C) - + &Import new Picture... - + &Crop Picture... - + Custom Avatar Custom Avatar Description in SC, don't use Special Character! 自訂大頭貼 - + Custom Picture Custom Picture Description in SC, don't use Special Character! 自訂圖片 - + Crop Picture... - + &Crop - + Crop Picture - + Snapmatic Avatar Zone Snapmatic 大頭貼區域 - + Are you sure to use a square image outside of the Avatar Zone? When you want to use it as Avatar the image will be detached! 你確定要在大頭貼區域以外的地方使用方形圖片嗎? 作為大頭貼的圖片將被分離! - + Select Colour... 選擇顏色... - + Background Image: %1 背景圖片: %1 - + File Background Image: File 文件 @@ -859,43 +872,43 @@ Y: %2 關閉(&C) - + Export as &Picture... 匯出成圖片(&P)... - + Export as &Snapmatic... 匯出成 Snapmatic(&S)... - + &Edit Properties... 編輯屬性(&E) ... - + &Overwrite Image... 修改圖片(&O)... - + Open &Map Viewer... 開啟地圖檢視器(&M)... - + Open &JSON Editor... 開啟 JSON 編輯器(&J)... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -904,37 +917,37 @@ Arrow Keys - Navigate 方向鍵 - 導覽 - - + + Snapmatic Picture Viewer Snapmatic 圖片檢視器 - - + + Failed at %1 失敗: %1 - - + + No Players - - + + No Crew - + Unknown Location 未知地點 - + Avatar Preview Mode Press 1 for Default View 大頭貼預覽模式 @@ -1144,8 +1157,8 @@ Press 1 for Default View - - + + @@ -1156,12 +1169,12 @@ Press 1 for Default View - - - - - - + + + + + + @@ -1181,16 +1194,16 @@ Press 1 for Default View - - + + All image files (%1) 所有圖片 (%1) - - + + All files (**) @@ -1198,16 +1211,16 @@ Press 1 for Default View - - + + Can't import %1 because file can't be open 無法匯入 %1,因為檔案無法開啟 - - + + Can't import %1 because file can't be parsed properly 無法匯入 %1,因為檔案無法正確解析 @@ -1721,9 +1734,9 @@ Press 1 for Default View - + - + Snapmatic Properties Snapmatic 屬性 @@ -1804,9 +1817,9 @@ Press 1 for Default View - + - + Patching of Snapmatic Properties failed because of I/O Error 讀寫錯誤,未能更新 Snapmatic 屬性 @@ -1998,8 +2011,8 @@ Press 1 for Default View - - + + Delete picture 刪除圖片 @@ -2059,22 +2072,22 @@ Press 1 for Default View 取消選擇全部(&D) - + Are you sure to delete %1 from your Snapmatic pictures? 你確定要刪除Snapmatic 圖片 %1 嗎? - + Failed at deleting %1 from your Snapmatic pictures 刪除 Snapmatic 圖片 %1 失敗 - + Failed to hide %1 In-game from your Snapmatic pictures 在遊戲中隱藏圖片 %1 失敗 - + Failed to show %1 In-game from your Snapmatic pictures 在遊戲中顯示圖片 %1 失敗 @@ -2275,14 +2288,14 @@ Press 1 for Default View - + Show In-game 在遊戲中顯示 - + Hide In-game 在遊戲中隱藏