void MainWindow::instanceChanged(const QModelIndex ¤t, const QModelIndex &previous) { if(!current.isValid()) { selectionBad(); MMC->settings()->set("SelectedInstance", QString()); return; } QString id = current.data(InstanceList::InstanceIDRole).toString(); m_selectedInstance = MMC->instances()->getInstanceById(id); if ( m_selectedInstance ) { ui->instanceToolBar->setEnabled(m_selectedInstance->canLaunch()); renameButton->setText(m_selectedInstance->name()); ui->actionChangeInstLWJGLVersion->setEnabled( m_selectedInstance->menuActionEnabled("actionChangeInstLWJGLVersion")); ui->actionEditInstMods->setEnabled( m_selectedInstance->menuActionEnabled("actionEditInstMods")); ui->actionChangeInstMCVersion->setEnabled( m_selectedInstance->menuActionEnabled("actionChangeInstMCVersion")); m_statusLeft->setText(m_selectedInstance->getStatusbarDescription()); updateInstanceToolIcon(m_selectedInstance->iconKey()); updateToolsMenu(); MMC->settings()->set("SelectedInstance", m_selectedInstance->id()); } else { selectionBad(); MMC->settings()->set("SelectedInstance", QString()); return; } }
void MainWindow::instanceChanged(const QModelIndex ¤t, const QModelIndex &previous) { if (current.isValid() && nullptr != (m_selectedInstance = (BaseInstance *)current.data(InstanceList::InstancePointerRole) .value<void *>())) { ui->instanceToolBar->setEnabled(true); renameButton->setText(m_selectedInstance->name()); ui->actionChangeInstLWJGLVersion->setEnabled( m_selectedInstance->menuActionEnabled("actionChangeInstLWJGLVersion")); ui->actionEditInstMods->setEnabled( m_selectedInstance->menuActionEnabled("actionEditInstMods")); ui->actionChangeInstMCVersion->setEnabled( m_selectedInstance->menuActionEnabled("actionChangeInstMCVersion")); m_statusLeft->setText(m_selectedInstance->getStatusbarDescription()); updateInstanceToolIcon(m_selectedInstance->iconKey()); MMC->settings()->set("SelectedInstance", m_selectedInstance->id()); } else { selectionBad(); MMC->settings()->set("SelectedInstance", QString()); } }
void MainWindow::selectionBad() { m_selectedInstance = nullptr; statusBar()->clearMessage(); ui->instanceToolBar->setEnabled(false); renameButton->setText(tr("Rename Instance")); updateInstanceToolIcon("infinity"); }
void MainWindow::selectionBad() { // start by reseting everything... m_selectedInstance = nullptr; statusBar()->clearMessage(); ui->instanceToolBar->setEnabled(false); renameButton->setText(tr("Rename Instance")); updateInstanceToolIcon("infinity"); // ...and then see if we can enable the previously selected instance setSelectedInstanceById(MMC->settings()->get("SelectedInstance").toString()); }