#include "glwidget.h"
#include "about.h"
#include "settings.h"
+#include "filepicker.h"
// The way BSNES controls things is by setting a timer with a zero
// timeout, sleeping if not emulating anything. Seems there has to be a
setWindowIcon(QIcon(":/res/vj.xpm"));
setWindowTitle("Virtual Jaguar v2.0.0");
+ ReadSettings();
+ setUnifiedTitleAndToolBarOnMac(true);
+
aboutWin = new AboutWindow(this);
+ filePickWin = new FilePickerWindow(this);
videoWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
connect(blurAct, SIGNAL(triggered()), this, SLOT(ToggleBlur()));
aboutAct = new QAction(QIcon(":/res/generic.png"), tr("&About..."), this);
- aboutAct->setStatusTip(tr("Shows self-serving credits"));
-// aboutAct->setCheckable(true);
+ aboutAct->setStatusTip(tr("Blatant self-promotion"));
connect(aboutAct, SIGNAL(triggered()), this, SLOT(ShowAboutWin()));
+ filePickAct = new QAction(QIcon(":/res/generic.png"), tr("Insert Cartridge..."), this);
+ filePickAct->setStatusTip(tr("Insert a cartridge into Virtual Jaguar"));
+ connect(filePickAct, SIGNAL(triggered()), this, SLOT(InsertCart()));
+
// Create menus & toolbars
fileMenu = menuBar()->addMenu(tr("&File"));
+ fileMenu->addAction(filePickAct);
fileMenu->addAction(powerAct);
fileMenu->addAction(quitAppAct);
// Create status bar
statusBar()->showMessage(tr("Ready"));
- ReadSettings();
- setUnifiedTitleAndToolBarOnMac(true);
-
// Set toolbar button based on setting read in (sync the UI)...
blurAct->setChecked(vjs.glFilter);
x1Act->setChecked(zoomLevel == 1);
ntscAct->setChecked(vjs.hardwareTypeNTSC);
palAct->setChecked(!vjs.hardwareTypeNTSC);
- // Do this in case original size isn't correct
+ // Do this in case original size isn't correct (mostly for the first-run case)
ResizeMainWindow();
// Set up timer based loop for animation...
void MainWin::ShowAboutWin(void)
{
aboutWin->show();
-// QMessageBox::about(this, tr("About Application"),
-// tr("The <b>Application</b> example demonstrates how to "
-// "write modern GUI applications using Qt, with a menu bar, "
-// "toolbars, and a status bar."));
+}
+
+void MainWin::InsertCart(void)
+{
+ filePickWin->show();
}
void MainWin::ResizeMainWindow(void)
vjs.useOpenGL = settings.value("useOpenGL", true).toBool();
vjs.glFilter = settings.value("glFilterType", 0).toInt();
vjs.renderType = settings.value("renderType", 0).toInt();
+
+ // Hardcoded, !!! FIX !!!
+ strcpy(vjs.ROMPath, "./roms");
}
void MainWin::WriteSettings(void)