From e0d90ff7d0a23a4c05b25a6d464993e98e549cce Mon Sep 17 00:00:00 2001 From: Syping Date: Mon, 5 Jun 2017 18:16:17 +0200 Subject: [PATCH] latest changes from gta5sync --- .travis.yml | 6 +- AboutDialog.cpp | 67 ++- AboutDialog.ui | 14 +- PictureDialog.cpp | 25 +- ProfileInterface.cpp | 4 +- SnapmaticPicture.cpp | 95 ++-- SnapmaticPicture.h | 7 +- config.h | 4 +- gta5view.pro | 12 +- lang/gta5sync_ru.qm | Bin 9953 -> 0 bytes res/app.rc | 8 +- res/gta5sync_de.qm | Bin 30009 -> 30448 bytes res/gta5sync_de.ts | 420 +++++++++------- res/gta5sync_fr.qm | Bin 28625 -> 29475 bytes res/gta5sync_fr.ts | 418 +++++++++------- res/gta5sync_ru.qm | Bin 0 -> 29910 bytes {lang => res}/gta5sync_ru.ts | 922 +++++++++++++++++++---------------- {lang => res}/qt_ru.qm | Bin {lang => res}/qtbase_ru.qm | Bin 19 files changed, 1179 insertions(+), 823 deletions(-) delete mode 100755 lang/gta5sync_ru.qm create mode 100644 res/gta5sync_ru.qm rename {lang => res}/gta5sync_ru.ts (61%) mode change 100755 => 100644 rename {lang => res}/qt_ru.qm (100%) mode change 100755 => 100644 rename {lang => res}/qtbase_ru.qm (100%) mode change 100755 => 100644 diff --git a/.travis.yml b/.travis.yml index 9a051ae..65c92c7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,15 +24,15 @@ before_script: - echo "Grand Theft Auto V Snapmatic and Savegame viewer" > ./description-pak script: - - qmake -qt=5 "DEFINES+=GTA5SYNC_BUILDTYPE=\\\\\\\"Developer\\\\\\\"" "DEFINES+=GTA5SYNC_DAILYB=\\\\\\\"$PACKAGE_VERSION-dev4\\\\\\\"" ../gta5view.pro + - qmake -qt=5 "DEFINES+=GTA5SYNC_BUILDTYPE=\\\\\\\"Developer\\\\\\\"" "DEFINES+=GTA5SYNC_DAILYB=\\\\\\\"$PACKAGE_VERSION-rc1\\\\\\\"" ../gta5view.pro - make -j 4 - - sudo checkinstall -D --default --nodoc --pkgname=gta5view --pkgversion=$PACKAGE_VERSION --pkgrelease=dev4 --pkggroup=utility --maintainer="Syping on Travis \" --requires=libqt5core5a,libqt5gui5,libqt5network5,libqt5widgets5 --pakdir=../package + - sudo checkinstall -D --default --nodoc --pkgname=gta5view --pkgversion=$PACKAGE_VERSION --pkgrelease=rc1 --pkggroup=utility --maintainer="Syping on Travis \" --requires=libqt5core5a,libqt5gui5,libqt5network5,libqt5widgets5 --pakdir=../package deploy: provider: releases api_key: secure: "o7VneEz1aHfdVwZvOZLfopf6uJWNrFsZaBvunTmXFzpmNFhlNS1qwqgMUkIA2yBRbZ3wIzVs4vfwIHv7W9yE/PqK+AYL+R8+AwKGrwlgT4HqJNuk6VM/LNJ6GwT/qkQuaoOVw29bUjmzzgIRdHmw53SlJv6Hh1VE8HphlTT//aex6nCfcFhUZ0BETdZDWz5FSHwL3NalUoqfKfQrJeky5RXzCyCANQC2tKt0bV46GaWIgWrDo2KCTNqPtRWWf5GDmnkXE5IYRMQ3mXvO9iYh0v5Y2jo4PiXGUiFUU6Z3aAWFAiPdGclrBO697cf3lCTzDMhuCETR153qFYsLShUlFf61ITAmCeHAWETjZDri0lmPONo3GoNB6alGfYEA51qw14kXakrTpICtTJj7gw/gtUYOabW6hrzmieNzMBIy62RikDPjyakFnuwW2qNHRlD65e0jYv+6nCpb6E+OV16Ysh1zhV2vTfpfzVmSuyu2J+ELqXD3OZCXRSPpDIih9UQ8335p8FBji6jHORcgym/TRgdgRmENibh8tLzWp+UjpWHuWfcpvZgOskjfwU0iDMCayMJ7tDpOhXHcAhDRnd6XRIiOJ5YZCzflj2nEwmt3YUd7DwXS/AU+WHOmcNQBjXBxF/FJa35XXcy3HKJM5TTKqtph3medo30us5yXHeG6NNg=" - file: "../package/gta5view_$PACKAGE_VERSION-dev4_amd64.deb" + file: "../package/gta5view_$PACKAGE_VERSION-rc1_amd64.deb" skip_cleanup: true on: tags: true diff --git a/AboutDialog.cpp b/AboutDialog.cpp index 31edc7d..a7bdb51 100755 --- a/AboutDialog.cpp +++ b/AboutDialog.cpp @@ -35,17 +35,67 @@ AboutDialog::AboutDialog(QWidget *parent) : buildType.replace("_", " "); QString projectBuild = GTA5SYNC_BUILDDATETIME; QString buildStr = GTA5SYNC_BUILDSTRING; -#ifdef GTA5SYNC_ENABLED - QString projectDes = tr("A project for viewing and sync Grand Theft Auto V Snapmatic
\nPictures and Savegames"); + + // Additional Content + QString usingStr = tr("Using %1 %2", "Exp. Using libmyfuck"); + QString translatedByStr = tr("Translated by %1", "Exp. Translated by Syping"); + QString translatedByVal = tr("NAME_OF_TRANSLATOR", "Your Name (The person behind your screen looking at this text!)"); + QString translatorProfile = tr("TRANSLATOR_PROFILE", "mailto: http:// https:// Exp. https://github.com/Syping/"); + QString additionalContent = ""; + if (translatedByVal != "NAME_OF_TRANSLATOR") + { + if (translatorProfile != "TRANSLATOR_PROFILE") + { + additionalContent.append(translatedByStr.arg(QString("%2").arg(translatorProfile, translatedByVal))); + } + else + { + additionalContent.append(translatedByStr.arg(translatedByVal)); + } + } +#ifdef WITH_LIBJPEGTURBO // DONT USE IT FOR NOW + bool additionalContentClip = false; + if (!additionalContent.isEmpty()) + { + additionalContentClip = true; + additionalContent.append(" ("); + } + additionalContent.append(usingStr.arg("libjpegturbo", WITH_LIBJPEGTURBO)); + if (additionalContentClip) + { + additionalContent.append(")"); + } #else - QString projectDes = tr("A project for viewing Grand Theft Auto V Snapmatic
\nPictures and Savegames"); + Q_UNUSED(usingStr) #endif + // Project Description +#ifdef GTA5SYNC_ENABLED + QString projectDes = tr("A project for viewing and sync Grand Theft Auto V Snapmatic
\nPictures and Savegames"); +#else + QString projectDes = tr("A project for viewing Grand Theft Auto V Snapmatic
\nPictures and Savegames"); +#endif + + // Copyright Description + QString copyrightDes1 = tr("Copyright © %2 %3"); + copyrightDes1 = copyrightDes1.arg(GTA5SYNC_APPVENDORLINK, GTA5SYNC_APPVENDOR, GTA5SYNC_COPYRIGHT); + QString copyrightDes2 = tr("%1 is licensed under GNU GPLv3"); + copyrightDes2 = copyrightDes2.arg(GTA5SYNC_APPSTR); + QString copyrightDesA; + if (!additionalContent.isEmpty()) + { + copyrightDesA = copyrightDes1 % "
" % additionalContent % "
" % copyrightDes2; + } + else + { + copyrightDesA = copyrightDes1 % "
" % copyrightDes2; + } + // Setup User Interface ui->setupUi(this); aboutStr = ui->labAbout->text(); titleStr = this->windowTitle(); - ui->labAbout->setText(aboutStr.arg(appVersion % " (" % buildType % ")", buildStr, qVersion(), projectBuild, GTA5SYNC_APPVENDORLINK, GTA5SYNC_APPVENDOR, GTA5SYNC_COPYRIGHT, GTA5SYNC_APPSTR, projectDes)); + ui->labAbout->setText(aboutStr.arg(GTA5SYNC_APPSTR, projectDes, appVersion % " (" % buildType % ")", projectBuild, buildStr, qVersion(), copyrightDesA)); this->setWindowTitle(titleStr.arg(GTA5SYNC_APPSTR)); if (QIcon::hasThemeIcon("dialog-close")) @@ -55,7 +105,14 @@ AboutDialog::AboutDialog(QWidget *parent) : // DPI calculation qreal screenRatio = AppEnv::screenRatio(); - resize(375 * screenRatio, 260 * screenRatio); + if (!additionalContent.isEmpty()) + { + resize(375 * screenRatio, 270 * screenRatio); + } + else + { + resize(375 * screenRatio, 260 * screenRatio); + } } AboutDialog::~AboutDialog() diff --git a/AboutDialog.ui b/AboutDialog.ui index 891e50e..d44926d 100755 --- a/AboutDialog.ui +++ b/AboutDialog.ui @@ -26,16 +26,16 @@ - <span style=" font-weight:600;">%8</span><br/> + <span style=" font-weight:600;">%1</span><br/> <br/> -%9<br/> +%2<br/> <br/> -Project version: %1<br/> -Project build: %4<br/> -Compiled with Qt %2<br/> -Running with Qt %3<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> <br/> -Copyright &copy; <a href="%5">%6</a> %7<br/>%8 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> +%7 Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop diff --git a/PictureDialog.cpp b/PictureDialog.cpp index 24ec3ee..c1e6a6c 100755 --- a/PictureDialog.cpp +++ b/PictureDialog.cpp @@ -518,27 +518,32 @@ void PictureDialog::renderPicture() { if (overlayEnabled) { - QPixmap overlayAreaPixmap(960 * screenRatio, 536 * screenRatio); - overlayAreaPixmap.fill(Qt::transparent); - QPainter overlayAreaPainter(&overlayAreaPixmap); + QPixmap shownImagePixmap(960 * screenRatio, 536 * screenRatio); + shownImagePixmap.fill(Qt::transparent); + QPainter shownImagePainter(&shownImagePixmap); if (screenRatio == 1) { - overlayAreaPainter.drawImage(0, 0, snapmaticPicture); - overlayAreaPainter.drawImage(3 * screenRatio, 3 * screenRatio, overlayTempImage); + shownImagePainter.drawImage(0, 0, snapmaticPicture); + shownImagePainter.drawImage(3 * screenRatio, 3 * screenRatio, overlayTempImage); } else { - overlayAreaPainter.drawImage(0, 0, snapmaticPicture.scaledToHeight(536 * screenRatio, Qt::SmoothTransformation)); - overlayAreaPainter.drawImage(3 * screenRatio, 3 * screenRatio, overlayTempImage); + shownImagePainter.drawImage(0, 0, snapmaticPicture.scaledToHeight(536 * screenRatio, Qt::SmoothTransformation)); + shownImagePainter.drawImage(3 * screenRatio, 3 * screenRatio, overlayTempImage); } - overlayAreaPainter.end(); - ui->labPicture->setPixmap(overlayAreaPixmap); + shownImagePainter.end(); + ui->labPicture->setPixmap(shownImagePixmap); } else { if (screenRatio != 1) { - ui->labPicture->setPixmap(QPixmap::fromImage(snapmaticPicture.scaledToHeight(536 * screenRatio, Qt::SmoothTransformation))); + QPixmap shownImagePixmap(960 * screenRatio, 536 * screenRatio); + shownImagePixmap.fill(Qt::transparent); + QPainter shownImagePainter(&shownImagePixmap); + shownImagePainter.drawImage(0, 0, snapmaticPicture.scaledToHeight(536 * screenRatio, Qt::SmoothTransformation)); + shownImagePainter.end(); + ui->labPicture->setPixmap(shownImagePixmap); } else { diff --git a/ProfileInterface.cpp b/ProfileInterface.cpp index 0c33024..fb6be42 100755 --- a/ProfileInterface.cpp +++ b/ProfileInterface.cpp @@ -502,7 +502,7 @@ bool ProfileInterface::importFile(QString selectedFile, bool notMultiple, int cu if (selectedFileName.left(4) == "PGTA" || selectedFileName.right(4) == ".g5e") { SnapmaticPicture *picture = new SnapmaticPicture(selectedFile); - if (picture->readingPicture()) + if (picture->readingPicture(true, true, true)) { bool success = importSnapmaticPicture(picture, notMultiple); if (!success) delete picture; @@ -534,7 +534,7 @@ bool ProfileInterface::importFile(QString selectedFile, bool notMultiple, int cu else if(selectedFileName.right(4) == ".jpg" || selectedFileName.right(4) == ".png") { SnapmaticPicture *picture = new SnapmaticPicture(":/template/template.g5e"); - if (picture->readingPicture(true, false)) + if (picture->readingPicture(true, false, true, false)) { if (!notMultiple) { diff --git a/SnapmaticPicture.cpp b/SnapmaticPicture.cpp index d5cbf29..0fa91dd 100755 --- a/SnapmaticPicture.cpp +++ b/SnapmaticPicture.cpp @@ -1,5 +1,5 @@ /***************************************************************************** -* gta5sync GRAND THEFT AUTO V SYNC +* gta5sync-spv Grand Theft Auto Snapmatic Picture Viewer * Copyright (C) 2016-2017 Syping * * This program is free software: you can redistribute it and/or modify @@ -75,6 +75,7 @@ void SnapmaticPicture::reset() isCustomFormat = 0; pictureHead = ""; pictureStr = ""; + lowRamMode = 0; lastStep = ""; sortStr = ""; titlStr = ""; @@ -89,7 +90,7 @@ void SnapmaticPicture::reset() localSpJson = {}; } -bool SnapmaticPicture::readingPicture(bool writeEnabled_, bool cacheEnabled_, bool fastLoad) +bool SnapmaticPicture::readingPicture(bool writeEnabled_, bool cacheEnabled_, bool fastLoad, bool lowRamMode_) { // Start opening file // lastStep is like currentStep @@ -97,6 +98,8 @@ bool SnapmaticPicture::readingPicture(bool writeEnabled_, bool cacheEnabled_, bo // Set boolean values writeEnabled = writeEnabled_; cacheEnabled = cacheEnabled_; + lowRamMode = lowRamMode_; + if (!writeEnabled) { lowRamMode = false; } // Low RAM Mode only works when writeEnabled is true QFile *picFile = new QFile(picFilePath); picFileName = QFileInfo(picFilePath).fileName(); @@ -225,14 +228,14 @@ bool SnapmaticPicture::readingPicture(bool writeEnabled_, bool cacheEnabled_, bo return false; } QByteArray jpegRawContent = picStream->read(jpegPicStreamLength); - if (jpegRawContent.contains(QByteArray::fromHex("FFD9"))) + if (jpegRawContent.contains("\xFF\xD9")) { - int jpegRawContentSizeT = jpegRawContent.indexOf(QByteArray::fromHex("FFD9")) + 2; + int jpegRawContentSizeT = jpegRawContent.indexOf("\xFF\xD9") + 2; jpegRawContentSizeE = jpegRawContentSizeT; jpegRawContentSize = jpegRawContentSizeT; - if (jpegRawContent.contains(QByteArray::fromHex("FF454F49"))) + if (jpegRawContent.contains("\xFF\x45\x4F\x49")) { - jpegRawContentSizeT = jpegRawContent.indexOf(QByteArray::fromHex("FF454F49")); + jpegRawContentSizeT = jpegRawContent.indexOf("\xFF\x45\x4F\x49"); } jpegRawContent = jpegRawContent.left(jpegRawContentSize); jpegRawContentSize = jpegRawContentSizeT; @@ -317,13 +320,14 @@ bool SnapmaticPicture::readingPicture(bool writeEnabled_, bool cacheEnabled_, bo picStream->close(); delete picStream; if (!writeEnabled) { rawPicContent.clear(); } + else if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return picOk; } QString SnapmaticPicture::getSnapmaticHeaderString(const QByteArray &snapmaticHeader) { QByteArray snapmaticBytes = snapmaticHeader.left(snapmaticUsefulLength); - QList snapmaticBytesList = snapmaticBytes.split(char(0x01)); + QList snapmaticBytesList = snapmaticBytes.split('\x01'); snapmaticBytes = snapmaticBytesList.at(1); snapmaticBytesList.clear(); return StringParser::parseTitleString(snapmaticBytes, snapmaticBytes.length()); @@ -332,8 +336,8 @@ QString SnapmaticPicture::getSnapmaticHeaderString(const QByteArray &snapmaticHe QString SnapmaticPicture::getSnapmaticJSONString(const QByteArray &jsonBytes) { QByteArray jsonUsefulBytes = jsonBytes; - jsonUsefulBytes.replace((char)0x00, ""); - jsonUsefulBytes.replace((char)0x0c, ""); + jsonUsefulBytes.replace('\x00', ""); + jsonUsefulBytes.replace('\x0c', ""); return QString::fromUtf8(jsonUsefulBytes).trimmed(); } @@ -341,7 +345,7 @@ QString SnapmaticPicture::getSnapmaticTIDEString(const QByteArray &tideBytes) { QByteArray tideUsefulBytes = tideBytes; tideUsefulBytes.remove(0,4); - QList tideUsefulBytesList = tideUsefulBytes.split(char(0x00)); + QList tideUsefulBytesList = tideUsefulBytes.split('\x00'); return QString::fromUtf8(tideUsefulBytesList.at(0)).trimmed(); } @@ -365,12 +369,12 @@ void SnapmaticPicture::updateStrings() picExportFileName = sortStr + "_" + cmpPicTitl; } -bool SnapmaticPicture::readingPictureFromFile(const QString &fileName, bool writeEnabled_, bool cacheEnabled_, bool fastLoad) +bool SnapmaticPicture::readingPictureFromFile(const QString &fileName, bool writeEnabled_, bool cacheEnabled_, bool fastLoad, bool lowRamMode_) { if (fileName != "") { picFilePath = fileName; - return readingPicture(writeEnabled_, cacheEnabled_, fastLoad); + return readingPicture(writeEnabled_, cacheEnabled_, fastLoad, lowRamMode_); } else { @@ -414,25 +418,27 @@ bool SnapmaticPicture::setPictureStream(const QByteArray &picByteArray_) // clea { if (writeEnabled) { - bool lvlEoi = false; + bool customEOI = false; QByteArray picByteArray = picByteArray_; + if (lowRamMode) { rawPicContent = qUncompress(rawPicContent); } QBuffer snapmaticStream(&rawPicContent); snapmaticStream.open(QIODevice::ReadWrite); if (!snapmaticStream.seek(jpegStreamEditorBegin)) return false; if (picByteArray.length() > jpegPicStreamLength) return false; if (picByteArray.length() < jpegRawContentSize && jpegRawContentSize + 4 < jpegPicStreamLength) { - lvlEoi = true; + customEOI = true; } while (picByteArray.length() != jpegPicStreamLength) { - picByteArray.append((char)0x00); + picByteArray += '\x00'; } - if (lvlEoi) + if (customEOI) { - picByteArray.replace(jpegRawContentSize, 4, QByteArray::fromHex("FF454F49")); + picByteArray.replace(jpegRawContentSize, 4, "\xFF\x45\x4F\x49"); } int result = snapmaticStream.write(picByteArray); + snapmaticStream.close(); if (result != 0) { if (cacheEnabled) @@ -441,8 +447,10 @@ bool SnapmaticPicture::setPictureStream(const QByteArray &picByteArray_) // clea replacedPicture.loadFromData(picByteArray); cachePicture = replacedPicture; } + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return true; } + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return false; } return false; @@ -453,6 +461,7 @@ bool SnapmaticPicture::setPictureTitl(const QString &newTitle_) if (writeEnabled) { QString newTitle = newTitle_; + if (lowRamMode) { rawPicContent = qUncompress(rawPicContent); } QBuffer snapmaticStream(&rawPicContent); snapmaticStream.open(QIODevice::ReadWrite); if (!snapmaticStream.seek(titlStreamEditorBegin)) return false; @@ -463,14 +472,17 @@ bool SnapmaticPicture::setPictureTitl(const QString &newTitle_) QByteArray newTitleArray = newTitle.toUtf8(); while (newTitleArray.length() != titlStreamEditorLength) { - newTitleArray.append((char)0x00); + newTitleArray += '\x00'; } int result = snapmaticStream.write(newTitleArray); + snapmaticStream.close(); if (result != 0) { titlStr = newTitle; + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return true; } + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return false; } return false; @@ -533,6 +545,7 @@ QImage SnapmaticPicture::getImage() QImage tempPicture; QImage returnPicture(snapmaticResolution, QImage::Format_RGB888); + if (lowRamMode) { rawPicContent = qUncompress(rawPicContent); } QBuffer snapmaticStream(&rawPicContent); snapmaticStream.open(QIODevice::ReadOnly); if (snapmaticStream.seek(jpegStreamEditorBegin)) @@ -541,6 +554,7 @@ QImage SnapmaticPicture::getImage() returnOk = tempPicture.loadFromData(jpegRawContent, "JPEG"); } snapmaticStream.close(); + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } if (returnOk) { @@ -722,8 +736,9 @@ bool SnapmaticPicture::setSnapmaticProperties(SnapmaticProperties newSpJson) QByteArray jsonByteArray = newJsonStr.toUtf8(); while (jsonByteArray.length() != jsonStreamEditorLength) { - jsonByteArray.append((char)0x00); + jsonByteArray += '\x00'; } + if (lowRamMode) { rawPicContent = qUncompress(rawPicContent); } QBuffer snapmaticStream(&rawPicContent); snapmaticStream.open(QIODevice::ReadWrite); if (!snapmaticStream.seek(jsonStreamEditorBegin)) @@ -737,8 +752,14 @@ bool SnapmaticPicture::setSnapmaticProperties(SnapmaticProperties newSpJson) { localSpJson = newSpJson; jsonStr = newJsonStr; + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } return true; } + else + { + if (lowRamMode) { rawPicContent = qCompress(rawPicContent, 9); } + return false; + } } else { @@ -773,15 +794,24 @@ bool SnapmaticPicture::exportPicture(const QString &fileName, const QString form { numberLength = "00"; } - picFile->write(QByteArray::fromHex("00")); // First Null Byte - picFile->write("G5E"); // GTA 5 Export - picFile->write(QByteArray::fromHex("1000")); // 2 byte GTA 5 Export Version - picFile->write("LEN"); // Before Length - picFile->write(QByteArray::fromHex(numberLength)); // Length in HEX before Compressed - picFile->write("FIL"); // Before File Name - picFile->write(stockFileNameUTF8); // File Name - picFile->write("COM"); // Before Compressed - picFile->write(qCompress(rawPicContent, 9)); // Compressed Snapmatic + QByteArray g5eHeader; + g5eHeader += '\x00'; // First Null Byte + g5eHeader += "G5E"; // GTA 5 Export + g5eHeader += '\x10'; g5eHeader += '\x00'; // 2 byte GTA 5 Export Version + g5eHeader += "LEN"; // Before Length + g5eHeader += QByteArray::fromHex(numberLength); // Length in HEX before Compressed + g5eHeader += "FIL"; // Before File Name + g5eHeader += stockFileNameUTF8; // File Name + g5eHeader += "COM"; // Before Compressed + picFile->write(g5eHeader); + if (!lowRamMode) + { + picFile->write(qCompress(rawPicContent, 9)); // Compressed Snapmatic + } + else + { + picFile->write(rawPicContent); + } picFile->close(); delete picFile; } @@ -805,7 +835,14 @@ bool SnapmaticPicture::exportPicture(const QString &fileName, const QString form else { // Classic straight export - picFile->write(rawPicContent); + if (!lowRamMode) + { + picFile->write(rawPicContent); + } + else + { + picFile->write(qUncompress(rawPicContent)); + } picFile->close(); delete picFile; } diff --git a/SnapmaticPicture.h b/SnapmaticPicture.h index 6567dad..2b16c66 100755 --- a/SnapmaticPicture.h +++ b/SnapmaticPicture.h @@ -1,5 +1,5 @@ /***************************************************************************** -* gta5sync GRAND THEFT AUTO V SYNC +* gta5sync-spv Grand Theft Auto Snapmatic Picture Viewer * Copyright (C) 2016-2017 Syping * * This program is free software: you can redistribute it and/or modify @@ -53,8 +53,8 @@ public: explicit SnapmaticPicture(const QString &fileName = "", QObject *parent = 0); ~SnapmaticPicture(); void reset(); - bool readingPictureFromFile(const QString &fileName, bool writeEnabled = true, bool cacheEnabled = false, bool fastLoad = false); - bool readingPicture(bool writeEnabled = true, bool cacheEnabled = true, bool fastLoad = false); + bool readingPictureFromFile(const QString &fileName, bool writeEnabled = true, bool cacheEnabled = false, bool fastLoad = true, bool lowRamMode = false); + bool readingPicture(bool writeEnabled = true, bool cacheEnabled = false, bool fastLoad = true, bool lowRamMode = false); bool isPicOk(); void clearCache(); QImage getImage(); @@ -118,6 +118,7 @@ private: QString titlStr; QString descStr; bool picOk; + bool lowRamMode; bool writeEnabled; bool cacheEnabled; bool isCustomFormat; diff --git a/config.h b/config.h index dfe4780..6d9549e 100755 --- a/config.h +++ b/config.h @@ -50,14 +50,14 @@ #ifndef GTA5SYNC_APPVER #ifndef GTA5SYNC_DAILYB -#define GTA5SYNC_APPVER "1.4.0-dev4" +#define GTA5SYNC_APPVER "1.4.0-rc1" #else #define GTA5SYNC_APPVER QString("%1").arg(GTA5SYNC_DAILYB) #endif #endif #ifndef GTA5SYNC_BUILDTYPE -#define GTA5SYNC_BUILDTYPE "Developer" +#define GTA5SYNC_BUILDTYPE "Release Candidate" #endif #ifndef GTA5SYNC_SHARE diff --git a/gta5view.pro b/gta5view.pro index 80327dd..fce9ff1 100755 --- a/gta5view.pro +++ b/gta5view.pro @@ -107,20 +107,18 @@ FORMS += \ TRANSLATIONS += \ res/gta5sync_de.ts \ res/gta5sync_fr.ts \ - lang/gta5sync_ru.ts + res/gta5sync_ru.ts RESOURCES += \ res/app.qrc DISTFILES += res/app.rc \ - res/gta5view.desktop \ + res/gta5sync.desktop \ res/gta5sync_de.ts \ res/gta5sync_fr.ts \ - res/gta5view.exe.manifest \ - res/gta5view.png \ - lang/qtbase_ru.qm \ - lang/gta5sync_ru.ts \ - lang/qt_ru.qm \ + res/gta5sync_ru.ts \ + res/gta5sync.exe.manifest \ + res/gta5sync.png \ lang/README.txt INCLUDEPATH += ./uimod diff --git a/lang/gta5sync_ru.qm b/lang/gta5sync_ru.qm deleted file mode 100755 index ef6b45b1b52df97f5a2a78e23d6c3a3bfebd73a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9953 zcmc&)Z){sv6+cOD{yBf!W@*}`%}v^jv`tbcjgvG@+&E6!rcE1=Z&4e8L<~_f2?(dv?{@rsubaTG(r9Xf9>dP%nKfLs{@4qohRD6Zl^)(`PuQ@h+ z%p4m7=6K)}#D3mJbg-P*yMBy)RPxFTMEm3B*z$E69vCOuwTsU6T_vKs&5^a4V}mue z_7~sx!h4wK5pz6nv-m3){!UagU3~3QH&IE-92*`jekS@3QDdt3JKqfu?OQFr@uP!8 zd+#ZJ@zGkMin`*ruGbT_Oz+@7`vvABb8LBYN9ejnRMyB!D}PK>I?p1FUnRQzVfOUr z{zB9mXHS0~Pq$vfScLI4_DsilL5vf?i6vIX1sq@#4rQiS|6~EBX`U-&^EsyD|Yi-SAC*^Kq=# zv%U*|z;#pHceCj>qWUJ^%cGG0wrSrlo9`lOKI{9(KntFGx3cKQgG9TRD}S&I{T*DY zI@;P`jdblE&nRe9AzmsY_4?W!kgPk@h6JyQ?9z8B1~{o*N42n{K(zHeink&b{REl>^Xg0ZG@I@mUNUtU4%5bYv-WrQVO`T1&nIzmV>?MCo}|^Q(%?=^E6nl zQJgdyrdC`pP!jhIz+A<>7__v6t3m1`KVB#COi;>x98gc<-GlcazUSb2%;p<}uzk2Q zOF9L~cgr(2W0roX<22q=%GtW90~p$<#~P1IMB6ogqqH4J$_A9P_imr8G(lr91!1dU z*zGBHUO8jHwz)Tl(y3^Ir;W9^Hr&b=k_n@8Rf{by8H0U(|H;?O{LX<&p83CUGHjMwnwis1{8&8?;?ZLH%b%G`YL_xvBrY#-+ zcq*wI9#lM=Y8{3Fn@^3&Cl88!>;O9p{M|wpa1)VtKze4k&8g~i6e}{%qXuv5_P{mE z_RGZ$vtH;#M4Awr1iujYsx&vs0zzX5rD1k)ofKgp@D8Kx79JzX=Y*c;R&-rU7_Pv& zvF4XNuwHPlN4A{+;jJJ(;vm-K>TVkIeIA%kL60MN_e1N#wnL^}n=80ZufaSCD&XKu zUe@$gJ!WWFbG{lgmNpIf2prDs9xyLDM-dvQGx$$hwShS~0?`0WhQZA7!U~Y5WJvU2(1Cb%9&RH_ zlwrKi3)N;~o5iljTAX1U)n2f@9F523Wsu{sG*4@BZO+i3Sa3{9w=uNOC3RFqN5gxqN)(}3a5+sG*G9A`w!sy3`S8XEr}utwMfP& zQmAO$M$r;MJdDo9HGWYuR+IVz{EQw=Eyd*b&-S8bx$6hZ;vqpB8d(M;bMPD^|P{+3_TD#2GnjCaVmf6u0tbZk#sD zcHHf!P7xI?R}^{8kE}1SPr_YA(H@izE3)s9jGE%vOmX73{lg!QCO%~F*s{pVA{fqU zbJ3Nw#*+&?ku==yypYsU*b5&~3w0oS8-nS~jgF~OXIoM&w9iedpMMilHQ&82!r@!b$ZGKTu`KSl&ee2Qflh05G%UTiG7@$QweaNOe1 zD`^IpxDLtZ1-ULEC!Fl&x{*5; zwG6q1q1Y5{TVbf4^71XW^I8xEvulI^c)Ht%nbu)uMDNsIiWB*IR~aQ*9WT*$5^uBD zP?P!AX^9rl&Q(zr*Z@+IZmCP6V$|WeBUv9gPuLo)&FH|@DOPdc@-Dz;c28`6Q8VNo z;9jx8g@1)nHJdw7Y;t93m?;LwVHTqI1&@@^nVp|ZQdln#o{|B~*?V?{(EVOZuJE*I zgQK4_kKM4@a#+xl%i=4Yr>#mbEq9+PsGD6`mz1JOq3Ta5(A&#VExUUeSR$^dK-I8= zRxeCy#HKDClQMdd9m*zyVmE?PYcjKSZZ9CY68wR})Nh$NgMGI=sB5FcxWZYZygKIkH17<`JMz=EruG?Z z{brV8`aHiUy2jhP{r4nmavc z$}@XX`+0WSYLlpDKqMEf+91wToi;K%tHo0u{P&6KUN&q;5P02fXlD;yGcC`iG7WqW zPIWk|QU5Zh-2Iyz1?qjdl$JNRH;>gB9x!?9@Hu<+KO=O$v*`W9mH(|TX76|ScK;7i C)_#=$ diff --git a/res/app.rc b/res/app.rc index 8ec6e6c..2520178 100755 --- a/res/app.rc +++ b/res/app.rc @@ -7,8 +7,8 @@ CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "gta5view.exe.manifest" #include VS_VERSION_INFO VERSIONINFO -FILEVERSION 1, 4, 0, 4 -PRODUCTVERSION 1, 4, 0, 4 +FILEVERSION 1, 4, 0, 5 +PRODUCTVERSION 1, 4, 0, 5 FILEFLAGSMASK 0x3fL FILEFLAGS 0 FILEOS VOS_NT_WINDOWS32 @@ -25,12 +25,12 @@ BEGIN BEGIN VALUE "CompanyName", "Syping" VALUE "FileDescription", "gta5view\0" - VALUE "FileVersion", "1.4.0-dev4\0" + VALUE "FileVersion", "1.4.0-rc1\0" VALUE "InternalName", "gta5view\0" VALUE "LegalCopyright", "Copyright 2016-2017 Syping\0" VALUE "OriginalFilename", "gta5view.exe\0" VALUE "ProductName", "gta5view\0" - VALUE "ProductVersion", "1.4.0-dev4\0" + VALUE "ProductVersion", "1.4.0-rc1\0" END END END diff --git a/res/gta5sync_de.qm b/res/gta5sync_de.qm index 2dabad6e954b5e6fd4994ff481fb0f001d86423c..0890c945326032de167ca1c2e830ea69c3d3a935 100755 GIT binary patch delta 2888 zcmY+F33!Zm9>>2kc_;6@?_7>VHdb_mAqf(Rj5s1BByz|dLL?%YOb$sVX%5%!nkt^K zQaq-qT9#5b-PT!0X$7^`5#rcVN*%@8Ev4$HNB2A4=Ru!5GoQ@w{r`Xe-|_wZ-`)RF z-T$9zp_j87z!X3?M4|6CKs^I6mam{6AwW+p9Kv28k$J@$xMYNo^-aahUT+jK!=CWv>XA_ z{;aUj2JOlW2H=l?uy=u=0)>U&BgpNz$bcZXUq#Z+&s&D@)g`(r2$4Q#ZQhD1}v)NOTB=&CWSc- z3TFZB7<5aWd*l&I z8l$e9oduLkRL`w*0Dm~C{%Ard;NPM!cD;K2WVR)+m zI=Rp`OTD?^CXg^ty<>+J7&%wHv$-pf@uYKCH_mLjb+H=5!H6GUbN3<{Th+b<4y598|wRsNE@t+SGt+xzOqi_W3rKaN`6KDM*b{pTEJZs14tE_OL~wC1?T2oYnb^$;U)7L zg->T@vzNVuy}CkXeqGqVBAjY<3SW+AX@e!9Wzzf9%1VWaz6!@D3oW~5a-FYm>B?-t zyi2&9w-@jlCOo*ln;KavJZU`!w7)7m-(zLK-8F*S&mgN){p|-j&mV zw{jKc>oqwin}L)`n#zxC9JOf8vR=$Id!1(Gvn(L|mS**gu~c)j=Ch6asHN?iYd z&ksB`5gcWYiJpFkIi5u`JTvkvK!nlLrmg~FKJhFa#mWlKcSZ4LJHYoFQGQg%02&ky zU8OKNM+|s=kW&yQ=9lkapp(V2XsTO(Mq%UwvHW}f?p-2Q9%SG?x5cV|UjqUo#F~qo znjSIYluhdZaiF+xMLjF9Tx>eo#4&v;u0G)4{M$E*TatbRa?Xo8TEl@MH^k;7DN_ef3%a%L;LA6H7jelLmcYsa)Fo6zqOB5Q56s9kdcXjdx zq66e(ck2O%UOo}SF&cheZkeQp-^o+0aWzS|G8=k0Vkru39uF;xBm51sY<8IP! zQ8;dnZvKl-9H*NniBq#*zqmJlOIP*FR01`TtuQCv zsb6hk#L=hpd+ycpZttq!t0E1)`r}DHyu+s%{&Fw{Wt_StQSnQ@l)!y!YK7keGJRAEe%;q!gGAG#e^IPk3D;8<@4c;9ewt&8`J z^Mv7sg9n7oFg!^)NtOB;1^1QQ_lR-(gfhJ)bR;;!Uf58wDheF>N}*bG)9L4(?*52iQ!HmIkxc zi930UBj1D9b2BUmby?-F1&p_Zy3Xm|c4@)`T@BhcYE`&vxqq~W`}t*UpeoFDK=QSY zh8;DiMH#B#fSJ4dA`*qPg&+ztVqZS3g+{kw<%mP z#nhKo)R`xj)s>pl>&zCbV$G;`ILaI)ukHQbbZdzafow**!9}0h_VnG-a z3t{+CN}8_%?lG*YdTLEsNok$AyN&-2GDjAeOKa@KgZ(X`{!t7%q#%k>x>h|CpJEc0J*zL)NBcJJKJ{II3!C|?aE7yaJ3HTwr!fNpNDF?YfJF}4@T+=$>{33 Nn9zA!_mcL;{{tCz2@L=M delta 2522 zcmY+FdsI}{6~@1N=g!=@_s&BE6{(mJ9YjEp$M6P00)hwv@(=`sfkB3+4iC-hYDcSB ztwzn75?v`)u}D;0NfaL#3Ko!B>xv}AkVI`0Q5ubjMjN8l#B}3bUCaJ6zjN+6XP>?I z`SzagzGcpR&Fpcp#{k#>2)#000|0gtAYBKztANuSK)D=Pp#r>2fTj!ZiJ)~anOXzj zuLHEn!0G{DA%8d7vIAlt>^bRx z^BwGXcNj?f8iz}rD1r?*`?LX=W5d{0+AkF1&LJg`>4t|jspRNZM!ew*#JkAMRmn7m zG44k_0DUV{mOV}ZA7ttRzo(0qZ()AbQV1CGn2(d61Cbk;@3bd?@G|DvQko;2&A&(o zRt>P#O_V~*Ep~f-4KOW*Jy_%q%u1E{>Rk57`Y^Kh5qoSRAbQ9bRCUXA{ku$`w`DFK zA=+tU@lWjW;xS;!Irj8v6OgQC&-Bj*l3LhaZXQK`fW7pl9`M}G4y~hg>pJ#}OZ47T zBzCmj1t{9aK3nJv} zU)VUOvP**$K|5!977omF;X-2R;PQoBTIc~_Spm1rX$6VS!tL01m#E-6c0B~j9umI? z))VqYK-(Qq1z7%P;r?T~FCJ7_VIfTG*HCueDjrN zDl;43)<apQPizOrbj0{Zp+>AT1OHs@(?{01Nl4 zW1qIslMJgDKWZg0?NBc}G6dxHs#8x=CY;Wyt6Tp>#c^L<+h+lmW~w*N`kWe&R^8iA zj%0nS9=t$Lxu8$|pqm`gHVV_u_tE-RVcI`pNTllpW5H3X|A=nE^T}+WFhiKPfeZ<5 zGAHE=OZM)fhB6=&@RVAYd4hQ_d7g4cs7fRe7WWHPWkgkyV0#<@yt+}?xxhqaEXpi| z(AJjaFvR^cAOrjL~iwlG9Q->T7Bg$Hc4Ki2XmRXS_rrf1{siK(kKnGL`VksyS&a*`8 zAKw9H_J})wcZdQU75634dC`?Ib9_)&RJ%>S!V79apaXO>Y(xBXU85<%D)kBpS%P_<%@SOllUTUO3WG3Othyo z{nQ{m`5RK6{UeGnVWqTLN2zfsmUfylNi4^toe5*qLfd5K@zSp6GpNpUrQNtqyd*VG zqq59Oky?DV(7sWbc?nW)H5sn#Cer!JO6fxMU0}XS8mgy@E83*t{T6CewbIAU^xu$O zA=!WEzD6Q*m0nPnq~YF*rv~vijc{)q2+G&E|JjY+?2yLC>)#Z~JDL@IDH&|h)Fo4f zf-h^f$2C)CqBMKw(_Fn;)5371g%O!6FKXKK%t&HE4Ps9ak#-3(FMr~SoU5^r{w zUF&_F4CKtzhHR%gby}tk*+DH!%+$tcNv(dN+Qpl$QZ>YBGhOIyz1(ER^k~oaQ2ozN zmKnA}JCHkt)LyH-*6yIUUZ%ZWLl^i%`y}-WHKrCFH_>SW5_G4Etklo~WhP{I=-n#F z!_cSt=tuO{X=(bzgo#E}D6>GPuNgi`|NlYywY%tP_>1~OKWC9hKh<}9Ko>awQa{i| zDGeFbkN;r-{b!iSdevu+o6F`q9t)FLHqWtqPOQR+P)CY5j|p?klBUO}!G>B?z=BHD zqmgJs9jx@N2H`NkNPb7cOke#F4H5sp-;823Alxx1`ZEEJ$7D5d!m8s9U9iyv4?1B) zFrD|KebFzhg}h{K!V`!3uPhVfU_1?F#?VN=y0yhM(UE4GU$iLy8pB?mrP*pLEG6}Z zMvJY^T3ZutF#5~O|64FOSgT6ubCCQwuC{uuwaQXzSZ}Q_H>B4ai~)`wX<9_!%SPjB z*S==6t|_lKc$UyG!Vp<(D7RV4qCAWyk7#3Xq+fBg!5H%5h%wYrAgt?rBJE{6cTHN9 i$=Dpa^eD&q@|m4;Eujjg(NR<$<``Qsv-5npzwW + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> +<br/> +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Erstellt am %4<br/> +Gebaut mit Qt %5<br/> +Läuft auf Qt %6<br/> +<br/> +%7 + + + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> +%8<br/> +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Erstellt am %4<br/> +Gebaut mit Qt %5<br/> +Läuft auf Qt %6<br/> +%8<br/> +%7 + + <span style=" font-weight:600;">%8</span><br/> <br/> %9<br/> @@ -70,7 +114,7 @@ Compiled with Qt %2<br/> Running with Qt %3<br/> <br/> Copyright &copy; <a href="%5">%6</a> %7<br/>%8 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> - <span style=" font-weight:600;">%8</span><br/> + <span style=" font-weight:600;">%8</span><br/> <br/> %9<br/> <br/> @@ -102,15 +146,61 @@ Copyright &copy; <a href="%5">%6</a> %7<br/>%8 i <span style=" font-weight:600;">gta5sync</span><br/><br/>A project for viewing and sync Grand Theft Auto 5 Snapmatic Pictures and Savegames<br/><br/>Project version: %1<br/>Compiled with Qt %2<br/>Running with Qt %3<br/><br/>Copyright &copy; <a href="https://github.com/Syping/">Syping</a> 2016<br/>gta5sync is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> <span style=" font-weight:600;">gta5sync</span><br/><br/>Ein Projekt zum ansehen und synchronisieren von Grand Theft Auto 5 Snapmatic Bilder und Spielständen<br/><br/>Projektversion: %1<br/>Gebaut mit Qt %2<br/>Läuft auf Qt %3<br/><br/>Copyright &copy; <a href="https://github.com/Syping/">Syping</a> 2016<br/>gta5sync is lizenziert unter <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + Using %1 %2 + Verwendet %1 %2 + + + Translated by %1 + Übersetzt von %1 + + Using %1 %2 + Exp. Using libmyfuck + Verwendet %1 %2 + + + + Translated by %1 + Exp. Translated by Syping + Übersetzt von %1 + + + + NAME_OF_TRANSLATOR + Your Name (The person behind your screen looking at this text!) + Syping + + + + TRANSLATOR_PROFILE + mailto: http:// https:// Exp. https://github.com/Syping/ + https://github.com/Syping/ + + + A project for viewing Grand Theft Auto V Snapmatic<br/> Pictures and Savegames Ein Projekt zum ansehen von Grand Theft Auto V<br/> Snapmatic Bilder und Spielständen - + + Copyright &copy; <a href="%1">%2</a> %3 + Copyright &copy; <a href="%1">%2</a> %3 + + + + %1 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + %1 ist lizenziert unter <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 ist lizenziert unter <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + A project for viewing and sync Grand Theft Auto V Snapmatic<br/> Pictures and Savegames Ein Projekt zum ansehen und synchronisieren von<br/> @@ -435,26 +525,26 @@ Grand Theft Auto V Snapmatic Bilder und Spielständen %1 (%2 wenn verfügbar) [sys] - + System System like PC System System - + %1 (%2 if available) System like PC System = %1, System Language like Deutsch = %2 %1 (%2 wenn verfügbar) - + %1 %1 %1 - + The new Custom Folder will initialize after you restart %1. Der eigene Ordner wird initialisiert sobald du %1 neugestartet hast. @@ -463,20 +553,20 @@ Grand Theft Auto V Snapmatic Bilder und Spielständen Der eigene Ordner initialisiert sobald du %1 neugestartet hast. - + The language change will take effect after you restart %1. Die Änderung der Sprache nimmt Effekt sobald du %1 neugestartet hast. - + No Profile No Profile, as default Kein Profil - - + + Profile: %1 Profil: %1 @@ -573,17 +663,17 @@ Grand Theft Auto V Snapmatic Bilder und Spielständen Schließen - + Export as &JPG picture... Exportiere als &JPG Bild... - + Export as &GTA Snapmatic... Exportiere als &GTA Snapmatic... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -592,19 +682,19 @@ Taste 2 - Overlay umschalten Pfeiltasten - Navigieren - - + + Snapmatic Picture Viewer Snapmatic Bildansicht - - + + Failed at %1 Fehlgeschlagen bei %1 - + Avatar Preview Mode Press 1 for Default View Avatar Vorschaumodus @@ -641,19 +731,19 @@ Drücke A für Standardansicht Avatar Vorschaumodus<br>Drücke A für Standardansicht - - + + No player Keine Spieler - - + + No crew Keine Crew - + Unknown Location Unbekannter Standort @@ -800,27 +890,27 @@ Drücke A für Standardansicht Lade Datei %1 von %2 Dateien - + %1 %2 %1 %2 - + Import exported file Importiere exportierte Datei - + &Import... &Importieren... - + Close profile Profil schließen - + &Close S&chließen @@ -841,29 +931,29 @@ Drücke A für Standardansicht Profil schließen - + Loading... Lade... - - + + Import... Importieren... - - - - - - - - - - - + + + + + + + + + + + Import Importieren @@ -872,41 +962,41 @@ Drücke A für Standardansicht Alle Profildateien (SGTA* PGTA*) - + Importable files (*.g5e *.jpg *.png SGTA* PGTA*) Importfähige Dateien (*.g5e *.jpg *.png SGTA* PGTA*) - - + + Savegames files (SGTA*) Spielstanddateien (SGTA*) - - + + Snapmatic pictures (PGTA*) Snapmatic Bilder (PGTA*) - + All image files (*.jpg *.png) Alle Bilddateien (*.jpg *.png) - - + + All files (**) Alle Dateien (**) - - + + Import file %1 of %2 files Importiere Datei %1 von %2 Dateien - + Import failed with... %1 @@ -915,46 +1005,46 @@ Drücke A für Standardansicht %1 - - + + Failed to read Snapmatic picture Fehler beim Lesen vom Snapmatic Bild - - + + Failed to read Savegame file Fehler beim Lesen von Spielstanddatei - + Can't import %1 because of not valid file format Kann %1 nicht importieren weil das Dateiformat nicht gültig ist - + Failed to import the Snapmatic picture, file not begin with PGTA or end with .g5e Fehlgeschlagen beim Importieren vom Snapmatic Bild, Datei beginnt nicht mit PGTA oder endet mit .g5e - + Failed to import the Snapmatic picture, the picture is already in the game Fehlgeschlagen beim Importieren vom Snapmatic Bild, dieses Bild ist bereits im Spiel - + %1Export Snapmatic pictures%2<br><br>JPG pictures make it possible to open the picture with a Image Viewer<br>GTA Snapmatic make it possible to import the picture into the game<br><br>Export as: %1Exportiere Snapmatic Bilder%2<br><br>JPG Bilder machen es möglich sie mit ein Bildansicht Programm zu öffnen<br>Das GTA Snapmatic Format macht es möglich sie wieder ins Game zu importieren<br><br>Exportieren als: - - - + + + No valid file is selected Keine gültige Datei wurde ausgewählt - + Enabled pictures: %1 of %2 Aktivierte Bilder: %1 von %2 @@ -963,35 +1053,35 @@ Drücke A für Standardansicht Fehlgeschlagen beim Importieren vom Snapmatic Bild, Datei beginnt nicht mit PGTA - + Failed to import the Snapmatic picture, can't copy the file into profile Fehlgeschlagen beim Importieren vom Snapmatic Bild, kann Snapmatic Bild nicht ins Profil kopieren - + Failed to import the Savegame, can't copy the file into profile Fehlgeschlagen beim Importieren vom Spielstand, kann Spielstanddatei nicht ins Profil kopieren - + Failed to import the Savegame, no Savegame slot is left Fehlgeschlagen beim Importieren vom Spielstand, kein Spielstandslot mehr frei - - + + JPG pictures and GTA Snapmatic JPG Bilder und GTA Snapmatic - - + + JPG pictures only Nur JPG Bilder - - + + GTA Snapmatic only Nur GTA Snapmatic @@ -1010,25 +1100,25 @@ Das GTA Snapmatic Format macht es möglich sie wieder ins Game zu importieren Exportieren als: - - + + No Snapmatic pictures or Savegames files are selected Keine Snapmatic Bilder oder Spielstände ausgewählt - - + + Remove selected Auswahl löschen - + You really want remove the selected Snapmatic picutres and Savegame files? Möchtest du wirklich die ausgewählten Snapmatic Bilder und Spielstanddateien löschen? - + Failed at remove the complete selected Snapmatic pictures and/or Savegame files Fehlgeschlagen beim kompletten entfernen der ausgewählten Snapmatic Bilder und/oder der Spielstanddateien @@ -1049,10 +1139,10 @@ Exportieren als: Fehlgeschlagenen beim Import vom Spielstand weil kein Spielstandslot mehr übrig ist - - - - + + + + Export selected Auswahl exportieren @@ -1073,12 +1163,12 @@ Exportieren als: Wie sollen wir mit den Snapmatic Bilder umgehen? - + Export selected... Auswahl exportieren... - + Initializing export... Initialisiere Export... @@ -1087,7 +1177,7 @@ Exportieren als: Initialisierung... - + Export failed with... %1 @@ -1117,13 +1207,13 @@ Exportieren als: Exportiere Datei %1 von %2 Dateien - + All profile files (*.g5e SGTA* PGTA*) Alle Profildateien (*.g5e SGTA* PGTA*) - - + + GTA V Export (*.g5e) GTA V Export (*.g5e) @@ -1145,7 +1235,7 @@ Exportieren als: SavegameDialog - + Savegame Viewer Spielstandanzeiger @@ -1177,7 +1267,7 @@ Exportieren als: Schließen - + Failed at %1 Fehlgeschlagen bei %1 @@ -1204,12 +1294,12 @@ Exportieren als: SPIELSTAND - %1<br>%2 - + View Ansehen - + Export Exportieren @@ -1219,30 +1309,30 @@ Exportieren als: Kopieren - + Delete Löschen - - - + + + Delete savegame Savegame löschen - + Export Savegame... Spielstand exportieren... - + SAVE %3 - %1<br>%2 SPIELSTAND %3 - %1<br>%2 - - + + WRONG FORMAT FALSCHES FORMAT @@ -1251,63 +1341,63 @@ Exportieren als: AUTO - + AUTOSAVE - %1 %2 AUTOSAVE - %1 %2 - + SAVE %3 - %1 %2 SPIELSTAND %3 - %1 %2 - + UNKNOWN UNKNOWN - + Are you sure to delete %1 from your savegames? Bist du sicher %1 von deinen Spielständen zu löschen? - + Failed at deleting %1 from your savegames Fehlgeschlagen beim Löschen %1 von deinen Spielständen - + &View A&nsehen - + &Remove Entfe&rnen - - + + &Select Au&swählen - + &Deselect A&bwählen - - + + Select &All &Alles auswählen - + &Deselect All Alles a&bwählen @@ -1336,17 +1426,17 @@ Exportieren als: Umschalt+S - + View savegame Spielstand ansehen - + Copy savegame Spielstand kopieren - + &Export &Exportieren @@ -1422,7 +1512,7 @@ Exportieren als: - + Snapmatic Properties Snapmatic Eigenschaften @@ -1466,7 +1556,7 @@ Exportieren als: Meme - + Snapmatic Title Snapmatic Titel @@ -1477,20 +1567,20 @@ Exportieren als: - + Crew: %1 (%2) Crew: %1 (%2) - + Title: %1 (%2) Titel: %1 (%2) - - + + Appropriate: %1 Angemessen: %1 @@ -1528,40 +1618,40 @@ Exportieren als: Cancel - - + + Edit Bearbeiten - + Yes Yes, should work fine Ja - + No No, could lead to issues Nein - + Patching of Snapmatic Properties failed because of I/O Error Patchen von Snapmatic Eigenschaften fehlgeschlagen wegen I/O Fehler - + New Snapmatic title: Neuer Snapmatic Titel: - + Snapmatic Crew Snapmatic Crew - + New Snapmatic crew: Neue Snapmatic Crew: @@ -1569,7 +1659,7 @@ Exportieren als: SnapmaticPicture - + PHOTO - %1 FOTO - %1 @@ -1608,18 +1698,18 @@ Exportieren als: - - + + Delete picture Bild löschen - + Are you sure to delete %1 from your Snapmatic pictures? - Bist du sicher %1 von deinen Snapmatic Bilder zu löschen? + Bist du sicher %1 von deine Snapmatic Bilder zu löschen? - + Edi&t Bearbei&ten @@ -1632,7 +1722,7 @@ Exportieren als: &Im Spiel deaktivieren - + &Export &Exportieren @@ -1645,12 +1735,12 @@ Exportieren als: Exportiere als &GTA Snapmatic - + Show &In-game &Im Spiel anzeigen - + Hide &In-game &Im Spiel ausblenden @@ -1663,49 +1753,49 @@ Exportieren als: FOTO - %1 - + &Edit Properties... &Eigenschaften bearbeiten... - + Export as &JPG picture... Exportiere als &JPG Bild... - + Export as &GTA Snapmatic... Exportiere als &GTA Snapmatic... - + &View A&nsehen - + &Remove Entfe&rnen - - + + &Select Au&swählen - + &Deselect A&bwählen - - + + Select &All Alles &auswählen - + &Deselect All Alles a&bwählen @@ -1753,9 +1843,9 @@ Exportieren als: Bist du sicher %1 von deinen Snapmatic Bilder zu löschen? - + Failed at deleting %1 from your Snapmatic pictures - Fehlgeschlagen beim Löschen %1 von deinen Snapmatic Bildern + Fehlgeschlagen beim Löschen von %1 von deinen Snapmatic Bildern @@ -1929,7 +2019,7 @@ Exportieren als: - + Select &GTA V Folder... Wähle &GTA V Ordner... @@ -2033,15 +2123,15 @@ Exportieren als: - + Select Profile Profil auswählen - - - + + + Select GTA V Folder... Wähle GTA V Ordner... @@ -2050,7 +2140,7 @@ Exportieren als: Wähle GTA V &Ordner... - + Open File... Datei öffnen... @@ -2071,15 +2161,15 @@ Exportieren als: &Über %1 - - - - + + + + Open File Datei öffnen - + Can't open %1 because of not valid file format Kann nicht %1 öffnen weil Dateiformat nicht gültig ist diff --git a/res/gta5sync_fr.qm b/res/gta5sync_fr.qm index 7b01f37b5d4135ae8ca8e8c3f0f2bdb2f5657e20..2b5dd18f811ea60d0e80dc7589cceb57babdac1b 100644 GIT binary patch delta 3001 zcmZvd3sh8f9>>2k++pV4I}Z?$@R6f52_o_k#0R3FAP9^I11N$pz^G#|APi}{TVuIa znquoLYiDycQaLG_$q$9s;p=j@p?_jB+6{{O%C z?|09CsoHf_^?b0W9>5wvj#U_T6;MA37}5dZ0x)bhpjiMctN|ht0pkcDY6hU+q0qP% zh%<7%9VkBy6m5pk_874EF$i4(u;2*@z2vek2p4TY>LqBBDJRbiO(y9HYJ%qVIY6ic zP47EEZk58Nzk#kbp9X{@BK|30!YGAHZ()K@a78>O_ykuh$Aohhz^=iBf6)nhGNO)W z0T1;f$|o=VO@)hkF>@-Nnp%!@2OXm_MZjcl4V=wS>z z#S4KDH=f(yM^DnQr#cWw)1hNSH=unGM{YL(mJak^;5q3FeD$&h$lrvUE-MguMkReV z5t!SiusBm;`KPMUd&dER2Gz2nAu0;Bsv0NXqUTptk8fWJjGL?aF#8UWoT2*GZ~&NY zRhPaq#E`zKu3c{fsyylqZWj=yQNL6X2ZWDOIA_25mDSS#>tyvlpF^q~g}MTTBc4|{ z@sh%{m86Fo%lD`|?ES#JF!iBBiNO3|_2E|lO@}};jLEj0_1{Sa=KMAWt3dk&#J;K7K9Qc<)@WL9+knZ(G`pW% z%&I=Gd41n;*3^*Z@>Lq{|AoIMsT1(~o&V@=wrRx<|NJrwkl5~DrLJQ;dZzlXC}e1b z4z0F-7%)QCN<(hudXd6e;}y=|rj7XNG`nG@w)~MpH1t`mGnG}Ye^=p*bnPSm;B$0< zw)Qj)e;`U*cj+=`#zk$zC+wc_A=>A6HqrA|ZOhpfw&`u{?vpO|zx{~zK=wC4ajW)F zUjmS_SbORei!N}j_V2mu|A0k0O$KYDtY0^}dlHAuW?ky--AqljE^V-t#cR>!ywc0= zQ0uG*8Ihn_y4u!V?3%ZAbtfGx;*GksV?X9#nyEW+iiX%yb=_wenV4SPjjk5(u>B_!2#8Zxg#GK7p{EgX={xl}MbO0ulYVyG8N zu?dW1Zj>}**>)QAvBI*g3YT|FxdYsnQz{kTFaj%Dq-uB=lHgY*=Z@C^^ImDw#+Ugm zut_guQGmQrp>du<>niE!s1RV*dg;CEO*AM;`XG&Ml=ivQ`{)~h7^!f?+X~ZK70$h* zaFJ2EIHr&jHc9$u-ymShk*;_S_5d>zq=ENXgvnj9>M)BZB|r{)qno+c$R+3LVfr`n zIwKi68YM&Y83 z@`+l?b=HzR?+lbZXHo`$NojJgn~GNqm;3(W;3Ruh{;-7~58G?x6XKe~iU3%fq z=}ehbFJ2!45}NhF&jc~oS^Cj$^2@kTt&fWMjt*_r7ig;~_iKG)HX}9Vq<+Jk7Isaq zep@u3#R2_xmB4R9sYkgf`dPo*M2lx<>5tuLHDaO61W!$Z#~ zoK|Q!y*Pwj;Q52$lQu7NKhMFnxU3_n=UvPz#a3cisX|GM#w3Mc!zSYgHj(}%zQ)x?$d@MPpzdnox-vI57Y->F|ye6IF@cg}hGT&XIDGj^g3Z|90JJYQCZDza=DzY<@eX8{93FfNlPO-Mg13QmDRgbOd1=9aY&)#@kmAt?7TPgY4SaT z$9sP(kMzWiOQC%+_7ocAlOU&7)-}23I_))e%T>PE88MHCT^tg2MxgHA@nP1~-1PDV z8RfS8RBJ&_s%=63|2;niE8ym@9*vkzLt?O;@pN<57u&>1s6riTx%@wB5OZJAeFf!t z`3o|#a?-uc#?W{h8fa2A#rVXTsld(^pO10(&IZ^T?5@U|y8*6z%-d^xAaDc^%@0G+Zuh^u^W^XST%Ocf)Isjt*ghR{NIpzMHvrx4qKd=Jwpt>!_$58BP{Weo%Mwcs<2pC>3S0$Hq)$ delta 2421 zcmY+Fc~n&A8OEPGbB8BkJI)7c`l1B&}GF%Xaz#+p06$pIa4lGp>_}x@89zh**fq(=A z4cSW^tugx}%!--~M08+wDHB_^4s$kLhZ8Y#FfU>!;OB>wqx_KLLUDnU8E%C$Cj%JK zi_OP-naM&NEb(FnWjOb!4j8B4_I2);qj9Iv04#{W{mOI(>MtmtP6iT0jalg$^S>1Q z4*LU^RYKXKK_=WP)J*$mQ)DL(--nuUAjlR#9f@OU2A2-oFb=7B|R zx{6IK;qpzo`r1msr&zatc_{GW>l)+Dx?l1BoeMQ6KO#NKv`7x#rzm4)IvOIgCn zR?)ro57b1Z#-x=RbN(*6&u`@Z$Kt0qHvwZ`6YmtX1H+Gr55E2jMR!7c*xSQ(g81Zu zg8>H^#34ITR>R0cy8(NIVM@iXfL{b?%-!fTEWXyo%-akV`-_2)(T0Y}%rMj6aNtoE z5H`xtydjTj{n&8gNCz--p@$)|4bb26@VmsZD`@t}EU;4|vPZG53V3Ok$BJxL&|sCM z+rxoT<&rX3OUGw5&f26gc~F}8q?_V)?v<9UIsY79id@g;F#&PyMYcwQL1B(ZYewTtd{~-g$xJS+GMVB%D!2yaf$e4P_O|=`1>8Dr; zueXd92bzHC$l(z&sIIasc=0230JJW%Z&GMC4j`M6q?hB3t#w?TX_A#+C zH+c|v*+UTq=r~DH%-;UAZ&7S%VLV{1SM2NOa?Fk^Q^Q%hlzL@mSpylVaq%9FB|S=7 zKljbMpyb^31WNZRC13?cs7m>tj!}$~vgOT2UPz~uJ#%?pzN67}P-CiFIX}i5nDw>N zGf>BXW+_+Wog9<6nTmVuX+Zj|M&EH7W1neE$k&){Rr(mus z=I@pM9*Stc2B2dr3Ps=Cp09urMdw>Yw>l_+&f(rw<5d(b9T8a9lo9x8oM)I7Qv*!!gXLQ5%AO!;O6!vv;T$D`>c^hUB?2AN9SMeva#Y z)m=-+rDN3Iw@TT2S^anW4fa^n=;><`|2Ug1$}-6VgPf}GOn!eI&2euvIfEwti;>?m zEtE=tDaodq6qd#@)>NOclNFg_+C7D9;~Z0iAhP!tG-l~d%@zh2^S0^2-5OrWiKcde zRLjgS^i!;vx#qxs@_gobb7Vco(ksv$xtTYUVl&5@DbC3t#nY;768Q5L(jTRR#j$P(km2@yQ)BG^~8hieQr#N(_hI)FQUS7^| zJ)<%4&z8|E8DM0(CFTKJoTgZklUO0Y7LB>0rLy-F|JH-!Eo-*1CsL=S@mV(2*)NFZ_X$NbicpOZ#6Uqj>QIi=C~;j@9734uDWB7x@BPFxVuAzy++{}u&xD|mzinJa z{-1>*FD_%RP6&5hwA;$;QPCkaYYHo4qKm3SVifIZpZ@dJg6gW3rNyRdPE0M|jU;cX+mDw5jX&&d + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> +<br/> +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Publié le %4<br/> +Compilé avec Qt %5<br/> +Fonctionne avec Qt %6<br/> +<br/> +%7 + + + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> +%8<br/> +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Publié le %4<br/> +Compilé avec Qt %5<br/> +Fonctionne avec Qt %6<br/> +%8<br/> +%7 + + <span style=" font-weight:600;">%8</span><br/> <br/> %9<br/> @@ -49,7 +93,7 @@ Compiled with Qt %2<br/> Running with Qt %3<br/> <br/> Copyright &copy; <a href="%5">%6</a> %7<br/>%8 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> - <span style=" font-weight:600;">%8</span><br/> + <span style=" font-weight:600;">%8</span><br/> <br/> %9<br/> <br/> @@ -68,13 +112,51 @@ Copyright &copy; <a href="%5">%6</a> %7<br/> + Using %1 %2 + Exp. Using libmyfuck + Utilise %1 %2 + + + + Translated by %1 + Exp. Translated by Syping + Traduit par %1 + + + + NAME_OF_TRANSLATOR + Your Name (The person behind your screen looking at this text!) + Ganjalo + + + + TRANSLATOR_PROFILE + mailto: http:// https:// Exp. https://github.com/Syping/ + https://github.com/Ganjalo/ + + + A project for viewing Grand Theft Auto V Snapmatic<br/> Pictures and Savegames Un outil pour gérer les photos Snapmatic<br/> et les fichiers de sauvegarde de Grand Theft Auto V - + + Copyright &copy; <a href="%1">%2</a> %3 + Copyright &copy; <a href="%1">%2</a> %3 + + + + %1 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + %1 est distribué sous license <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 est distribué sous license <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + A project for viewing and sync Grand Theft Auto V Snapmatic<br/> Pictures and Savegames Un outil pour gérer et synchroniser les photos Snapmatic<br/> @@ -86,7 +168,7 @@ et les fichiers de sauvegarde de Grand Theft Auto V No Crew - + Aucun crew @@ -352,44 +434,44 @@ et les fichiers de sauvegarde de Grand Theft Auto V &Annuler - + %1 (%2 if available) System like PC System = %1, System Language like Deutsch = %2 %1 (%2 si disponible) - + System System like PC System Système - + %1 %1 %1 - + The new Custom Folder will initialize after you restart %1. Le répertoire personnalisé sera actif au prochain lancement de %1. - + The language change will take effect after you restart %1. Le changement de langue sera actif au prochain lancement de %1. - + No Profile No Profile, as default Aucun profil - - + + Profile: %1 Profil : %1 @@ -494,17 +576,17 @@ et les fichiers de sauvegarde de Grand Theft Auto V Fichier invalide - + Export as &JPG picture... Exporter comme image &JPG... - + Export as &GTA Snapmatic... Exporter comme &GTA Snapmatic... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate @@ -513,19 +595,19 @@ 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 - + Avatar Preview Mode Press 1 for Default View Mode Aperçu Avatar @@ -536,19 +618,19 @@ Appuyer sur 1 pour le mode par défaut Aperçu avatar<br>Appuyer sur A pour la vue par défaut - - + + No player Aucun joueur - - + + No crew Aucun crew - + Unknown Location Emplacement inconnu @@ -602,27 +684,27 @@ Appuyer sur 1 pour le mode par défaut Chargement du fichier %1 sur %2 - + %1 %2 %1 %2 - + Import exported file Importer un profil - + &Import... &Importer... - + Close profile Fermer - + &Close &Fermer @@ -634,34 +716,34 @@ Appuyer sur 1 pour le mode par défaut Copie du fichier %1 sur %2 - + Enabled pictures: %1 of %2 Photos activées : %1 sur %2 - + Loading... Chargement... - - + + Import... Importer... - - - - - - - - - - - + + + + + + + + + + + Import Importer @@ -670,31 +752,31 @@ Appuyer sur 1 pour le mode par défaut Fichiers de profil GTA (SGTA* PGTA*) - - + + Savegames files (SGTA*) Fichiers de sauvegarde GTA (SGTA*) - - + + Snapmatic pictures (PGTA*) Photos Snapmatic (PGTA*) - - + + All files (**) Tous les fichiers (**) - - + + Import file %1 of %2 files Importation du fichier %1 sur %2 - + Import failed with... %1 @@ -703,26 +785,26 @@ Appuyer sur 1 pour le mode par défaut %1 - - - + + + No valid file is selected Fichier invalide - - + + Failed to read Snapmatic picture Impossible d'ouvrir la photo Snapmatic - - + + Failed to read Savegame file Impossible de lire le fichier de sauvegarde - + Can't import %1 because of not valid file format Impossible d'importer %1, format invalide @@ -731,83 +813,83 @@ Appuyer sur 1 pour le mode par défaut Impossible d'importer la photo Snapmatic,nom de fichier incorrect (PGTA*) - + Importable files (*.g5e *.jpg *.png SGTA* PGTA*) Fichiers importables (*.g5e *.jpg *.png SGTA* PGTA*) - + All image files (*.jpg *.png) Tous les fichiers image (*.jpg *.png) - + Failed to import the Snapmatic picture, file not begin with PGTA or end with .g5e Impossible d'importer la photo Snapmatic,nom de fichier incorrect (PGTA*, *.g5e) - + Failed to import the Snapmatic picture, the picture is already in the game Impossible d'importer la photo Snapmatic, un fichier du même nom existe déjà - + Failed to import the Snapmatic picture, can't copy the file into profile Impossible d'importer la photo Snapmatic, impossible de copier le fichier dans le profil - + Failed to import the Savegame, can't copy the file into profile Impossible d'importer la sauvegarde, impossible de copier le fichier dans le profil - + Failed to import the Savegame, no Savegame slot is left Impossible d'importer la sauvegarde, aucun emplacement libre - - - - + + + + Export selected Exporter la sélection - - + + JPG pictures and GTA Snapmatic Images JPG et GTA Snapmatic - - + + JPG pictures only Images JPG seulement - - + + GTA Snapmatic only GTA Snapmatic seulement - + %1Export Snapmatic pictures%2<br><br>JPG pictures make it possible to open the picture with a Image Viewer<br>GTA Snapmatic make it possible to import the picture into the game<br><br>Export as: %1Exporter les photos Snapmatic%2<br><br>Les fichiers JPG permettent d'ouvrir les photos avec une visionneuse d'images<br>Les GTA Snapmatic permettent d'importer les photos dans le jeu<br><br>Exporter comme : - + Export selected... Exporter la sélection... - + Initializing export... Initialisation de l'export... - + Export failed with... %1 @@ -816,36 +898,36 @@ Appuyer sur 1 pour le mode par défaut %1 - - + + No Snapmatic pictures or Savegames files are selected Aucun fichier de sauvegarde ou photo Snapmatic sélectionné - - + + Remove selected Supprimer la sélection - + You really want remove the selected Snapmatic picutres and Savegame files? Supprimer la sélection ? - + Failed at remove the complete selected Snapmatic pictures and/or Savegame files Impossible de supprimer la sélection - + All profile files (*.g5e SGTA* PGTA*) Tous les fichiers de profil (*.g5e SGTA* PGTA*) - - + + GTA V Export (*.g5e) GTA V Export (*.g5e) @@ -867,7 +949,7 @@ Appuyer sur 1 pour le mode par défaut SavegameDialog - + Savegame Viewer Gestionnaire de sauvegardes @@ -887,7 +969,7 @@ Appuyer sur 1 pour le mode par défaut &Fermer - + Failed at %1 Échec de %1 @@ -900,45 +982,45 @@ Appuyer sur 1 pour le mode par défaut Sauvegarde - + SAVE %3 - %1<br>%2 SAUVEGARDE %3 - %1<br>%2 - + View savegame Voir la sauvegarde - + View Voir - + Copy savegame Copier la sauvegarde - + Export Exporter - - - + + + Delete savegame Supprimer la sauvegarde - + Delete Supprimer - + &Export &Exporter @@ -981,74 +1063,74 @@ Appuyer sur 1 pour le mode par défaut Fichier invalide - + Export Savegame... Exporter la sauvegarde... - + AUTOSAVE - %1 %2 SAUVEGARDE AUTO - %1 %2 - + SAVE %3 - %1 %2 SAUVEGARDE %3 - %1 %2 - - + + WRONG FORMAT Format invalide - + UNKNOWN Inconnu - + Are you sure to delete %1 from your savegames? Supprimer %1 ? - + Failed at deleting %1 from your savegames Impossible de supprimer %1 - + &View &Voir - + &Remove &Supprimer - - + + &Select &Sélectionner - + &Deselect &Déselectionner - - + + Select &All Sélectionner to&ut - + &Deselect All &Déselectionner tout @@ -1058,7 +1140,7 @@ Appuyer sur 1 pour le mode par défaut - + Snapmatic Properties Propriétés Snapmatic @@ -1102,31 +1184,31 @@ Appuyer sur 1 pour le mode par défaut Meme - + Snapmatic Title Titre Snapmatic Snapmatic Values - + Valeurs Snapmatic - + Crew: %1 (%2) - + Crew : %1 (%2) - + Title: %1 (%2) Titre : %1 (%2) - - + + Appropriate: %1 Valide : %1 @@ -1156,50 +1238,50 @@ Appuyer sur 1 pour le mode par défaut A&nnuler - - + + Edit Éditer - + Yes Yes, should work fine Oui, devrait fonctionner Oui - + No No, could lead to issues Non, pourrait causer des erreurs Non - + Patching of Snapmatic Properties failed because of I/O Error La modification des propriétés Snapmatic a échoué : erreur d'entrée/sortie - + New Snapmatic title: Nouveau titre Snapmatic : - + Snapmatic Crew - + Crew Snapmatic - + New Snapmatic crew: - + Nouveau crew Snapmatic : SnapmaticPicture - + PHOTO - %1 PHOTO - %1 @@ -1248,8 +1330,8 @@ Appuyer sur 1 pour le mode par défaut - - + + Delete picture Supprimer la photo @@ -1259,79 +1341,79 @@ 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 - + Edi&t Édi&ter - + Show &In-game &Visible en jeu - + Hide &In-game &Invisible en jeu - + &Edit Properties... Modifier les &propriétés... - + &Export &Exporter - + Export as &JPG picture... Exporter comme image &JPG... - + Export as &GTA Snapmatic... Exporter comme &GTA Snapmatic... - + &View &Voir - + &Remove S&upprimer - - + + &Select &Sélectionner - + &Deselect &Déselectionner - - + + Select &All Sélectionner &tout - + &Deselect All &Déselectionner tout @@ -1488,15 +1570,15 @@ Appuyer sur 1 pour le mode par défaut - + Select &GTA V Folder... Modifier l'emplacement de &GTA V... - - - + + + Select GTA V Folder... Modifier l'emplacement de GTA V... @@ -1544,25 +1626,25 @@ Appuyer sur 1 pour le mode par défaut - + Select Profile Sélectionner un profil - + Open File... Ouvrir... - - - - + + + + Open File Ouvrir - + Can't open %1 because of not valid file format Impossible d'ouvrir %1, format invalide diff --git a/res/gta5sync_ru.qm b/res/gta5sync_ru.qm new file mode 100644 index 0000000000000000000000000000000000000000..a9d9ff463bcba95b2147bfb30fbcf779f2553e14 GIT binary patch literal 29910 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 About %1 - + О программе %1 - <span style=" font-weight:600;">%8</span><br/> + <span style=" font-weight:600;">%1</span><br/> <br/> -%9<br/> +%2<br/> <br/> -Project version: %1<br/> -Project build: %4<br/> -Compiled with Qt %2<br/> -Running with Qt %3<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> <br/> -Copyright &copy; <a href="%5">%6</a> %7<br/>%8 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> - +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Версия %3<br/> +Сделано %4<br/> +Сделано с Qt %5<br/> +Выполняется на Qt %6<br/> +<br/> +%7 + + + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Version %3<br/> +Created on %4<br/> +Built with Qt %5<br/> +Running with Qt %6<br/> +%8<br/> +%7 + <span style=" font-weight:600;">%1</span><br/> +<br/> +%2<br/> +<br/> +Версия %3<br/> +Сделано %4<br/> +Сделано с Qt %5<br/> +Выполняется на Qt %6<br/> +%8<br/> +%7 &Close - + &Закрыть <span style=" font-weight:600;">gta5sync</span><br/><br/>A project for viewing and sync Grand Theft Auto 5 Snapmatic Pictures and Savegames<br/><br/>Project version: %1<br/>Compiled with Qt %2<br/>Running with Qt %3<br/><br/>Copyright © <a href="https://github.com/Syping/">Syping</a> 2016<br/>gta5sync is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> @@ -41,15 +72,55 @@ Copyright &copy; <a href="%5">%6</a> %7<br/>%8 i - A project for viewing Grand Theft Auto V Snapmatic<br/> -Pictures and Savegames - + Using %1 %2 + Exp. Using libmyfuck + Использует %1 %2 - + + Translated by %1 + Exp. Translated by Syping + Перевёл %1 + + + + NAME_OF_TRANSLATOR + Your Name (The person behind your screen looking at this text!) + VADemon + + + + TRANSLATOR_PROFILE + mailto: http:// https:// Exp. https://github.com/Syping/ + https://github.com/VADemon/ + + + + A project for viewing Grand Theft Auto V Snapmatic<br/> +Pictures and Savegames + Проект для просмотра Grand Theft Auto V Snapmatic<br/> +картинок и сохранений + + + + Copyright &copy; <a href="%1">%2</a> %3 + Copyright &copy; <a href="%1">%2</a> %3 + + + + %1 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + %1 под лицензией <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 is licensed under <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + Copyright &copy; <a href="%1">%2</a> %3<br/>%4 под лицензией <a href="https://www.gnu.org/licenses/gpl-3.0.html#content">GNU GPLv3</a> + + + A project for viewing and sync Grand Theft Auto V Snapmatic<br/> Pictures and Savegames - + Проект для просмотра и синхронизирования <br/> +Grand Theft Auto V Snapmatic картинок и сохранений @@ -57,7 +128,7 @@ Pictures and Savegames No Crew - + Вне банды @@ -65,62 +136,63 @@ Pictures and Savegames Dialog - + Возможно не это имелось ввиду, немецкого перевода нету + Диалоговое окно &JPEG/PNG format - + Формат &JPEG/PNG GTA &Snapmatic format - + Формат GTA &Snapmatic Export Format - + Формат экспорта Export Size - + Размер экспорта Default &Size - + По &умолчанию &Desktop Size - + Размер рабо&чего стола &Custom Size - + &Другой размер Custom Size: - + Другой размер: x - + x &Export - + &Экспортировать &Close - + &Закрыть @@ -128,37 +200,38 @@ Pictures and Savegames Import... - + Импортировать... Settings - + Настройки &Keep Aspect Ratio - + О&ставить соотношение сторон &Ignore Aspect Ratio - + &Игнорировать соотношение сторон &Avatar - + &Аватар &OK - + &ОК &Cancel - + Я не уверен насчет горячих клавиш... + От&мена @@ -166,203 +239,204 @@ Pictures and Savegames Content Open/Select Mode - + Открывать/выбирать содержимое Open with Singleclick - + Открывать одним щелчком Open with Doubleclick - + Открывать двойным щелчком Select with Singleclick - + Выбирать одним щелчком Default Profile - + Профиль по умолчанию Pictures - + Картинки Export Size - + Размер экспорта Screen Resolution: %1x%2 - + Разрешение экрана: %1x%2 Default: %1x%2 - + По умолчанию: %1x%2 %1 - Settings - + %1 - Настройки Profiles - + Профили Custom GTA V Folder - + Другая папка GTA V Force using Custom Folder - + Использовать эту папку GTA V ... - + ... Custom Size: - + Другой размер: x - + x Ignore Aspect Ratio - + Игнорировать соотношение сторон Export Quality - + Качество экспорта Enable Custom Quality - + Использовать другое качество Quality: - + Качество: %1% - + %1% Picture Viewer - + Просмотрщик картинок Enable Navigation Bar - + Вкл. навигационную панель Players - + Игроки ID - + ID Name - + Имя Language - + Язык Sync - + Sync Sync is not implemented at current time - + Синхронизация пока ещё не реализована &OK OK, Cancel, Apply - + &ОК &Cancel OK, Cancel, Apply - + От&мена - + System System like PC System - + может быть надо прилагательное + Система - + %1 (%2 if available) System like PC System = %1, System Language like Deutsch = %2 - + %1 (%2 если имеется) - + %1 %1 - - - - - The new Custom Folder will initialize after you restart %1. - + %1 - The language change will take effect after you restart %1. - + The new Custom Folder will initialize after you restart %1. + Другая папка будет загружена после перезапуска %1. - + + The language change will take effect after you restart %1. + Язык изменится после перезапуска %1. + + + No Profile No Profile, as default - + Нет профиля - - + + Profile: %1 - + Профиль: %1 @@ -388,7 +462,10 @@ Pictures and Savegames <span style=" font-weight:600;">Location: </span>%7 (%1, %2, %3)<br/> <span style=" font-weight:600;">Players: </span>%4 (Crew %5)<br/> <span style=" font-weight:600;">Created: </span>%8 - + <span style=" font-weight:600;">Заголовок: </span>%6<br/> +<span style=" font-weight:600;">Место: </span>%7 (%1, %2, %3)<br/> +<span style=" font-weight:600;">Игроки: </span>%4 (Банда %5)<br/> +<span style=" font-weight:600;">Сделано: </span>%8 @@ -398,18 +475,18 @@ Pictures and Savegames &Export - + &Экспорт &Close - + &Закрыть Export - Экспорт + Экспортировать Copy @@ -421,61 +498,64 @@ Pictures and Savegames Закрыть - + Export as &JPG picture... - + Эксп&ортировать как картинку JPG... - + Export as &GTA Snapmatic... - + Экс&портировать как GTA Snapmatic... - + Key 1 - Avatar Preview Mode Key 2 - Toggle Overlay Arrow Keys - Navigate - + Клавиша 1 - Режим показа аватарки +Клавиша 2 - Вкл./выкл. оверлей +Стрелки - Навигация - - + + Snapmatic Picture Viewer Просмотрщик фотографий Snapmatic - - + + Failed at %1 Ошибка при %1 - + Avatar Preview Mode Press 1 for Default View - + Режим просмотра аватарок +Нажмите 1 для стандартного просмотра - - + + No player Игроков нет - - + + No crew Без группы - + Unknown Location - + Неизвестное место Export as JPG picture... - + Экспортировать картинкой JPG... @@ -493,7 +573,7 @@ Press 1 for Default View Export as JPG picture - + Экспортировать как картинку JPG @@ -509,7 +589,7 @@ Press 1 for Default View Export as GTA Snapmatic - + Экспортировать как GTA Snapmatic @@ -527,7 +607,7 @@ Press 1 for Default View Exported Snapmatic to "%1" because of using the .auto extension. - + Snapmatic был экспортирован как "%1" из-за расширеня файла. @@ -542,17 +622,17 @@ Press 1 for Default View Export as GTA Snapmatic... - + Экспортировать как GTA Snapmatic... GTA V Export (*.g5e) - + GTA V Export (*.g5e) GTA V Raw Export (*.auto) - + GTA V Экспорт Исходника (*.auto) @@ -581,29 +661,29 @@ Press 1 for Default View Загружается файл %1 из %2 - + %1 %2 - - - - - Import exported file - + %1 %2 - &Import... - + Import exported file + Импортировать экспортированный файл - - Close profile - + + &Import... + &Импортировать... + Close profile + Закрыть профиль + + + &Close - + &Закрыть Import copy @@ -614,171 +694,173 @@ Press 1 for Default View Закрыть профиль - + Loading... Загрузка... - - + + Import... - + Импортировать... - - - - - - - - - - - + + + + + + + + + + + Import - + Импортировать All profile files (SGTA* PGTA*) Все файлы профиля (SGTA* PGTA*) - - + + Savegames files (SGTA*) Файлы сохранения (SGTA*) - - + + Snapmatic pictures (PGTA*) Картинка Snapmatic (PGTA*) - - + + All files (**) Все файлы (**) - - + + Import file %1 of %2 files - + Импортируются файлы %1 из %2 - + Import failed with... %1 - + Ошибка при импорте... + +%1 - - + + Failed to read Snapmatic picture Не удалось загрузить картинку Snapmatic - - + + Failed to read Savegame file Не удалось загрузить файл сохранения - + Can't import %1 because of not valid file format Не получилось импортировать %1 из-за неправильного формата файла - - - + + + No valid file is selected Выбранный файл неверен - + Enabled pictures: %1 of %2 - + Включенные картинки: %1 из %2 - + Importable files (*.g5e *.jpg *.png SGTA* PGTA*) - + Подходящие для импорта файлы (*.g5e *.jpg *.png SGTA* PGTA*) - + All image files (*.jpg *.png) - + Все изображения (*.jpg *.png) - + Failed to import the Snapmatic picture, file not begin with PGTA or end with .g5e - + Не удалось импортировать картинку Snapmatic, название не начинается с PGTA или не заканчивается с .g5e - + Failed to import the Snapmatic picture, the picture is already in the game - + Не удалось импортировать картинку Snapmatic, картинка уже в игре - + Failed to import the Snapmatic picture, can't copy the file into profile - - - - - Failed to import the Savegame, can't copy the file into profile - + Не удалось импортировать картинку Snapmatic, не получилось скопировать файл в профиль + Failed to import the Savegame, can't copy the file into profile + Не удалось импортировать сохранение, не получилось скопировать файл в профиль + + + Failed to import the Savegame, no Savegame slot is left - + Не удалось импортировать сохранение, нет пустых ячеек под сохранения - - + + JPG pictures and GTA Snapmatic - + Картинки JPG и GTA Snapmatic - - + + JPG pictures only - + Только картинки JPG - - + + GTA Snapmatic only - + Только GTA Snapmatic - - + + No Snapmatic pictures or Savegames files are selected - + Не выделены ни один Snapmatic или сохранение - - + + Remove selected - + Снять выделение - + You really want remove the selected Snapmatic picutres and Savegame files? - + Точно ли хочешь удалить выбранные картинки Snapmatic и файлы сохранений? - + Failed at remove the complete selected Snapmatic pictures and/or Savegame files - + Не удалось удалить полностью выбранные картинки Snapmatic и/или файлы сохранений Failed to import copy of Snapmatic picture because the file not begin with PGTA @@ -797,52 +879,54 @@ Press 1 for Default View Не получилось имортировать копию сохранения, потому что не осталось свободных под них слотов - - - - + + + + Export selected - + Экспортировать выделенное - + %1Export Snapmatic pictures%2<br><br>JPG pictures make it possible to open the picture with a Image Viewer<br>GTA Snapmatic make it possible to import the picture into the game<br><br>Export as: - + %1Эскпортировать картинки Snapmatic%2<br><br>Картинки JPG можно открыть любым просмотрщиком<br>Картинки формата GTA Snapmatic можно снова импортировать в игру<br><br>Экспортировать как: - + Export selected... - + Экпортировать выделенное... - + Initializing export... - + Подготавливаю эскпорт... - + Export failed with... %1 - + Экспорт провалился на... + +%1 Export file %1 of %2 files - + Экспортируется файл %1 из %2 - + All profile files (*.g5e SGTA* PGTA*) - + Все файлы профиля (*.g5e SGTA* PGTA*) - - + + GTA V Export (*.g5e) - + GTA V Export (*.g5e) @@ -850,19 +934,19 @@ Press 1 for Default View Font - + Шрифт Selected Font: %1 - + Выбранный шрифт: %1 SavegameDialog - + Savegame Viewer Просмотрщик сохранений @@ -874,12 +958,12 @@ Press 1 for Default View &Export - + &Экспорт &Close - + &Закрыть Copy @@ -890,7 +974,7 @@ Press 1 for Default View Закрыть - + Failed at %1 Ошибка при %1 @@ -907,121 +991,123 @@ Press 1 for Default View Третий путь (100%) - 00/00/00 00:00:00 - + View savegame - + Просмотреть сохранение - + View Просмотр - + Export - Экспорт + Экспорт Copy Копировать - + Delete Удалить - - - + + + Delete savegame Удалить сохранение - + Export Savegame... - + Экспортировать сохранение... - + SAVE %3 - %1<br>%2 - + СОХРАНЕНИЕ %3 - %1<br>%2 - - + + WRONG FORMAT - + НЕВЕРНЫЙ ФОРМАТ - + AUTOSAVE - %1 %2 - + АВТОСОХРАНЕНИЕ - %1 +%2 - + SAVE %3 - %1 %2 - + СОХРАНЕНИЕ %3 - %1 +%2 - + UNKNOWN - + НЕИЗВЕСТНО - + Are you sure to delete %1 from your savegames? Вы уверены, что хотите удалить сохранение %1? - + Failed at deleting %1 from your savegames Не удалось удалить сохранение %1 - - - &View - - - - - &Remove - - - - &Select - - - - - &Deselect - + &View + &Просмотр - + &Remove + &Удалить + + + + + &Select + &Выбрать + + + + &Deselect + Сн&ять выбор + + + + Select &All - + В&ыбрать все - + &Deselect All - + Снять выбо&р со всех - + Copy savegame Копировать сохранение - + &Export - + &Экспортировать @@ -1039,22 +1125,22 @@ Press 1 for Default View Export Savegame - + Экспортировать сохранение Overwrite %1 with current Savegame? - + Перезаписать %1 текущим сохранением? Failed to overwrite %1 with current Savegame - + Не удалось переписать %1 текущим сохранением Failed to export current Savegame - + Не удалось экспортировать текущее сохранение Overwrite %1 with current savegame? @@ -1079,144 +1165,144 @@ Press 1 for Default View - + Snapmatic Properties - + Свойства Snapmatic Snapmatic Type - + Тип Snapmatic Editor - + Редактор Selfie - + Автопортрет Regular - + Обычный Mugshot - + Под арестом Director - + Director Snapmatic Values - + Значения в Snapmatic - + Crew: %1 (%2) - + Банда: %1 (%2) Meme - + Meme - + Snapmatic Title - + Заголовок Snapmatic - + Title: %1 (%2) - + Заголовок: %1 (%2) - - + + Appropriate: %1 - + Разумные: %1 Extras - + Дополнительно Qualify as Avatar automatically at apply - + При применении автоматически классифицировать как аватар Qualify as Avatar allows you to use this Snapmatic as a Social Club profile picture - + C классификацией аватара можно использовать этот Snapmatic в профиле на Social Club &Apply - + &Применить &Cancel - - - - - - Edit - + &Отмена + + Edit + Правка + + + Yes Yes, should work fine - + Да - + No No, could lead to issues - + Нет - + Patching of Snapmatic Properties failed because of I/O Error - + Не удалось измененить свойства Snapmatic из-за проблемы ввода/вывода - + New Snapmatic title: - + Новый заголовок Snapmatic: - + Snapmatic Crew - + Банда на Snapmatic - + New Snapmatic crew: - + Новая банда на Snapmatic: SnapmaticPicture - + PHOTO - %1 - + ФОТО - %1 @@ -1234,7 +1320,7 @@ Press 1 for Default View View picture - + Просмотр картинки @@ -1258,87 +1344,87 @@ 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 - + Edi&t - - - - - Show &In-game - - - - - Hide &In-game - + &Правка - &Edit Properties... - - - - - &Export - - - - - Export as &JPG picture... - - - - - Export as &GTA Snapmatic... - + Show &In-game + Показывать в &игре - &View - + Hide &In-game + Ск&рыть в игре + + + + &Edit Properties... + &Изменить свойства... - &Remove - + &Export + &Экспорт - - - &Select - + + Export as &JPG picture... + Эксп&ортировать как картинку JPG... - - &Deselect - + + Export as &GTA Snapmatic... + Экс&портировать как GTA Snapmatic... + + + + &View + По&казать - - Select &All - + &Remove + У&далить - + + + &Select + &Выделить + + + + &Deselect + Сн&ять выделение + + + + + Select &All + В&ыбрать все + + + &Deselect All - + Снять выбо&р со всех @@ -1365,128 +1451,128 @@ Press 1 for Default View %1 %2 - + %1 %2 &File - + &Файл &Help - + &Справка &Edit - + &Правка &Profile - + П&рофиль &Exit - + В&ыход Exit - + Выход Close &Profile - + Закрыть п&рофиль Ctrl+End - + Ctrl+End &Settings - + Оп&ции Ctrl+Del - + Ctrl+Del &Import files... - + &Импортировать файлы... Ctrl+I - + Ctrl+I - + Select &GTA V Folder... - + Выбрать &папку GTA V... Ctrl+G - + Ctrl+G Show In-gam&e - + Показывать в и&гре Shift+E - + Shift+E Hi&de In-game - + Скры&ть в игре Shift+D - + Shift+D &Close - + &Закрыть &Selection visibility - + В&идимость выделение Select &All - + В&ыбрать все &Deselect All - + Снять выбо&р со всех &Export selected... - + &Экпортировать выделенное... &Remove selected - + &Удалить выделенное File @@ -1522,71 +1608,71 @@ Press 1 for Default View &Open File... - + &Открыть файл... Ctrl+O - + Ctrl+O Ctrl+S - + Ctrl+S Ctrl+E - + Ctrl+E Ctrl+D - + Ctrl+D - + Select Profile - + Выбор профиля - - - + + + Select GTA V Folder... - + Выбрать папку GTA V... %2 - %1 - + %2 - %1 &About %1 - + &О %1 - + Open File... - + Открыть файл... - - - - + + + + Open File - + Открыть файл - + Can't open %1 because of not valid file format - + Не удалось открыть %1 из-за неверного формата файла gta5sync @@ -1595,7 +1681,7 @@ Press 1 for Default View &Reload - + Пере&загрузить GTA V Folder not found! diff --git a/lang/qt_ru.qm b/res/qt_ru.qm old mode 100755 new mode 100644 similarity index 100% rename from lang/qt_ru.qm rename to res/qt_ru.qm diff --git a/lang/qtbase_ru.qm b/res/qtbase_ru.qm old mode 100755 new mode 100644 similarity index 100% rename from lang/qtbase_ru.qm rename to res/qtbase_ru.qm