From d14cca68915d58a39d193558ef15bdfd37fd79ca Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 16 May 2025 03:00:52 -0400 Subject: [PATCH] Fix some palette error handling --- src/core/tileset.cpp | 2 +- src/ui/paletteeditor.cpp | 25 ++++--------------------- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/src/core/tileset.cpp b/src/core/tileset.cpp index dc3bbd65..436f42c9 100644 --- a/src/core/tileset.cpp +++ b/src/core/tileset.cpp @@ -503,7 +503,7 @@ bool Tileset::loadTilesImage(QImage *importedImage) { } else if (colorCount < 16) { QVector colorTable = image.colorTable(); for (int i = colorTable.length(); i < 16; i++) { - colorTable.append(Qt::black); + colorTable.append(0); } image.setColorTable(colorTable); } diff --git a/src/ui/paletteeditor.cpp b/src/ui/paletteeditor.cpp index d570f540..1078ecc6 100644 --- a/src/ui/paletteeditor.cpp +++ b/src/ui/paletteeditor.cpp @@ -4,8 +4,7 @@ #include "config.h" #include "log.h" #include "filedialog.h" - -#include +#include "message.h" PaletteEditor::PaletteEditor(Project *project, Tileset *primaryTileset, Tileset *secondaryTileset, int paletteId, QWidget *parent) : @@ -165,27 +164,11 @@ void PaletteEditor::on_actionImport_Palette_triggered() bool error = false; QList palette = PaletteUtil::parse(filepath, &error); if (error) { - QMessageBox msgBox(this); - msgBox.setText("Failed to import palette."); - QString message = QString("The palette file could not be processed. View porymap.log for specific errors."); - msgBox.setInformativeText(message); - msgBox.setDefaultButton(QMessageBox::Ok); - msgBox.setIcon(QMessageBox::Icon::Critical); - msgBox.exec(); + RecentErrorMessage::show(QStringLiteral("Failed to import palette."), this); return; } - - if (palette.length() < this->numColors) { - QMessageBox msgBox(this); - msgBox.setText("Failed to import palette."); - QString message = QString("The palette file has %1 colors, but it must have %2 colors.") - .arg(palette.length()) - .arg(this->numColors); - msgBox.setInformativeText(message); - msgBox.setDefaultButton(QMessageBox::Ok); - msgBox.setIcon(QMessageBox::Icon::Critical); - msgBox.exec(); - return; + while (palette.length() < this->numColors) { + palette.append(0); } const int paletteId = ui->spinBox_PaletteId->value();