From 8e7c2aba9fae0bd242d0f11ec1d2f21e7e942cc5 Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Wed, 25 Aug 2021 15:25:51 +0200 Subject: [PATCH] BUILD: No more implicit conversions from `const char *` to `QString`, everything should be in UTF-8 --- CMakeLists.txt | 2 +- src/Lib/Audio.cc | 2 +- src/Lib/Document/VivyDocument.cc | 11 ++++------- src/Lib/Script/LuaContext.cc | 3 +-- src/Lib/Script/ScriptStore.cc | 2 +- src/UI/AboutWindow.cc | 6 +++--- src/UI/DocumentViews/MpvContainer.cc | 4 ++-- src/UI/MainWindow.cc | 2 +- src/UI/ScriptDocumentView.cc | 2 +- src/UI/VivyDocumentView.cc | 3 ++- src/VivyCli.cc | 2 +- 11 files changed, 18 insertions(+), 21 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b90ba61..472ec5de 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -121,7 +121,7 @@ target_link_libraries(Vivy PRIVATE -fopenmp) target_compile_definitions(Vivy PRIVATE QT_DISABLE_DEPRECATED_BEFORE=0x050F00 QT_NO_CAST_TO_ASCII - # QT_RESTRICTED_CAST_FROM_ASCII + QT_RESTRICTED_CAST_FROM_ASCII QTCREATOR_UTILS_STATIC_LIB ) diff --git a/src/Lib/Audio.cc b/src/Lib/Audio.cc index 8c492175..23ad3e86 100644 --- a/src/Lib/Audio.cc +++ b/src/Lib/Audio.cc @@ -281,7 +281,7 @@ AudioContext::Stream::getDataSampleRate() const noexcept QString AudioContext::Stream::getName() const noexcept { - return QString(codec->name); + return QString::fromUtf8(codec->name); } // Get the codec's ID used to decode the stream diff --git a/src/Lib/Document/VivyDocument.cc b/src/Lib/Document/VivyDocument.cc index e5e4302e..eb39bd2d 100644 --- a/src/Lib/Document/VivyDocument.cc +++ b/src/Lib/Document/VivyDocument.cc @@ -92,7 +92,7 @@ VivyDocument::loadSaveJsonDocumentFile(const QJsonDocument &json) const QString savedVersion = savedVersionJson.toString(); for (const auto &[version, callback] : loadFunctions) { - if (savedVersion == version) + if (savedVersion == QString::fromUtf8(version)) return callback(this, json); } @@ -264,14 +264,11 @@ VivyDocument::getDocumentCapabilitiesString() const noexcept { QStringList ret; if (documentType & AudioAble) - ret.push_back("AudioAble" + - QString(audioDocument ? QStringLiteral("") : QStringLiteral("(ack)"))); + ret.push_back("AudioAble" + QString::fromUtf8(audioDocument ? "" : "(ack)")); if (documentType & VideoAble) - ret.push_back("VideoAble" + - QString(videoDocument ? QStringLiteral("") : QStringLiteral("(ack)"))); + ret.push_back("VideoAble" + QString::fromUtf8(videoDocument ? "" : "(ack)")); if (documentType & AssAble) - ret.push_back("AssAble" + - QString(assDocument ? QStringLiteral("") : QStringLiteral("(ack)"))); + ret.push_back("AssAble" + QString::fromUtf8(assDocument ? "" : "(ack)")); return ret.join(", "); } diff --git a/src/Lib/Script/LuaContext.cc b/src/Lib/Script/LuaContext.cc index a7c26e65..f5b4d341 100644 --- a/src/Lib/Script/LuaContext.cc +++ b/src/Lib/Script/LuaContext.cc @@ -129,8 +129,7 @@ LuaContext::getLastLuaError() noexcept return QStringLiteral("No lua error detected..."); } - const char *error = lua_tostring(L, -1); - QString ret = QStringLiteral("%1").arg(error); + QString ret = QString::fromUtf8(lua_tostring(L, -1)); lua_pop(L, 1); return ret; } diff --git a/src/Lib/Script/ScriptStore.cc b/src/Lib/Script/ScriptStore.cc index 61a970d5..689dfc78 100644 --- a/src/Lib/Script/ScriptStore.cc +++ b/src/Lib/Script/ScriptStore.cc @@ -63,7 +63,7 @@ ScriptStore::executeScript(Uuid id) noexcept QRegExp errorDetect(QStringLiteral("^([^\\:]*)\\:(\\d+)\\:(.*)\\n?$")); while (std::getline(streamErr, buffer, '\n')) { std::cout << '\t' << buffer << '\n'; - if (errorDetect.indexIn(buffer.c_str()) != -1) { + if (errorDetect.indexIn(QString::fromUtf8(buffer.c_str())) != -1) { std::string errorDesc = errorDetect.cap(3).toStdString(); return std::tuple{ QString(errorDetect.cap(2)).toInt(), Utils::trim(errorDesc) }; } diff --git a/src/UI/AboutWindow.cc b/src/UI/AboutWindow.cc index 4bb7e87b..85cb2e01 100644 --- a/src/UI/AboutWindow.cc +++ b/src/UI/AboutWindow.cc @@ -52,7 +52,7 @@ AboutWindow::SimpleLabel::SimpleLabel(QWidget *parent, const char *text) setTextFormat(Qt::RichText); setTextInteractionFlags(Qt::NoTextInteraction | Qt::LinksAccessibleByMouse | Qt::LinksAccessibleByKeyboard); - setText(QString(text)); + setText(QString::fromUtf8(text)); setAlignment(Qt::AlignJustify | Qt::AlignTop); setWordWrap(true); } @@ -78,8 +78,8 @@ AboutWindow::LicenceLabel::LicenceLabel(QWidget *parent, const QString &url, switch (format) { case Qt::PlainText: - case Qt::RichText: setText(QString(content.readAll())); break; - case Qt::MarkdownText: setMarkdown(content.readAll()); break; + case Qt::RichText: setText(QString::fromUtf8(content.readAll())); break; + case Qt::MarkdownText: setMarkdown(QString::fromUtf8(content.readAll())); break; case Qt::AutoText: qCritical() << "Invalid text format for LicenceLabel" << format; } } diff --git a/src/UI/DocumentViews/MpvContainer.cc b/src/UI/DocumentViews/MpvContainer.cc index ef64b08f..e7457ed8 100644 --- a/src/UI/DocumentViews/MpvContainer.cc +++ b/src/UI/DocumentViews/MpvContainer.cc @@ -106,7 +106,7 @@ MpvContainer::handleMpvEvent(mpv_event *event) noexcept case MPV_EVENT_LOG_MESSAGE: msg = reinterpret_cast<mpv_event_log_message *>(event->data); - msgText = QString(msg->text); + msgText = QString::fromUtf8(msg->text); msgText.replace('\n', ""); qDebug().nospace().noquote() << "MPV - MSG [" << msg->prefix << "] " << msg->level << ": " << msgText; @@ -179,7 +179,7 @@ MpvContainer::getAssSid() const noexcept { bool conversionOk = false; const char *result = mpv_get_property_string(mpv, "sid"); - const int ret = QString(result).toInt(&conversionOk); + const int ret = QString::fromUtf8(result).toInt(&conversionOk); return (result == nullptr || !conversionOk) ? -1 : ret; } diff --git a/src/UI/MainWindow.cc b/src/UI/MainWindow.cc index ddf90b9e..b320ac79 100644 --- a/src/UI/MainWindow.cc +++ b/src/UI/MainWindow.cc @@ -333,7 +333,7 @@ MainWindow::openDocument() noexcept if (errorTuple.has_value()) { const auto &[line, desc] = errorTuple.value(); - emit newView->luaErrorFound(line, QString{ desc.c_str() }); + emit newView->luaErrorFound(line, QString::fromUtf8(desc.c_str())); } addTab(newView); diff --git a/src/UI/ScriptDocumentView.cc b/src/UI/ScriptDocumentView.cc index b91e3830..a7ab4938 100644 --- a/src/UI/ScriptDocumentView.cc +++ b/src/UI/ScriptDocumentView.cc @@ -19,7 +19,7 @@ ScriptDocumentView::ScriptDocumentView(std::shared_ptr<ScriptDocument> ptr, QWid throw std::runtime_error("Failed to open script file"); } - editor->setPlainText(textFile.readAll()); + editor->setPlainText(QString::fromUtf8(textFile.readAll())); setCentralWidget(editor); editor->setFocus(Qt::OtherFocusReason); diff --git a/src/UI/VivyDocumentView.cc b/src/UI/VivyDocumentView.cc index a8272507..984ffbd4 100644 --- a/src/UI/VivyDocumentView.cc +++ b/src/UI/VivyDocumentView.cc @@ -61,7 +61,8 @@ VivyDocumentView::getDocument() const noexcept QString VivyDocumentView::getDocumentTabName() const noexcept { - return (document->checkDocumentOption(VivyDocument::UntouchedByDefault) ? "(*) " : "") + + return QString::fromUtf8( + document->checkDocumentOption(VivyDocument::UntouchedByDefault) ? "(*) " : "") + document->getName(); } diff --git a/src/VivyCli.cc b/src/VivyCli.cc index 1305babc..87e54139 100644 --- a/src/VivyCli.cc +++ b/src/VivyCli.cc @@ -6,7 +6,7 @@ using namespace Vivy; VivyCli::VivyCli(int &argc, char **argv) noexcept { if (argc >= 2) { - selectedDoc = scriptStore.loadDocument(QString(argv[1])); + selectedDoc = scriptStore.loadDocument(QString::fromUtf8(argv[1])); } } -- GitLab