void InputSettingsWindow::setup() { panel = new QWidget; layout = new QVBoxLayout; layout->setMargin(0); layout->setSpacing(0); title = new QLabel("Input Configuration Editor"); title->setProperty("class", "title"); layout->addWidget(title); selection = new QHBoxLayout; { port = new QComboBox; port->addItem("Controller Port 1"); port->addItem("Controller Port 2"); port->addItem("User Interface"); selection->addWidget(port); device = new QComboBox; selection->addWidget(device); } selection->setSpacing(Style::WidgetSpacing); layout->addLayout(selection); layout->addSpacing(Style::WidgetSpacing); list = new QTreeWidget; list->setColumnCount(3); list->setHeaderLabels(QStringList() << "Hidden" << "Name" << "Assignment"); list->hideColumn(0); //used for default sorting + hides child expansion box layout->addWidget(list); layout->addSpacing(Style::WidgetSpacing); controls = new QHBoxLayout; { assign = new QPushButton("Assign ..."); controls->addWidget(assign); assignAll = new QPushButton("Assign All ..."); controls->addWidget(assignAll); unassign = new QPushButton("Unassign"); controls->addWidget(unassign); } controls->setSpacing(Style::WidgetSpacing); layout->addLayout(controls); panel->setLayout(layout); connect(port, SIGNAL(currentIndexChanged(int)), this, SLOT(portChanged())); connect(device, SIGNAL(currentIndexChanged(int)), this, SLOT(reloadList())); connect(list, SIGNAL(itemActivated(QTreeWidgetItem*, int)), this, SLOT(assignKey())); connect(list, SIGNAL(itemSelectionChanged()), this, SLOT(listChanged())); connect(assign, SIGNAL(released()), this, SLOT(assignKey())); connect(assignAll, SIGNAL(released()), this, SLOT(assignAllKeys())); connect(unassign, SIGNAL(released()), this, SLOT(unassignKey())); portChanged(); }
void ConfigManager::checkConfigVersion() { const int version = config.getIntValue("cfgver"); if (version < 1) { if (config.getIntValue("fontSize") == 11) config.deleteKey("fontSize"); if (config.getIntValue("npcfontSize") == 13) config.deleteKey("npcfontSize"); } if (version < 2) { if (config.getIntValue("screenButtonsSize") == 1) config.deleteKey("screenButtonsSize"); if (config.getIntValue("screenJoystickSize") == 1) config.deleteKey("screenJoystickSize"); } if (version < 3) { config.setValue("audioFrequency", 44100); #ifdef ANDROID config.setValue("customcursor", false); #endif } if (version < 4) { #ifdef ANDROID config.setValue("showDidYouKnow", false); #endif } if (version < 5) { if (config.getIntValue("speech") == BeingSpeech::TEXT_OVERHEAD) { config.setValue("speech", CAST_S32( BeingSpeech::NO_NAME_IN_BUBBLE)); } } if (version < 6) config.setValue("blur", false); if (version < 7) config.setValue("download-music", true); if (version < 9) { config.deleteKey("videodetected"); config.setValue("moveToTargetType", 10); } if (version < 10) config.setValue("enableLazyScrolling", false); if (version < 11) { #ifdef USE_SDL2 const std::string prefix = std::string("sdl2"); #else const std::string prefix = std::string(); #endif unassignKey("keyDirectUp", "k108"); unassignKey("keyDirectDown", "k59"); unassignKey("keyDirectLeft", "k107"); unassignKey("keyDirectRight", "k39"); } if (version < 12) { #ifdef USE_SDL2 const std::string prefix = std::string("sdl2"); #else const std::string prefix = std::string(); #endif unassignKey("keyAttack", "k120"); } if (version < 13) config.setValue("keyWindowBotChecker", -1); config.setValue("cfgver", 13); }