adding a real ui for the tile viewer

This commit is contained in:
Clément Le Bihan
2021-05-26 00:44:37 +02:00
parent 19ca618857
commit 85ac1422e2
4 changed files with 114 additions and 47 deletions
+2 -1
View File
@@ -37,6 +37,8 @@ namespace ComSquare::Debugger
int nbTilesDrawn = 0;
int resetX = bufX;
int it = 0;
for (auto &i : buffer)
i.fill(0);
for (uint24_t i = 0; i < fmin(this->_ram->getSize(), this->_renderSize); i += 2, it++) {
if (bufX > 128 || bufY > 128)
@@ -50,7 +52,6 @@ namespace ComSquare::Debugger
}
if (nbTilesDrawn && nbTilesDrawn % this->_nbColumns == 0) {
nbTilesDrawn = 0;
//break;
resetX = this->_offsetX;
bufX = resetX;
bufY += PPU::Tile::NbPixelsHeight;
+3 -2
View File
@@ -23,14 +23,15 @@ namespace ComSquare::Debugger
: _window(new ClosableWindow<TileViewer>(*this, &TileViewer::disableViewer)),
_snes(snes),
_ui(),
_ppu(ppu)
_ppu(ppu),
_tileRenderer()
{
this->_window->setContextMenuPolicy(Qt::NoContextMenu);
this->_window->setAttribute(Qt::WA_QuitOnClose, false);
this->_window->setAttribute(Qt::WA_DeleteOnClose);
this->_ui.setupUi(this->_window);
this->_sfWidget = std::make_unique<Renderer::QtSFML>(this->_ui.tab);
//this->_sfWidget = std::make_unique<Renderer::QtSFML>(this->_ui.tab);
this->_window->show();
QEvent::registerEventType();
}
+4 -2
View File
@@ -18,7 +18,7 @@ namespace ComSquare::PPU
#include "Renderer/QtRenderer/QtSFML.hpp"
#include "../../../ui/ui_tileView.h"
#include "Ram/Ram.hpp"
#include "TileRenderer.hpp"
namespace ComSquare::Debugger
{
@@ -35,7 +35,9 @@ namespace ComSquare::Debugger
//! @brief A reference to the ppu
ComSquare::PPU::PPU &_ppu;
//! @brief the window
std::unique_ptr<Renderer::QtSFML> _sfWidget;
//std::unique_ptr<Renderer::QtSFML> _sfWidget;
TileRenderer _tileRenderer;
public:
//! @brief Called when the window is closed. Turn off the debugger.
void disableViewer();