Files
Sourcetrail/src/lib_gui/qt/window/project_wizzard/QtProjectWizzardContentJavaStandard.cpp
T
mlangkabel 704808b26f logic: added C/C++ project setup from Code::Blocks
* 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
2018-06-08 12:10:38 +02:00

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());
}
}