From 4064592accc0520b0dc915029d00e74dbb99cd30 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Tue, 7 Apr 2020 22:27:28 -0500 Subject: [PATCH] [nostalgia/core/studio] Remove implicit sign conversions --- src/nostalgia/core/studio/CMakeLists.txt | 2 ++ src/nostalgia/core/studio/imgconv.cpp | 16 ++++++++-------- src/nostalgia/core/studio/paletteeditor.cpp | 14 +++++++------- src/nostalgia/core/studio/tilesheeteditor.cpp | 4 ++-- 4 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/nostalgia/core/studio/CMakeLists.txt b/src/nostalgia/core/studio/CMakeLists.txt index 71920918..a3967b0f 100644 --- a/src/nostalgia/core/studio/CMakeLists.txt +++ b/src/nostalgia/core/studio/CMakeLists.txt @@ -11,6 +11,8 @@ add_library( rsrc.qrc ) +target_compile_options(NostalgiaCore-Studio PRIVATE -Wsign-conversion) + target_link_libraries( NostalgiaCore-Studio Qt5::Core diff --git a/src/nostalgia/core/studio/imgconv.cpp b/src/nostalgia/core/studio/imgconv.cpp index fe83f1bb..d3c3f61a 100644 --- a/src/nostalgia/core/studio/imgconv.cpp +++ b/src/nostalgia/core/studio/imgconv.cpp @@ -22,7 +22,7 @@ namespace { const auto r = static_cast(c.red()) >> 3; const auto g = static_cast(c.green()) >> 3; const auto b = static_cast(c.blue()) >> 3; - const auto a = static_cast(c.alpha()) > 128 ? 1 : 0; + const auto a = static_cast(c.alpha() > 128 ? 1 : 0); return (a << 15) | (r << 10) | (g << 5) | (b << 0); } @@ -72,11 +72,11 @@ namespace { QMap colors; auto ng = std::make_unique(); - ng->pal.colors.resize(countColors(src, Tiles)); + ng->pal.colors.resize(static_cast(countColors(src, Tiles))); if (argBpp == 4) { - ng->tiles.resize(Pixels / 2); + ng->tiles.resize(static_cast(Pixels / 2)); } else { - ng->tiles.resize(Pixels); + ng->tiles.resize(static_cast(Pixels)); } ng->bpp = argBpp; ng->columns = src.width() / TileWidth; @@ -97,12 +97,12 @@ namespace { // set pixel color if (argBpp == 4) { if (destI % 2) { // is odd number pixel - ng->tiles[destI / 2] |= colors[c] << 4; + ng->tiles[static_cast(destI / 2)] |= colors[c] << 4; } else { - ng->tiles[destI / 2] |= colors[c]; + ng->tiles[static_cast(destI / 2)] |= colors[c]; } } else { - ng->tiles[destI] = colors[c]; + ng->tiles[static_cast(destI)] = static_cast(colors[c]); } } } @@ -110,7 +110,7 @@ namespace { // store colors in palette with the corresponding color id for (auto key : colors.keys()) { - auto colorId = colors[key]; + auto colorId = static_cast(colors[key]); ng->pal.colors[colorId] = toGbaColor(key); } diff --git a/src/nostalgia/core/studio/paletteeditor.cpp b/src/nostalgia/core/studio/paletteeditor.cpp index 57807506..e6da31fd 100644 --- a/src/nostalgia/core/studio/paletteeditor.cpp +++ b/src/nostalgia/core/studio/paletteeditor.cpp @@ -191,14 +191,14 @@ QString PaletteEditor::itemName() const { } void PaletteEditor::addColor(int idx, Color16 c) { - m_pal->colors.insert(idx, c); + m_pal->colors.insert(static_cast(idx), c); addTableRow(idx, c); setUnsavedChanges(true); } void PaletteEditor::rmColor(int idx) { rmTableRow(idx); - m_pal->colors.erase(idx); + m_pal->colors.erase(static_cast(idx)); setUnsavedChanges(true); } @@ -209,7 +209,7 @@ void PaletteEditor::addTableRow(int i, Color16 c) { m_table->setItem(i, 1, mkCell(green16(c))); m_table->setItem(i, 2, mkCell(blue16(c))); m_table->setItem(i, 3, mkCell(alpha16(c))); - m_table->setItem(i, 4, mkCell(toQColor(m_pal->colors[i]).name(QColor::HexArgb), false)); + m_table->setItem(i, 4, mkCell(toQColor(m_pal->colors[static_cast(i)]).name(QColor::HexArgb), false)); connect(m_table, &QTableWidget::cellChanged, this, &PaletteEditor::cellChanged); } @@ -225,12 +225,12 @@ void PaletteEditor::setTableRow(int idx, Color16 c) { m_table->item(idx, 1)->setText(QString::number(green16(c))); m_table->item(idx, 2)->setText(QString::number(blue16(c))); m_table->item(idx, 3)->setText(QString::number(alpha16(c))); - m_table->item(idx, 4)->setText(toQColor(m_pal->colors[idx]).name(QColor::HexArgb)); + m_table->item(idx, 4)->setText(toQColor(m_pal->colors[static_cast(idx)]).name(QColor::HexArgb)); connect(m_table, &QTableWidget::cellChanged, this, &PaletteEditor::cellChanged); } void PaletteEditor::updateColor(int idx, Color16 c) { - m_pal->colors[idx] = c; + m_pal->colors[static_cast(idx)] = c; setTableRow(idx, c); setUnsavedChanges(true); } @@ -266,7 +266,7 @@ void PaletteEditor::colorSelected() { } void PaletteEditor::cellChanged(int row, int) { - auto oldColor = m_pal->colors[row]; + auto oldColor = m_pal->colors[static_cast(row)]; auto newColor = rowColor(row); undoStack()->push(new UpdateColorCommand(this, row, oldColor, newColor)); } @@ -278,7 +278,7 @@ void PaletteEditor::addColorClicked() { void PaletteEditor::rmColorClicked() { auto row = m_table->currentRow(); - undoStack()->push(new RemoveColorCommand(this, m_pal->colors[row], row)); + undoStack()->push(new RemoveColorCommand(this, m_pal->colors[static_cast(row)], row)); } } diff --git a/src/nostalgia/core/studio/tilesheeteditor.cpp b/src/nostalgia/core/studio/tilesheeteditor.cpp index 54160fd0..952ee25a 100644 --- a/src/nostalgia/core/studio/tilesheeteditor.cpp +++ b/src/nostalgia/core/studio/tilesheeteditor.cpp @@ -366,10 +366,10 @@ std::unique_ptr SheetData::toNostalgiaGraphic() const { ng->bpp = highestColorIdx > 15 ? 8 : 4; ng->columns = m_columns; ng->rows = m_rows; - auto pixelCount = ng->rows * ng->columns * PixelsPerTile; + auto pixelCount = static_cast(ng->rows * ng->columns * PixelsPerTile); if (ng->bpp == 4) { ng->tiles.resize(pixelCount / 2); - for (int i = 0; i < pixelCount; ++i) { + for (std::size_t i = 0; i < pixelCount; ++i) { if (i & 1) { ng->tiles[i / 2] |= static_cast(m_pixels[i]) << 4; } else {