diff --git a/.ci/app.rc b/.ci/app.rc index ec976d2..92f6518 100644 --- a/.ci/app.rc +++ b/.ci/app.rc @@ -24,7 +24,7 @@ BEGIN VALUE "FileDescription", "gta5view" VALUE "FileVersion", "MAJOR_VER.MINOR_VER.PATCH_VERSTR_BUILD_VER" VALUE "InternalName", "gta5view" - VALUE "LegalCopyright", "Copyright � 2016-2020 Syping" + VALUE "LegalCopyright", "Copyright � 2016-2021 Syping" VALUE "OriginalFilename", "gta5view.exe" VALUE "ProductName", "gta5view" VALUE "ProductVersion", "MAJOR_VER.MINOR_VER.PATCH_VERSTR_BUILD_VER" diff --git a/.ci/gta5view.nsi b/.ci/gta5view.nsi index 6302b72..9b16d1b 100644 --- a/.ci/gta5view.nsi +++ b/.ci/gta5view.nsi @@ -3,8 +3,8 @@ !define APP_NAME "gta5view" !define COMP_NAME "Syping" !define WEB_SITE "https://gta5view.syping.de/" -!define VERSION "1.9.0.0" -!define COPYRIGHT "Copyright © 2016-2020 Syping" +!define VERSION "1.9.2.0" +!define COPYRIGHT "Copyright © 2016-2021 Syping" !define DESCRIPTION "Grand Theft Auto V Savegame and Snapmatic Viewer/Editor" !define INSTALLER_NAME "gta5view_setup.exe" !define MAIN_APP_EXE "gta5view.exe" diff --git a/PictureDialog.cpp b/PictureDialog.cpp index e77ea73..958d825 100644 --- a/PictureDialog.cpp +++ b/PictureDialog.cpp @@ -199,7 +199,7 @@ void PictureDialog::setupPictureDialog() } installEventFilter(this); - installEventFilter(ui->labPicture); + // installEventFilter(ui->labPicture); // DPI calculation ui->hlButtons->setSpacing(6 * screenRatio); @@ -214,32 +214,32 @@ void PictureDialog::setupPictureDialog() PictureDialog::~PictureDialog() { -#ifdef Q_OS_WIN -#if QT_VERSION >= 0x050200 - if (naviEnabled) - { - for (QObject *obj : layout()->menuBar()->children()) - { - delete obj; - } - delete layout()->menuBar(); - } -#endif -#else - if (naviEnabled) - { - for (QObject *obj : layout()->menuBar()->children()) - { - delete obj; - } - delete layout()->menuBar(); - } -#endif - for (QObject *obj : manageMenu->children()) - { - delete obj; - } - delete manageMenu; +//#ifdef Q_OS_WIN +//#if QT_VERSION >= 0x050200 +// if (naviEnabled) +// { +// for (QObject *obj : layout()->menuBar()->children()) +// { +// delete obj; +// } +// delete layout()->menuBar(); +// } +//#endif +//#else +// if (naviEnabled) +// { +// for (QObject *obj : layout()->menuBar()->children()) +// { +// delete obj; +// } +// delete layout()->menuBar(); +// } +//#endif +// for (QObject *obj : manageMenu->children()) +// { +// delete obj; +// } +// delete manageMenu; delete ui; } diff --git a/ProfileInterface.cpp b/ProfileInterface.cpp index 8dd57e5..99fd1a4 100644 --- a/ProfileInterface.cpp +++ b/ProfileInterface.cpp @@ -1670,7 +1670,7 @@ void ProfileInterface::contextMenuTriggeredPIC(QContextMenuEvent *ev) } QMenu contextMenu(picWidget); const int selectedCount = selectedWidgets(); - if (contentMode < 20 || selectedCount <= 1) { + if (contentMode < 20 || selectedCount == 0) { QMenu editMenu(SnapmaticWidget::tr("Edi&t"), picWidget); if (picWidget->isHidden()) { editMenu.addAction(SnapmaticWidget::tr("Show &In-game"), picWidget, SLOT(makePictureVisibleSlot())); @@ -1750,7 +1750,7 @@ void ProfileInterface::contextMenuTriggeredSGD(QContextMenuEvent *ev) } QMenu contextMenu(sgdWidget); const int selectedCount = selectedWidgets(); - if (contentMode < 20 || selectedCount <= 1) { + if (contentMode < 20 || selectedCount == 0) { contextMenu.addAction(SavegameWidget::tr("&View"), sgdWidget, SLOT(on_cmdView_clicked())); contextMenu.addAction(SavegameWidget::tr("&Export"), sgdWidget, SLOT(on_cmdCopy_clicked())); contextMenu.addAction(SavegameWidget::tr("&Remove"), sgdWidget, SLOT(on_cmdDelete_clicked())); diff --git a/RagePhoto.cpp b/RagePhoto.cpp index 9ddda87..5ea3c11 100644 --- a/RagePhoto.cpp +++ b/RagePhoto.cpp @@ -1,6 +1,6 @@ /***************************************************************************** * gta5view Grand Theft Auto V Profile Viewer -* Copyright (C) 2020 Syping +* Copyright (C) 2020-2021 Syping * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -90,15 +90,20 @@ bool RagePhoto::load() quint32 format = charToUInt32LE(uInt32Buffer); if (format == static_cast<quint32>(PhotoFormat::GTA5)) { - char photoHeader[256]; - size = dataBuffer.read(photoHeader, 256); - if (size != 256) + char *photoHeader = static_cast<char*>(malloc(256)); + if (!photoHeader) return false; + size = dataBuffer.read(photoHeader, 256); + if (size != 256) { + free(photoHeader); + return false; + } for (const QChar &photoChar : utf16LEToString(photoHeader, 256)) { if (photoChar.isNull()) break; p_photoString += photoChar; } + free(photoHeader); size = dataBuffer.read(uInt32Buffer, 4); if (size != 4) @@ -142,11 +147,16 @@ bool RagePhoto::load() return false; quint32 t_photoSize = charToUInt32LE(uInt32Buffer); - char photoData[t_photoSize]; - size = dataBuffer.read(photoData, t_photoSize); - if (size != t_photoSize) + char *photoData = static_cast<char*>(malloc(t_photoSize)); + if (!photoData) return false; + size = dataBuffer.read(photoData, t_photoSize); + if (size != t_photoSize) { + free(photoData); + return false; + } p_photoData = QByteArray(photoData, t_photoSize); + free(photoData); dataBuffer.seek(p_jsonOffset + 264); size = dataBuffer.read(markerBuffer, 4); @@ -160,15 +170,20 @@ bool RagePhoto::load() return false; p_jsonBuffer = charToUInt32LE(uInt32Buffer); - char jsonBytes[p_jsonBuffer]; - size = dataBuffer.read(jsonBytes, p_jsonBuffer); - if (size != p_jsonBuffer) + char *jsonBytes = static_cast<char*>(malloc(p_jsonBuffer)); + if (!jsonBytes) return false; + size = dataBuffer.read(jsonBytes, p_jsonBuffer); + if (size != p_jsonBuffer) { + free(jsonBytes); + return false; + } for (quint32 i = 0; i != p_jsonBuffer; i++) { if (jsonBytes[i] == '\x00') break; p_jsonData += jsonBytes[i]; } + free(jsonBytes); QJsonDocument t_jsonDocument = QJsonDocument::fromJson(p_jsonData); if (t_jsonDocument.isNull()) return false; @@ -186,15 +201,20 @@ bool RagePhoto::load() return false; p_titlBuffer = charToUInt32LE(uInt32Buffer); - char titlBytes[p_titlBuffer]; - size = dataBuffer.read(titlBytes, p_titlBuffer); - if (size != p_titlBuffer) + char *titlBytes = static_cast<char*>(malloc(p_titlBuffer)); + if (!titlBytes) return false; + size = dataBuffer.read(titlBytes, p_titlBuffer); + if (size != p_titlBuffer){ + free(titlBytes); + return false; + } for (const QChar &titlChar : QString::fromUtf8(titlBytes, p_titlBuffer)) { if (titlChar.isNull()) break; p_titleString += titlChar; } + free(titlBytes); dataBuffer.seek(p_descOffset + 264); size = dataBuffer.read(markerBuffer, 4); @@ -208,15 +228,20 @@ bool RagePhoto::load() return false; p_descBuffer = charToUInt32LE(uInt32Buffer); - char descBytes[p_descBuffer]; - size = dataBuffer.read(descBytes, p_descBuffer); - if (size != p_descBuffer) + char *descBytes = static_cast<char*>(malloc(p_descBuffer)); + if (!descBytes) return false; + size = dataBuffer.read(descBytes, p_descBuffer); + if (size != p_descBuffer) { + free(descBytes); + return false; + } for (const QChar &descChar : QString::fromUtf8(descBytes, p_descBuffer)) { if (descChar.isNull()) break; p_descriptionString += descChar; } + free(descBytes); dataBuffer.seek(p_endOfFile + 260); size = dataBuffer.read(markerBuffer, 4); @@ -243,12 +268,17 @@ bool RagePhoto::load() return false; quint32 compressedSize = charToUInt32LE(uInt32Buffer); - char compressedPhotoHeader[compressedSize]; - size = dataBuffer.read(compressedPhotoHeader, compressedSize); - if (size != compressedSize) + char *compressedPhotoHeader = static_cast<char*>(malloc(compressedSize)); + if (!compressedPhotoHeader) return false; + size = dataBuffer.read(compressedPhotoHeader, compressedSize); + if (size != compressedSize) { + free(compressedPhotoHeader); + return false; + } QByteArray t_photoHeader = QByteArray::fromRawData(compressedPhotoHeader, compressedSize); t_photoHeader = qUncompress(t_photoHeader); + free(compressedPhotoHeader); if (t_photoHeader.isEmpty()) return false; p_photoString = QString::fromUtf8(t_photoHeader); @@ -268,12 +298,17 @@ bool RagePhoto::load() return false; compressedSize = charToUInt32LE(uInt32Buffer); - char compressedPhoto[compressedSize]; - size = dataBuffer.read(compressedPhoto, compressedSize); - if (size != compressedSize) + char *compressedPhoto = static_cast<char*>(malloc(compressedSize)); + if (!compressedPhoto) return false; + size = dataBuffer.read(compressedPhoto, compressedSize); + if (size != compressedSize) { + free(compressedPhoto); + return false; + } QByteArray t_photoData = QByteArray::fromRawData(compressedPhoto, compressedSize); p_photoData = qUncompress(t_photoData); + free(compressedPhoto); size = dataBuffer.read(uInt32Buffer, 4); if (size != 4) @@ -290,12 +325,17 @@ bool RagePhoto::load() return false; compressedSize = charToUInt32LE(uInt32Buffer); - char compressedJson[compressedSize]; - size = dataBuffer.read(compressedJson, compressedSize); - if (size != compressedSize) + char *compressedJson = static_cast<char*>(malloc(compressedSize)); + if (!compressedJson) return false; + size = dataBuffer.read(compressedJson, compressedSize); + if (size != compressedSize) { + free(compressedJson); + return false; + } QByteArray t_jsonBytes = QByteArray::fromRawData(compressedJson, compressedSize); p_jsonData = qUncompress(t_jsonBytes); + free(compressedJson); if (p_jsonData.isEmpty()) return false; QJsonDocument t_jsonDocument = QJsonDocument::fromJson(p_jsonData); @@ -318,12 +358,17 @@ bool RagePhoto::load() return false; compressedSize = charToUInt32LE(uInt32Buffer); - char compressedTitl[compressedSize]; - size = dataBuffer.read(compressedTitl, compressedSize); - if (size != compressedSize) + char *compressedTitl = static_cast<char*>(malloc(compressedSize)); + if (!compressedTitl) return false; + size = dataBuffer.read(compressedTitl, compressedSize); + if (size != compressedSize) { + free(compressedTitl); + return false; + } QByteArray t_titlBytes = QByteArray::fromRawData(compressedTitl, compressedSize); t_titlBytes = qUncompress(t_titlBytes); + free(compressedTitl); p_titleString = QString::fromUtf8(t_titlBytes); size = dataBuffer.read(uInt32Buffer, 4); @@ -341,12 +386,17 @@ bool RagePhoto::load() return false; compressedSize = charToUInt32LE(uInt32Buffer); - char compressedDesc[compressedSize]; - size = dataBuffer.read(compressedDesc, compressedSize); - if (size != compressedSize) + char *compressedDesc = static_cast<char*>(malloc(compressedSize)); + if (!compressedDesc) return false; + size = dataBuffer.read(compressedDesc, compressedSize); + if (size != compressedSize) { + free(compressedDesc); + return false; + } QByteArray t_descBytes = QByteArray::fromRawData(compressedDesc, compressedSize); t_descBytes = qUncompress(t_descBytes); + free(compressedDesc); p_descriptionString = QString::fromUtf8(t_descBytes); size = dataBuffer.read(uInt32Buffer, 4); @@ -382,7 +432,7 @@ bool RagePhoto::load() size = dataBuffer.read(length, 1); if (size != 1) return false; - int i_length = QByteArray::number((int)length[0], 16).toInt() + 6; + int i_length = QByteArray::number(static_cast<int>(length[0]), 16).toInt() + 6; #if QT_VERSION >= 0x050A00 size = dataBuffer.skip(i_length); diff --git a/TranslationClass.cpp b/TranslationClass.cpp index 05e3b8c..fd1de31 100644 --- a/TranslationClass.cpp +++ b/TranslationClass.cpp @@ -63,7 +63,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); @@ -151,7 +151,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); @@ -184,7 +184,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); @@ -207,7 +207,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); @@ -235,7 +235,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); @@ -256,7 +256,7 @@ void TranslationClass::loadTranslation(QApplication *app) { app->installTranslator(&inQtTranslator); } -#if QT_VERSION <= 0x060000 +#if QT_VERSION >= 0x060000 QLocale::setDefault(QLocale(currentLanguage)); #else QLocale::setDefault(currentLanguage); diff --git a/config.h b/config.h index 62d6c6a..d3d59d2 100644 --- a/config.h +++ b/config.h @@ -40,11 +40,11 @@ #endif #ifndef GTA5SYNC_COPYRIGHT -#define GTA5SYNC_COPYRIGHT "2016-2020" +#define GTA5SYNC_COPYRIGHT "2016-2021" #endif #ifndef GTA5SYNC_APPVER -#define GTA5SYNC_APPVER "1.9.0" +#define GTA5SYNC_APPVER "1.9.2" #endif #if __cplusplus diff --git a/res/app.rc b/res/app.rc index b089122..9eb654c 100644 --- a/res/app.rc +++ b/res/app.rc @@ -4,8 +4,8 @@ IDI_ICON1 ICON DISCARDABLE "5sync.ico" CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "gta5view.exe.manifest" #include <windows.h> VS_VERSION_INFO VERSIONINFO -FILEVERSION 1, 9, 0, 0 -PRODUCTVERSION 1, 9, 0, 0 +FILEVERSION 1, 9, 2, 0 +PRODUCTVERSION 1, 9, 2, 0 FILEFLAGSMASK 0x3fL FILEFLAGS 0 FILEOS VOS_NT_WINDOWS32 @@ -22,12 +22,12 @@ BEGIN BEGIN VALUE "CompanyName", "Syping" VALUE "FileDescription", "gta5view" - VALUE "FileVersion", "1.9.0" + VALUE "FileVersion", "1.9.2" VALUE "InternalName", "gta5view" - VALUE "LegalCopyright", "Copyright � 2016-2020 Syping" + VALUE "LegalCopyright", "Copyright � 2016-2021 Syping" VALUE "OriginalFilename", "gta5view.exe" VALUE "ProductName", "gta5view" - VALUE "ProductVersion", "1.9.0" + VALUE "ProductVersion", "1.9.2" END END END diff --git a/res/de.syping.gta5view.metainfo.xml b/res/de.syping.gta5view.metainfo.xml index 13b6131..aa82124 100644 --- a/res/de.syping.gta5view.metainfo.xml +++ b/res/de.syping.gta5view.metainfo.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Copyright 2020 Syping --> +<!-- Copyright 2021 Syping --> <component type="desktop-application"> <id>de.syping.gta5view</id> <launchable type="desktop-id">de.syping.gta5view.desktop</launchable> @@ -32,6 +32,8 @@ <developer_name>Syping</developer_name> <releases> + <release date="2021-03-22" version="1.9.2"/> + <release date="2020-12-16" version="1.9.1"/> <release date="2020-11-30" version="1.9.0"/> <release date="2020-10-11" version="1.8.0"/> </releases> diff --git a/res/global.de.ini b/res/global.de.ini index f3b21dc..0916785 100644 --- a/res/global.de.ini +++ b/res/global.de.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Vinewood-Rennbahn" HUMLAB="Humane Labs and Research" +ISHEIST="Cayo Perico" JAIL="Bolingbroke-Strafanstalt" KOREAT="Little Seoul" LACT="Land-Act-Stausee" diff --git a/res/global.en.ini b/res/global.en.ini index 1cde708..97c84dd 100644 --- a/res/global.en.ini +++ b/res/global.en.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Vinewood Racetrack" HUMLAB="Humane Labs and Research" +ISHEIST="Cayo Perico" JAIL="Bolingbroke Penitentiary" KOREAT="Little Seoul" LACT="Land Act Reservoir" diff --git a/res/global.es.ini b/res/global.es.ini index 60878a1..b364c50 100644 --- a/res/global.es.ini +++ b/res/global.es.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Circuito de Vinewood" HUMLAB="Laboratorios Humane" +ISHEIST="Cayo Perico" JAIL="Penitenciaría de Bolingbroke" KOREAT="Little Seoul" LACT="Embalse de Land Act" diff --git a/res/global.es_MX.ini b/res/global.es_MX.ini index 48476ea..620ef14 100644 --- a/res/global.es_MX.ini +++ b/res/global.es_MX.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Circuito de Vinewood" HUMLAB="Humane Labs and Research" +ISHEIST="Cayo Perico" JAIL="Penitenciaría de Bolingbroke" KOREAT="Little Seoul" LACT="Presa de Land Act" diff --git a/res/global.fr.ini b/res/global.fr.ini index 977500e..807c5ec 100644 --- a/res/global.fr.ini +++ b/res/global.fr.ini @@ -41,6 +41,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Hippodrome de Vinewood" HUMLAB="Laboratoires Humane" +ISHEIST="Cayo Perico" JAIL="Pénitencier de Bolingbroke" KOREAT="Little Seoul" LACT="Land Act Reservoir" diff --git a/res/global.it.ini b/res/global.it.ini index a98e012..4c89a36 100644 --- a/res/global.it.ini +++ b/res/global.it.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Vinewood Racetrack" HUMLAB="Laboratori di ricerca Humane" +ISHEIST="Cayo Perico" JAIL="Bolingbroke Penitentiary" KOREAT="Little Seoul" LACT="Land Act Reservoir" diff --git a/res/global.ja.ini b/res/global.ja.ini index e1af8ad..f38223d 100644 --- a/res/global.ja.ini +++ b/res/global.ja.ini @@ -42,6 +42,7 @@ HAWICK="ハウィック" HEART="ハートアタック・ビーチ" HORS="バインウッド・レーストラック" HUMLAB="ヒューメイン研究所" +ISHEIST="カヨ・ペリコ" JAIL="ボーリングブローク刑務所" KOREAT="リトル・ソウル" LACT="ランド・アクト貯水池" diff --git a/res/global.ko.ini b/res/global.ko.ini index 11ef9f4..7296638 100644 --- a/res/global.ko.ini +++ b/res/global.ko.ini @@ -42,6 +42,7 @@ HAWICK="호익" HEART="하트 어택 해변" HORS="바인우드 레이스트랙" HUMLAB="휴메인 실험 연구소" +ISHEIST="카요 페리코" JAIL="볼링브로크 교도소" KOREAT="리틀 서울" LACT="랜드 액트 저수지" diff --git a/res/global.pl.ini b/res/global.pl.ini index 877a864..e318284 100644 --- a/res/global.pl.ini +++ b/res/global.pl.ini @@ -42,6 +42,7 @@ HAWICK="Hawick" HEART="Plaża Zawałowców" HORS="Tor wyścigowy Vinewood" HUMLAB="Humane Labs and Research" +ISHEIST="Cayo Perico" JAIL="Zakład karny Bolingbroke" KOREAT="Mały Seul" LACT="Jezioro zaporowe" diff --git a/res/global.pt.ini b/res/global.pt.ini index 8686d6d..79d46ab 100644 --- a/res/global.pt.ini +++ b/res/global.pt.ini @@ -41,6 +41,7 @@ HAWICK="Hawick" HEART="Heart Attacks Beach" HORS="Hipódromo de Vinewood" HUMLAB="Laboratórios e Pesquisas Humane" +ISHEIST="Cayo Perico" JAIL="Penitenciária Bolingbroke" KOREAT="Little Seoul" LACT="Reservatório Land Act" diff --git a/res/global.ru.ini b/res/global.ru.ini index 37df696..996f807 100644 --- a/res/global.ru.ini +++ b/res/global.ru.ini @@ -42,6 +42,7 @@ HAWICK="Хавик" HEART="Харт-Аттакс-Бич" HORS="Гоночная трасса Вайнвуда" HUMLAB="Лаборатория Humane Labs and Research" +ISHEIST="Кайо-Перико" JAIL="Тюрьма Болингброук" KOREAT="Маленький Сеул" LACT="Лэнд-экт-резервуар" diff --git a/res/global.zh.ini b/res/global.zh.ini index 7d7a080..49650cc 100644 --- a/res/global.zh.ini +++ b/res/global.zh.ini @@ -41,6 +41,7 @@ HAWICK="霍伊克" HEART="驚心海灘" HORS="好麥塢賽馬場" HUMLAB="人道研究實驗室" +ISHEIST="佩里克島" JAIL="博林布魯克監獄" KOREAT="小首爾" LACT="蘭艾水庫" diff --git a/res/gta5sync_fr.qm b/res/gta5sync_fr.qm index d638131..9c8386d 100644 Binary files a/res/gta5sync_fr.qm and b/res/gta5sync_fr.qm differ diff --git a/res/gta5sync_fr.ts b/res/gta5sync_fr.ts index ce395c9..5d5c39f 100644 --- a/res/gta5sync_fr.ts +++ b/res/gta5sync_fr.ts @@ -305,7 +305,7 @@ et les fichiers de sauvegarde de Grand Theft Auto V</translation> <message> <location filename="../ImportDialog.ui" line="311"/> <source>Resolution:</source> - <translation>Résolution:</translation> + <translation>Résolution :</translation> </message> <message> <location filename="../ImportDialog.ui" line="324"/> diff --git a/res/template.g5e b/res/template.g5e index 42f896d..c74ba7f 100644 Binary files a/res/template.g5e and b/res/template.g5e differ diff --git a/uimod/UiModWidget.cpp b/uimod/UiModWidget.cpp index ff852fc..990ce7f 100644 --- a/uimod/UiModWidget.cpp +++ b/uimod/UiModWidget.cpp @@ -46,26 +46,21 @@ void UiModWidget::setImageDropEnabled(bool enabled) void UiModWidget::dragEnterEvent(QDragEnterEvent *dragEnterEvent) { - if (filesDropEnabled && dragEnterEvent->mimeData()->hasUrls()) - { - QStringList pathList; + if (filesDropEnabled && dragEnterEvent->mimeData()->hasUrls()) { + QVector<QString> pathList; const QList<QUrl> urlList = dragEnterEvent->mimeData()->urls(); - for (const QUrl ¤tUrl : urlList) - { - if (currentUrl.isLocalFile()) - { + for (const QUrl ¤tUrl : urlList) { + if (currentUrl.isLocalFile()) { pathList.append(currentUrl.toLocalFile()); } } - if (!pathList.isEmpty()) - { + if (!pathList.isEmpty()) { dragEnterEvent->acceptProposedAction(); } } - else if (imageDropEnabled && dragEnterEvent->mimeData()->hasImage()) - { + else if (imageDropEnabled && dragEnterEvent->mimeData()->hasImage()) { dragEnterEvent->acceptProposedAction(); } } @@ -80,11 +75,7 @@ void UiModWidget::paintEvent(QPaintEvent *paintEvent) { Q_UNUSED(paintEvent) QStyleOption opt; -#if QT_VERSION <= 0x060000 opt.initFrom(this); -#else - opt.init(this); -#endif QPainter p(this); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); }