Use QStringLiteral everywhere

This commit is contained in:
Joshua Goins 2023-08-31 09:51:57 +02:00
parent 038ca10eab
commit fd118b209c
5 changed files with 95 additions and 96 deletions

View file

@ -27,27 +27,25 @@ ArtConfigWindow::ArtConfigWindow(const QString& filename, QWidget* parent) : QDi
formLayoutWidget->setLayout(formLayout);
mainLayout->addWidget(formLayoutWidget);
QScrollArea* galleryScrollArea = new QScrollArea();
auto galleryScrollArea = new QScrollArea();
formLayout->addWidget(galleryScrollArea);
m_newBannerEdit = new QLineEdit();
formLayout->addRow("New Banner", m_newBannerEdit);
formLayout->addRow(QStringLiteral("New Banner"), m_newBannerEdit);
m_commissionsOpen = new QCheckBox();
formLayout->addRow("Commissions Open", m_commissionsOpen);
formLayout->addRow(QStringLiteral("Commissions Open"), m_commissionsOpen);
auto bottomButtonLayout = new QHBoxLayout();
formLayout->addRow(bottomButtonLayout);
auto cancelButton = new QPushButton(QIcon::fromTheme("dialog-close"), "Cancel");
connect(cancelButton, &QPushButton::clicked, this, [=] {
close();
});
auto cancelButton = new QPushButton(QIcon::fromTheme(QStringLiteral("dialog-close")), QStringLiteral("Cancel"));
connect(cancelButton, &QPushButton::clicked, this, &ArtConfigWindow::close);
bottomButtonLayout->addWidget(cancelButton);
bottomButtonLayout->addStretch(1);
auto saveButton = new QPushButton(QIcon::fromTheme("dialog-ok"), "Save");
connect(saveButton, &QPushButton::clicked, this, [=] {
auto saveButton = new QPushButton(QIcon::fromTheme(QStringLiteral("dialog-ok")), QStringLiteral("Save"));
connect(saveButton, &QPushButton::clicked, this, [this, filename] {
saveData(filename);
});
bottomButtonLayout->addWidget(saveButton);
@ -64,16 +62,16 @@ void ArtConfigWindow::loadData(const QString& filename) {
artFile.open(QFile::ReadOnly);
QJsonDocument artJson = QJsonDocument::fromJson(artFile.readAll());
m_newBannerEdit->setText(artJson["new-banner"].toString());
m_commissionsOpen->setChecked(artJson["commissions"].toBool());
m_newBannerEdit->setText(artJson[QStringLiteral("new-banner")].toString());
m_commissionsOpen->setChecked(artJson[QStringLiteral("commissions")].toBool());
}
void ArtConfigWindow::saveData(const QString& filename) {
qDebug() << "Saving data to" << filename;
QJsonObject object;
object["new-banner"] = m_newBannerEdit->text();
object["commissions"] = m_commissionsOpen->isChecked();
object[QStringLiteral("new-banner")] = m_newBannerEdit->text();
object[QStringLiteral("commissions")] = m_commissionsOpen->isChecked();
QJsonDocument jsonDoc(object);
QFile file(filename);

View file

@ -36,9 +36,9 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
mainLayout->addWidget(formLayoutWidget);
QImage image;
image.load(QString("%1/%2.webp").arg(assetDirectory).arg(withoutExtension));
image.load(QStringLiteral("%1/%2.webp").arg(assetDirectory, withoutExtension));
auto previewBox = new QGroupBox("Preview");
auto previewBox = new QGroupBox(QStringLiteral("Preview"));
mainLayout->addWidget(previewBox);
auto previewLayout = new QVBoxLayout();
@ -49,47 +49,47 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
previewLayout->addWidget(imageView);
m_titleEdit = new QLineEdit();
formLayout->addRow("Title", m_titleEdit);
formLayout->addRow(QStringLiteral("Title"), m_titleEdit);
m_knowExactDateBox = new QCheckBox();
connect(m_knowExactDateBox, &QCheckBox::toggled, this, [=](bool checked) {
if (checked) {
m_dateEdit->setDisplayFormat("yyyy-MM-dd");
m_dateEdit->setDisplayFormat(QStringLiteral("yyyy-MM-dd"));
} else {
m_dateEdit->setDisplayFormat("yyyy");
m_dateEdit->setDisplayFormat(QStringLiteral("yyyy"));
}
});
formLayout->addRow("Know Exact Date?", m_knowExactDateBox);
formLayout->addRow(QStringLiteral("Know Exact Date?"), m_knowExactDateBox);
m_dateEdit = new QDateEdit();
m_dateEdit->setCalendarPopup(true);
formLayout->addRow("Date", m_dateEdit);
formLayout->addRow(QStringLiteral("Date"), m_dateEdit);
m_altTextEdit = new QTextEdit();
m_altTextEdit->setAcceptRichText(false);
formLayout->addRow("Alt Text", m_altTextEdit);
formLayout->addRow(QStringLiteral("Alt Text"), m_altTextEdit);
m_descriptionEdit = new QTextEdit();
m_descriptionEdit->setAcceptRichText(false);
formLayout->addRow("Description", m_descriptionEdit);
formLayout->addRow(QStringLiteral("Description"), m_descriptionEdit);
m_nsfwBox = new QCheckBox();
formLayout->addRow("Is NSFW?", m_nsfwBox);
formLayout->addRow(QStringLiteral("Is NSFW?"), m_nsfwBox);
m_mastodonUrlEdit = new QLineEdit();
formLayout->addRow("Mastodon URL", m_mastodonUrlEdit);
formLayout->addRow(QStringLiteral("Mastodon URL"), m_mastodonUrlEdit);
m_pixivUrlEdit = new QLineEdit();
formLayout->addRow("Pixiv URL", m_pixivUrlEdit);
formLayout->addRow(QStringLiteral("Pixiv URL"), m_pixivUrlEdit);
m_newgroundsUrlEdit = new QLineEdit();
formLayout->addRow("Newgrounds URL", m_newgroundsUrlEdit);
formLayout->addRow(QStringLiteral("Newgrounds URL"), m_newgroundsUrlEdit);
m_programEdit = new QLineEdit();
formLayout->addRow("Program", m_programEdit);
formLayout->addRow(QStringLiteral("Program"), m_programEdit);
auto charactersLayout = new QVBoxLayout();
formLayout->addRow("Characters", charactersLayout);
formLayout->addRow(QStringLiteral("Characters"), charactersLayout);
auto characterList = new QListView();
m_characterListModel = new QStringListModel();
@ -99,16 +99,16 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
auto characterButtonLayout = new QHBoxLayout();
charactersLayout->addLayout(characterButtonLayout);
auto addCharacterButton = new QPushButton(QIcon::fromTheme("list-add"), "Add");
auto addCharacterButton = new QPushButton(QIcon::fromTheme(QStringLiteral("list-add")), QStringLiteral("Add"));
connect(addCharacterButton, &QPushButton::clicked, this, [=] {
auto tmp = m_characterListModel->stringList();;
tmp.push_back("New Character");
tmp.push_back(QStringLiteral("New Character"));
m_characterListModel->setStringList(tmp);
});
characterButtonLayout->addWidget(addCharacterButton);
characterButtonLayout->addStretch(1);
auto removeCharacterButton = new QPushButton(QIcon::fromTheme("list-remove"), "Remove");
auto removeCharacterButton = new QPushButton(QIcon::fromTheme(QStringLiteral("list-remove")), QStringLiteral("Remove"));
connect(removeCharacterButton, &QPushButton::clicked, this, [=] {
if(characterList->selectionModel()->hasSelection()) {
QString toRemove = characterList->selectionModel()->selectedRows()[0].data().toString();
@ -121,7 +121,7 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
characterButtonLayout->addWidget(removeCharacterButton);
auto tagLayout = new QVBoxLayout();
formLayout->addRow("Tags", tagLayout);
formLayout->addRow(QStringLiteral("Tags"), tagLayout);
auto tagsList = new QListView();
m_tagsListModel = new QStringListModel();
@ -131,16 +131,16 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
auto tagButtonLayout = new QHBoxLayout();
tagLayout->addLayout(tagButtonLayout);
auto addTagButton = new QPushButton(QIcon::fromTheme("list-add"), "Add");
auto addTagButton = new QPushButton(QIcon::fromTheme(QStringLiteral("list-add")), QStringLiteral("Add"));
connect(addTagButton, &QPushButton::clicked, this, [=] {
auto tmp = m_tagsListModel->stringList();;
tmp.push_back("New Tag");
tmp.push_back(QStringLiteral("New Tag"));
m_tagsListModel->setStringList(tmp);
});
tagButtonLayout->addWidget(addTagButton);
tagButtonLayout->addStretch(1);
auto removeTagButton = new QPushButton(QIcon::fromTheme("list-remove"),"Remove");
auto removeTagButton = new QPushButton(QIcon::fromTheme(QStringLiteral("list-remove")), QStringLiteral("Remove"));
connect(removeTagButton, &QPushButton::clicked, this, [=] {
if(tagsList->selectionModel()->hasSelection()) {
QString toRemove = tagsList->selectionModel()->selectedRows()[0].data().toString();
@ -155,14 +155,14 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi
auto bottomButtonLayout = new QHBoxLayout();
formLayout->addRow(bottomButtonLayout);
auto cancelButton = new QPushButton(QIcon::fromTheme("dialog-close"),"Cancel");
auto cancelButton = new QPushButton(QIcon::fromTheme(QStringLiteral("dialog-close")), QStringLiteral("Cancel"));
connect(cancelButton, &QPushButton::clicked, this, [=] {
close();
});
bottomButtonLayout->addWidget(cancelButton);
bottomButtonLayout->addStretch(1);
auto saveButton = new QPushButton(QIcon::fromTheme("dialog-ok"), "Save");
auto saveButton = new QPushButton(QIcon::fromTheme(QStringLiteral("dialog-ok")), QStringLiteral("Save"));
connect(saveButton, &QPushButton::clicked, this, [=] {
saveData(filename);
});
@ -180,51 +180,51 @@ void ArtDetailWindow::loadData(const QString& filename) {
artFile.open(QFile::ReadOnly);
QJsonDocument artJson = QJsonDocument::fromJson(artFile.readAll());
if(artJson.object().contains("title"))
m_titleEdit->setText(artJson["title"].toString());
if(artJson.object().contains(QStringLiteral("title")))
m_titleEdit->setText(artJson[QStringLiteral("title")].toString());
if(artJson.object().contains("alt_text"))
m_altTextEdit->setText(artJson["alt_text"].toString());
if(artJson.object().contains(QStringLiteral("alt_text")))
m_altTextEdit->setText(artJson[QStringLiteral("alt_text")].toString());
if(artJson.object().contains("description"))
m_descriptionEdit->setText(artJson["description"].toString());
if(artJson.object().contains(QStringLiteral("description")))
m_descriptionEdit->setText(artJson[QStringLiteral("description")].toString());
m_knowExactDateBox->setChecked(artJson["date"].toString().contains("-"));
m_knowExactDateBox->setChecked(artJson[QStringLiteral("date")].toString().contains(QStringLiteral("-")));
if(m_knowExactDateBox->isChecked()) {
m_dateEdit->setDate(QDate::fromString(artJson["date"].toString(), "yyyy-MM-dd"));
m_dateEdit->setDisplayFormat("yyyy-MM-dd");
m_dateEdit->setDate(QDate::fromString(artJson[QStringLiteral("date")].toString(), QStringLiteral("yyyy-MM-dd")));
m_dateEdit->setDisplayFormat(QStringLiteral("yyyy-MM-dd"));
} else {
m_dateEdit->setDate(QDate::fromString(artJson["date"].toString(), "yyyy"));
m_dateEdit->setDisplayFormat("yyyy");
m_dateEdit->setDate(QDate::fromString(artJson[QStringLiteral("date")].toString(), QStringLiteral("yyyy")));
m_dateEdit->setDisplayFormat(QStringLiteral("yyyy"));
}
if(artJson.object().contains("nsfw"))
m_nsfwBox->setChecked(artJson["nsfw"].toBool());
if(artJson.object().contains(QStringLiteral("nsfw")))
m_nsfwBox->setChecked(artJson[QStringLiteral("nsfw")].toBool());
if(artJson.object().contains("mastodon_url"))
m_mastodonUrlEdit->setText(artJson["mastodon_url"].toString());
if(artJson.object().contains(QStringLiteral("mastodon_url")))
m_mastodonUrlEdit->setText(artJson[QStringLiteral("mastodon_url")].toString());
if(artJson.object().contains("pixiv_url"))
m_pixivUrlEdit->setText(artJson["pixiv_url"].toString());
if(artJson.object().contains(QStringLiteral("pixiv_url")))
m_pixivUrlEdit->setText(artJson[QStringLiteral("pixiv_url")].toString());
if(artJson.object().contains("newgrounds_url"))
m_newgroundsUrlEdit->setText(artJson["newgrounds_url"].toString());
if(artJson.object().contains(QStringLiteral("newgrounds_url")))
m_newgroundsUrlEdit->setText(artJson[QStringLiteral("newgrounds_url")].toString());
if(artJson.object().contains("program"))
m_programEdit->setText(artJson["program"].toString());
if(artJson.object().contains(QStringLiteral("program")))
m_programEdit->setText(artJson[QStringLiteral("program")].toString());
if(artJson.object().contains("characters")) {
if(artJson.object().contains(QStringLiteral("characters"))) {
QStringList list;
for(auto character : artJson["characters"].toArray()) {
for(auto character : artJson[QStringLiteral("characters")].toArray()) {
list.append(character.toString());
}
m_characterListModel->setStringList(list);
}
if(artJson.object().contains("tags")) {
if(artJson.object().contains(QStringLiteral("tags"))) {
QStringList list;
for(auto tag : artJson["tags"].toArray()) {
for(auto tag : artJson[QStringLiteral("tags")].toArray()) {
list.append(tag.toString());
}
@ -237,43 +237,43 @@ void ArtDetailWindow::saveData(const QString& filename) {
QJsonObject object;
if(!m_titleEdit->text().isEmpty())
object["title"] = m_titleEdit->text();
object[QStringLiteral("title")] = m_titleEdit->text();
if(!m_altTextEdit->document()->isEmpty())
object["alt_text"] = m_altTextEdit->document()->toPlainText();
object[QStringLiteral("alt_text")] = m_altTextEdit->document()->toPlainText();
if(!m_descriptionEdit->document()->isEmpty())
object["description"] = m_descriptionEdit->document()->toPlainText();
object[QStringLiteral("description")] = m_descriptionEdit->document()->toPlainText();
if(m_knowExactDateBox->isChecked()) {
object["date"] = m_dateEdit->date().toString("yyyy-MM-dd");
object[QStringLiteral("date")] = m_dateEdit->date().toString(QStringLiteral("yyyy-MM-dd"));
} else {
object["date"] = m_dateEdit->date().toString("yyyy");
object[QStringLiteral("date")] = m_dateEdit->date().toString(QStringLiteral("yyyy"));
}
if(m_nsfwBox->isChecked())
object["nsfw"] = m_nsfwBox->isChecked();
object[QStringLiteral("nsfw")] = m_nsfwBox->isChecked();
if(!m_mastodonUrlEdit->text().isEmpty())
object["mastodon_url"] = m_mastodonUrlEdit->text();
object[QStringLiteral("mastodon_url")] = m_mastodonUrlEdit->text();
if(!m_pixivUrlEdit->text().isEmpty())
object["pixiv_url"] = m_pixivUrlEdit->text();
object[QStringLiteral("pixiv_url")] = m_pixivUrlEdit->text();
if(!m_newgroundsUrlEdit->text().isEmpty())
object["newgrounds_url"] = m_newgroundsUrlEdit->text();
object[QStringLiteral("newgrounds_url")] = m_newgroundsUrlEdit->text();
if(!m_programEdit->text().isEmpty())
object["program"] = m_programEdit->text();
object[QStringLiteral("program")] = m_programEdit->text();
auto tags = m_tagsListModel->stringList();
if(!tags.isEmpty()) {
object["tags"] = QJsonArray::fromStringList(tags);
object[QStringLiteral("tags")] = QJsonArray::fromStringList(tags);
}
auto characters = m_characterListModel->stringList();
if(!characters.isEmpty()) {
object["characters"] = QJsonArray::fromStringList(characters);
object[QStringLiteral("characters")] = QJsonArray::fromStringList(characters);
}
QJsonDocument jsonDoc(object);

View file

@ -30,7 +30,7 @@ ArtModel::ArtModel(const QString& definitionDirectory, const QString& assetDirec
continue;
}
pieceList.push_back(PieceInformation{QString("%1/%2").arg(definitionDirectory).arg(info.baseName()), QString("%1/%2").arg(assetDirectory).arg(info.baseName())});
pieceList.push_back(PieceInformation{QStringLiteral("%1/%2").arg(definitionDirectory, info.baseName()), QStringLiteral("%1/%2").arg(assetDirectory, info.baseName())});
beginInsertRows(QModelIndex(), m_artPieces.size(), m_artPieces.size() + 1);
@ -85,7 +85,7 @@ QVariant ArtModel::data(const QModelIndex &index, int role) const {
}
break;
case 3:
return m_artPieces[index.row()].hasAltText ? QIcon::fromTheme("emblem-checked") : QIcon::fromTheme("emblem-error");
return m_artPieces[index.row()].hasAltText ? QIcon::fromTheme(QStringLiteral("emblem-checked")) : QIcon::fromTheme(QStringLiteral("emblem-error"));
}
} else if (role == Qt::UserRole + 1) {
return m_artPieces[index.row()].jsonFilename;
@ -98,13 +98,15 @@ QVariant ArtModel::headerData(int section, Qt::Orientation orientation, int role
if (orientation == Qt::Orientation::Horizontal && role == Qt::DisplayRole) {
switch(section) {
case 0:
return "Filename";
return QStringLiteral("Filename");
case 1:
return "Image";
return QStringLiteral("Image");
case 2:
return "Title";
return QStringLiteral("Title");
case 3:
return "Has Alt Text";
return QStringLiteral("Has Alt Text");
default:
Q_UNREACHABLE();
}
}
@ -120,17 +122,17 @@ void ArtModel::loadData(ArtPiece& piece, const QString& filename, const QString&
artFile.open(QFile::ReadOnly);
QJsonDocument artJson = QJsonDocument::fromJson(artFile.readAll());
if(artJson["date"].toString().contains("-")) {
piece.date = QDate::fromString(artJson["date"].toString(), "yyyy-MM-dd");
if(artJson[QStringLiteral("date")].toString().contains(QStringLiteral("-"))) {
piece.date = QDate::fromString(artJson[QStringLiteral("date")].toString(), QStringLiteral("yyyy-MM-dd"));
} else {
piece.date = QDate::fromString(artJson["date"].toString(), "yyyy");
piece.date = QDate::fromString(artJson[QStringLiteral("date")].toString(), QStringLiteral("yyyy"));
}
if (artJson.object().contains("title")) {
piece.title = artJson.object()["title"].toString();
if (artJson.object().contains(QStringLiteral("title"))) {
piece.title = artJson.object()[QStringLiteral("title")].toString();
}
if(artJson.object().contains("alt_text")) {
if(artJson.object().contains(QStringLiteral("alt_text"))) {
piece.hasAltText = true;
}
}

View file

@ -13,15 +13,15 @@
#include "ArtModel.h"
MainWindow::MainWindow(const QString& definitionDirectory, const QString& assetDirectory, const QString& dataDirectory) {
setWindowTitle("Redai");
setWindowTitle(QStringLiteral("Redai"));
setMinimumSize(1280, 720);
auto menuBar = new QMenuBar();
setMenuBar(menuBar);
auto manageMenu = menuBar->addMenu("Manage");
auto manageMenu = menuBar->addMenu(QStringLiteral("Manage"));
auto editConfigAction = manageMenu->addAction("Edit Config...");
auto editConfigAction = manageMenu->addAction(QStringLiteral("Edit Config..."));
connect(editConfigAction, &QAction::triggered, this, [this, dataDirectory] {
auto window = new ArtConfigWindow(QStringLiteral("%1/art-config.json").arg(dataDirectory), this);
window->show();

View file

@ -12,21 +12,20 @@ int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QCommandLineParser parser;
parser.addPositionalArgument("site-path", QCoreApplication::translate("main", "Site directory."));
parser.addPositionalArgument(QStringLiteral("site-path"), QCoreApplication::translate("main", "Site directory."));
parser.process(app);
auto args = parser.positionalArguments();
const auto args = parser.positionalArguments();
if (args.empty()) {
return -1;
}
const QDir sitePath = args[0];
const QString defPath = sitePath.absoluteFilePath("art");
const QDir assetPath = sitePath.absoluteFilePath("assets");
const QString artAssetPath = assetPath.absoluteFilePath("art");
const QString dataPath = sitePath.absoluteFilePath("data");
const QString defPath = sitePath.absoluteFilePath(QStringLiteral("art"));
const QDir assetPath = sitePath.absoluteFilePath(QStringLiteral("assets"));
const QString artAssetPath = assetPath.absoluteFilePath(QStringLiteral("art"));
const QString dataPath = sitePath.absoluteFilePath(QStringLiteral("data"));
MainWindow window(defPath, artAssetPath, dataPath);
window.show();