Added logic to fill out palette label when moving cursor over tile.
This commit is contained in:
parent
cc70f501c8
commit
6ef21c4433
|
@ -150,6 +150,7 @@ ppuViewerDialog_t::ppuViewerDialog_t(QWidget *parent)
|
|||
patternView[1]->setPattern( &pattern1 );
|
||||
patternView[0]->setTileLabel( tileLabel[0] );
|
||||
patternView[1]->setTileLabel( tileLabel[1] );
|
||||
paletteView->setTileLabel( paletteFrame );
|
||||
|
||||
scanLineEdit->setMaxLength( 3 );
|
||||
scanLineEdit->setInputMask( ">900;" );
|
||||
|
@ -316,12 +317,18 @@ void ppuPatternView_t::mousePressEvent(QMouseEvent * event)
|
|||
|
||||
if ( event->button() == Qt::LeftButton )
|
||||
{
|
||||
// TODO Load Tile Viewport
|
||||
// Load Tile Viewport
|
||||
PPUViewSkip = 100;
|
||||
|
||||
FCEUD_UpdatePPUView( -1, 0 );
|
||||
}
|
||||
else if ( event->button() == Qt::RightButton )
|
||||
{
|
||||
pindex[ patternIndex ] = (pindex[ patternIndex ] + 1) % 9;
|
||||
|
||||
PPUViewSkip = 100;
|
||||
|
||||
FCEUD_UpdatePPUView( -1, 0 );
|
||||
}
|
||||
}
|
||||
//----------------------------------------------------
|
||||
|
@ -558,22 +565,83 @@ void FCEUD_UpdatePPUView(int scanline, int refreshchr)
|
|||
ppuPalatteView_t::ppuPalatteView_t(QWidget *parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
setMinimumWidth( 32 * PALETTEHEIGHT );
|
||||
this->setFocusPolicy(Qt::StrongFocus);
|
||||
this->setMouseTracking(true);
|
||||
|
||||
setMinimumWidth( 32 * PALETTEWIDTH );
|
||||
setMinimumHeight( 32 * PALETTEHEIGHT );
|
||||
|
||||
viewWidth = 32 * PALETTEWIDTH;
|
||||
viewHeight = 32 * PALETTEHEIGHT;
|
||||
|
||||
boxWidth = viewWidth / PALETTEWIDTH;
|
||||
boxHeight = viewHeight / PALETTEHEIGHT;
|
||||
|
||||
frame = NULL;
|
||||
}
|
||||
//----------------------------------------------------
|
||||
ppuPalatteView_t::~ppuPalatteView_t(void)
|
||||
{
|
||||
|
||||
}
|
||||
//----------------------------------------------------
|
||||
void ppuPalatteView_t::setTileLabel( QGroupBox *l )
|
||||
{
|
||||
frame = l;
|
||||
}
|
||||
//----------------------------------------------------
|
||||
QPoint ppuPalatteView_t::convPixToTile( QPoint p )
|
||||
{
|
||||
QPoint t(0,0);
|
||||
|
||||
t.setX( p.x() / boxWidth );
|
||||
t.setY( p.y() / boxHeight );
|
||||
|
||||
return t;
|
||||
}
|
||||
//----------------------------------------------------
|
||||
void ppuPalatteView_t::resizeEvent(QResizeEvent *event)
|
||||
{
|
||||
viewWidth = event->size().width();
|
||||
viewHeight = event->size().height();
|
||||
|
||||
boxWidth = viewWidth / PALETTEWIDTH;
|
||||
boxHeight = viewHeight / PALETTEHEIGHT;
|
||||
}
|
||||
//----------------------------------------------------
|
||||
void ppuPalatteView_t::mouseMoveEvent(QMouseEvent *event)
|
||||
{
|
||||
QPoint tile = convPixToTile( event->pos() );
|
||||
|
||||
if ( (tile.x() < PALETTEWIDTH) && (tile.y() < PALETTEHEIGHT) )
|
||||
{
|
||||
char stmp[64];
|
||||
int ix = (tile.y()<<4)|tile.x();
|
||||
|
||||
sprintf( stmp, "Palette: $%02X", palcache[ix]);
|
||||
|
||||
frame->setTitle( tr(stmp) );
|
||||
}
|
||||
}
|
||||
//----------------------------------------------------------------------------
|
||||
void ppuPalatteView_t::mousePressEvent(QMouseEvent * event)
|
||||
{
|
||||
//QPoint tile = convPixToTile( event->pos() );
|
||||
|
||||
//if ( event->button() == Qt::LeftButton )
|
||||
//{
|
||||
//}
|
||||
//else if ( event->button() == Qt::RightButton )
|
||||
//{
|
||||
//}
|
||||
}
|
||||
//----------------------------------------------------
|
||||
void ppuPalatteView_t::paintEvent(QPaintEvent *event)
|
||||
{
|
||||
int x,y,w,h,xx,yy;
|
||||
QPainter painter(this);
|
||||
int viewWidth = event->rect().width();
|
||||
int viewHeight = event->rect().height();
|
||||
viewWidth = event->rect().width();
|
||||
viewHeight = event->rect().height();
|
||||
|
||||
//printf("PPU PatternView %ix%i \n", viewWidth, viewHeight );
|
||||
|
||||
|
@ -599,7 +667,6 @@ void ppuPalatteView_t::paintEvent(QPaintEvent *event)
|
|||
x = i*w;
|
||||
painter.drawLine( x, 0 , x, y );
|
||||
}
|
||||
|
||||
|
||||
x = PALETTEWIDTH*w;
|
||||
for (int i=0; i<=PALETTEHEIGHT; i++)
|
||||
|
|
|
@ -70,8 +70,18 @@ class ppuPalatteView_t : public QWidget
|
|||
ppuPalatteView_t(QWidget *parent = 0);
|
||||
~ppuPalatteView_t(void);
|
||||
|
||||
void setTileLabel( QGroupBox *l );
|
||||
QPoint convPixToTile( QPoint p );
|
||||
protected:
|
||||
void paintEvent(QPaintEvent *event);
|
||||
void resizeEvent(QResizeEvent *event);
|
||||
void mouseMoveEvent(QMouseEvent *event);
|
||||
void mousePressEvent(QMouseEvent * event);
|
||||
int viewWidth;
|
||||
int viewHeight;
|
||||
int boxWidth;
|
||||
int boxHeight;
|
||||
QGroupBox *frame;
|
||||
};
|
||||
|
||||
class ppuViewerDialog_t : public QDialog
|
||||
|
|
Loading…
Reference in New Issue