X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgui%2Fconfigdialog.cpp;h=8ee3ce175fb95a1a3ec2c2204d4abe636fa7128e;hb=a0f9dd93d237ed4d73e92fffc0f877f55ad14fdf;hp=f2cc06e708857d585252d1e96f20d991b1d53ebf;hpb=868fd551420e8b88e0bcf363c121e6e84a71b09a;p=virtualjaguar diff --git a/src/gui/configdialog.cpp b/src/gui/configdialog.cpp index f2cc06e..8ee3ce1 100644 --- a/src/gui/configdialog.cpp +++ b/src/gui/configdialog.cpp @@ -14,8 +14,10 @@ #include "configdialog.h" -#include "generaltab.h" +#include "alpinetab.h" #include "controllertab.h" +#include "controllerwidget.h" +#include "generaltab.h" #include "settings.h" @@ -23,9 +25,18 @@ ConfigDialog::ConfigDialog(QWidget * parent/*= 0*/): QDialog(parent) { tabWidget = new QTabWidget; generalTab = new GeneralTab(this); - controllerTab = new ControllerTab(this); + controllerTab1 = new ControllerTab(this); + controllerTab2 = new ControllerTab(this); + + if (vjs.hardwareTypeAlpine) + alpineTab = new AlpineTab(this); + tabWidget->addTab(generalTab, tr("General")); - tabWidget->addTab(controllerTab, tr("Controller")); + tabWidget->addTab(controllerTab1, tr("Controller #1")); + tabWidget->addTab(controllerTab2, tr("Controller #2")); + + if (vjs.hardwareTypeAlpine) + tabWidget->addTab(alpineTab, tr("Alpine")); buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); @@ -40,6 +51,8 @@ ConfigDialog::ConfigDialog(QWidget * parent/*= 0*/): QDialog(parent) setWindowTitle(tr("Virtual Jaguar Settings")); LoadDialogFromSettings(); +// controllerTab1->UpdateLabel(); // Now it's safe to do this... ;-) +// controllerTab2->UpdateLabel(); // Now it's safe to do this... ;-) } ConfigDialog::~ConfigDialog() @@ -54,8 +67,24 @@ void ConfigDialog::LoadDialogFromSettings(void) generalTab->edit4->setText(vjs.ROMPath); generalTab->useBIOS->setChecked(vjs.useJaguarBIOS); + generalTab->useGPU->setChecked(vjs.GPUEnabled); generalTab->useDSP->setChecked(vjs.DSPEnabled); generalTab->useHostAudio->setChecked(vjs.audioEnabled); + + if (vjs.hardwareTypeAlpine) + { + alpineTab->edit1->setText(vjs.alpineROMPath); + alpineTab->edit2->setText(vjs.absROMPath); + alpineTab->writeROM->setChecked(vjs.allowWritesToROM); + } + + for(int i=0; i<21; i++) + { +// controllerTab1->p1Keys[i] = vjs.p1KeyBindings[i]; +// controllerTab2->p1Keys[i] = vjs.p2KeyBindings[i]; + controllerTab1->controllerWidget->keys[i] = vjs.p1KeyBindings[i]; + controllerTab2->controllerWidget->keys[i] = vjs.p2KeyBindings[i]; + } } void ConfigDialog::UpdateVJSettings(void) @@ -66,6 +95,22 @@ void ConfigDialog::UpdateVJSettings(void) strcpy(vjs.ROMPath, generalTab->edit4->text().toAscii().data()); vjs.useJaguarBIOS = generalTab->useBIOS->isChecked(); + vjs.GPUEnabled = generalTab->useGPU->isChecked(); vjs.DSPEnabled = generalTab->useDSP->isChecked(); vjs.audioEnabled = generalTab->useHostAudio->isChecked(); + + if (vjs.hardwareTypeAlpine) + { + strcpy(vjs.alpineROMPath, alpineTab->edit1->text().toAscii().data()); + strcpy(vjs.absROMPath, alpineTab->edit2->text().toAscii().data()); + vjs.allowWritesToROM = alpineTab->writeROM->isChecked(); + } + + for(int i=0; i<21; i++) + { +// vjs.p1KeyBindings[i] = controllerTab1->p1Keys[i]; +// vjs.p2KeyBindings[i] = controllerTab2->p1Keys[i]; + vjs.p1KeyBindings[i] = controllerTab1->controllerWidget->keys[i]; + vjs.p2KeyBindings[i] = controllerTab2->controllerWidget->keys[i]; + } }