* also changed xml elements in sourcegroup settings that specify the used language standard, so that one sourcegroup can maintain multiple language standards * added migration and migrated sample projects
61 lines
1.5 KiB
C++
61 lines
1.5 KiB
C++
#include "qt/window/project_wizzard/QtProjectWizzardContentJavaStandard.h"
|
|
|
|
#include <QComboBox>
|
|
#include <QLabel>
|
|
|
|
#include "settings/SourceGroupSettingsWithJavaStandard.h"
|
|
|
|
QtProjectWizzardContentJavaStandard::QtProjectWizzardContentJavaStandard(
|
|
std::shared_ptr<SourceGroupSettingsWithJavaStandard> sourceGroupSettings,
|
|
QtProjectWizzardWindow* window
|
|
)
|
|
: QtProjectWizzardContent(window)
|
|
, m_sourceGroupSettings(sourceGroupSettings)
|
|
, m_standard(nullptr)
|
|
{
|
|
}
|
|
|
|
void QtProjectWizzardContentJavaStandard::populate(QGridLayout* layout, int& row)
|
|
{
|
|
if (!isInForm())
|
|
{
|
|
layout->setRowMinimumHeight(row, 15);
|
|
row++;
|
|
}
|
|
|
|
m_standard = new QComboBox();
|
|
layout->addWidget(createFormLabel("Java Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
|
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
|
row++;
|
|
|
|
if (!isInForm())
|
|
{
|
|
layout->setRowMinimumHeight(row, 15);
|
|
layout->setRowStretch(row, 1);
|
|
}
|
|
}
|
|
|
|
void QtProjectWizzardContentJavaStandard::load()
|
|
{
|
|
m_standard->clear();
|
|
|
|
if (m_sourceGroupSettings)
|
|
{
|
|
std::vector<std::string> standards = m_sourceGroupSettings->getAvailableJavaStandards();
|
|
for (size_t i = 0; i < standards.size(); i++)
|
|
{
|
|
m_standard->insertItem(i, standards[i].c_str());
|
|
}
|
|
|
|
m_standard->setCurrentText(QString::fromStdString(m_sourceGroupSettings->getJavaStandard()));
|
|
}
|
|
}
|
|
|
|
void QtProjectWizzardContentJavaStandard::save()
|
|
{
|
|
if (m_sourceGroupSettings)
|
|
{
|
|
m_sourceGroupSettings->setJavaStandard(m_standard->currentText().toStdString());
|
|
}
|
|
}
|