o cleanup
This commit is contained in:
84
tools/bsnes/ui_qt/settings/settings.cpp
Executable file
84
tools/bsnes/ui_qt/settings/settings.cpp
Executable file
@@ -0,0 +1,84 @@
|
||||
#include "video.cpp"
|
||||
#include "audio.cpp"
|
||||
#include "input.cpp"
|
||||
#include "paths.cpp"
|
||||
#include "cheateditor.cpp"
|
||||
#include "advanced.cpp"
|
||||
|
||||
#include "utility/inputcapture.cpp"
|
||||
#include "utility/codeeditor.cpp"
|
||||
|
||||
void SettingsWindow::setup() {
|
||||
window = new QWidget;
|
||||
window->setObjectName("settings-window");
|
||||
window->setWindowTitle("Configuration Settings");
|
||||
|
||||
list = new QListWidget;
|
||||
video = new QListWidgetItem("Video");
|
||||
audio = new QListWidgetItem("Audio");
|
||||
input = new QListWidgetItem("Input");
|
||||
paths = new QListWidgetItem("Paths");
|
||||
cheatcodes = new QListWidgetItem("Cheat Codes");
|
||||
advanced = new QListWidgetItem("Advanced");
|
||||
list->addItem(video);
|
||||
list->addItem(audio);
|
||||
list->addItem(input);
|
||||
list->addItem(paths);
|
||||
list->addItem(cheatcodes);
|
||||
list->addItem(advanced);
|
||||
list->setCurrentItem(input); //select most frequently used panel by default
|
||||
list->setFixedWidth(135);
|
||||
list->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding);
|
||||
|
||||
panel = new QWidget;
|
||||
panel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||
|
||||
layout = new QHBoxLayout;
|
||||
layout->setMargin(Style::WindowMargin);
|
||||
layout->setSpacing(Style::WidgetSpacing);
|
||||
layout->addWidget(list);
|
||||
layout->addWidget(panel);
|
||||
window->setLayout(layout);
|
||||
|
||||
winVideoSettings = new VideoSettingsWindow;
|
||||
winAudioSettings = new AudioSettingsWindow;
|
||||
winInputSettings = new InputSettingsWindow;
|
||||
winPathSettings = new PathSettingsWindow;
|
||||
winCheatEditor = new CheatEditorWindow;
|
||||
winAdvancedSettings = new AdvancedSettingsWindow;
|
||||
winInputCapture = new InputCaptureWindow;
|
||||
winCodeEditor = new CodeEditorWindow;
|
||||
|
||||
winVideoSettings->setup();
|
||||
winAudioSettings->setup();
|
||||
winInputSettings->setup();
|
||||
winPathSettings->setup();
|
||||
winCheatEditor->setup();
|
||||
winAdvancedSettings->setup();
|
||||
winInputCapture->setup();
|
||||
winCodeEditor->setup();
|
||||
|
||||
panelLayout = new QStackedLayout(panel);
|
||||
panelLayout->addWidget(winVideoSettings->panel);
|
||||
panelLayout->addWidget(winAudioSettings->panel);
|
||||
panelLayout->addWidget(winInputSettings->panel);
|
||||
panelLayout->addWidget(winPathSettings->panel);
|
||||
panelLayout->addWidget(winCheatEditor->panel);
|
||||
panelLayout->addWidget(winAdvancedSettings->panel);
|
||||
panel->setLayout(panelLayout);
|
||||
|
||||
connect(list, SIGNAL(currentRowChanged(int)), this, SLOT(listChanged()));
|
||||
|
||||
listChanged();
|
||||
window->setMinimumSize(600, 360);
|
||||
}
|
||||
|
||||
void SettingsWindow::listChanged() {
|
||||
QListWidgetItem *item = list->currentItem();
|
||||
if(item == video) panelLayout->setCurrentWidget(winVideoSettings->panel);
|
||||
if(item == audio) panelLayout->setCurrentWidget(winAudioSettings->panel);
|
||||
if(item == input) panelLayout->setCurrentWidget(winInputSettings->panel);
|
||||
if(item == paths) panelLayout->setCurrentWidget(winPathSettings->panel);
|
||||
if(item == cheatcodes) panelLayout->setCurrentWidget(winCheatEditor->panel);
|
||||
if(item == advanced) panelLayout->setCurrentWidget(winAdvancedSettings->panel);
|
||||
}
|
||||
Reference in New Issue
Block a user