Added sprite preview area sizing options to menu.

This commit is contained in:
mjbudd77 2021-04-17 07:25:44 -04:00
parent a09121b28d
commit 922c34c00e
2 changed files with 45 additions and 0 deletions

View File

@ -2591,6 +2591,25 @@ spriteViewerDialog_t::spriteViewerDialog_t(QWidget *parent)
viewMenu->addAction(act);
// View -> Preview Size
subMenu = viewMenu->addMenu(tr("Preview &Size"));
group = new QActionGroup(this);
group->setExclusive(true);
act = new QAction(tr("&1x"), this);
act->setCheckable(true);
act->setChecked(true);
group->addAction(act);
subMenu->addAction(act);
connect(act, SIGNAL(triggered()), this, SLOT(setPreviewSize1x(void)) );
act = new QAction(tr("&2x"), this);
act->setCheckable(true);
act->setChecked(false);
group->addAction(act);
subMenu->addAction(act);
connect(act, SIGNAL(triggered()), this, SLOT(setPreviewSize2x(void)) );
// Focus Policy
optMenu = menuBar->addMenu(tr("&Options"));
@ -2812,6 +2831,17 @@ void spriteViewerDialog_t::toggleGridVis(void)
oamView->setGridVisibility( !oamView->getGridVisibility() );
}
//----------------------------------------------------
void spriteViewerDialog_t::setPreviewSize1x(void)
{
preView->setMinScale(1);
resize( minimumSizeHint() );
}
//----------------------------------------------------
void spriteViewerDialog_t::setPreviewSize2x(void)
{
preView->setMinScale(2);
}
//----------------------------------------------------
void spriteViewerDialog_t::togglePreviewVis(bool state)
{
if ( state )
@ -3354,6 +3384,18 @@ void oamPreview_t::setIndex(int val)
selSprite = val;
}
//----------------------------------------------------
void oamPreview_t::setMinScale(int scale)
{
if ( scale < 1 )
{
scale = 1;
}
setMinimumWidth( scale*256 );
setMinimumHeight( scale*240 );
return;
}
//----------------------------------------------------
int oamPreview_t::heightForWidth(int w) const
{
return ((w*256)/240);

View File

@ -404,6 +404,7 @@ class oamPreview_t : public QWidget
~oamPreview_t(void);
void setIndex(int val);
void setMinScale(int val);
protected:
void paintEvent(QPaintEvent *event);
void resizeEvent(QResizeEvent *event);
@ -457,6 +458,8 @@ class spriteViewerDialog_t : public QDialog
void setHoverFocus(void);
void toggleGridVis(void);
void togglePreviewVis(bool);
void setPreviewSize1x(void);
void setPreviewSize2x(void);
void previewAnimWidthChange(const QVariant &);
void previewAnimResizeDone(void);
};