- BUILD_RTI conditional compilation für RTI Connext DDS dependencies - Namespace fixes in core_dtc.h (Core:: → DDS::Core::) - CMakeLists.txt: BUILD_RTI option und conditional dependencies - Handler minelayer: namespace closing mit BUILD_RTI guard - Build erfolgreich mit BUILD_RTI=OFF validiert Signed-off-by: Torsten Wierschin <torsten.wierschin@life-maps.com>
168 lines
4.7 KiB
C++
168 lines
4.7 KiB
C++
|
|
|
|
#include "maindialog.h"
|
|
|
|
#include "cod_numeral_code_model.h"
|
|
#include "ui_maindialog.h"
|
|
|
|
#include <NGLLogger/NGLLoggerBootstrap.h>
|
|
#include <QVector>
|
|
|
|
MainDialog::MainDialog(QWidget *parent) : QDialog(parent)
|
|
, m_ui(new Ui::MainDialog)
|
|
, m_numCodeModel(new NumeralCodeModel(parent))
|
|
.getNGLLogger("COD_Test_NumeralCodeTableMainDialog")),
|
|
m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
|
{
|
|
m_ui->setupUi(this);
|
|
}
|
|
|
|
MainDialog::~MainDialog()
|
|
{
|
|
delete m_ui;
|
|
}
|
|
|
|
bool MainDialog::init()
|
|
{
|
|
bool bOk = initNumeralModel();
|
|
|
|
connect(m_ui->cbEditMode, &QCheckBox::toggled, this, &MainDialog::onCbEditModeToggled);
|
|
|
|
connect(m_ui->pbSetHorizontalHeader, &QPushButton::clicked, this, &MainDialog::onPbSetHorizontalHeaderCSV);
|
|
|
|
connect(m_ui->pbSetVerticalHeader, &QPushButton::clicked, this, &MainDialog::onPbSetVerticalHeaderCSV);
|
|
|
|
m_ui->cbEditMode->setChecked(false);
|
|
onCbEditModeToggled(false);
|
|
m_ui->pbSetHorizontalHeader->setEnabled(false);
|
|
m_ui->pbSetVerticalHeader->setEnabled(false);
|
|
|
|
return bOk;
|
|
}
|
|
|
|
bool MainDialog::initNumeralModel()
|
|
{
|
|
m_ui->tvNumeralCode->setModel(m_numCodeModel);
|
|
|
|
QHeaderView* header = m_ui->tvNumeralCode->horizontalHeader();
|
|
|
|
header->setVisible(true);
|
|
|
|
QHeaderView* vheader = m_ui->tvNumeralCode->verticalHeader();
|
|
vheader->setVisible(true);
|
|
|
|
m_ui->tvNumeralCode->setShowGrid(true);
|
|
|
|
m_ui->tvNumeralCode->setSelectionMode(QAbstractItemView::SingleSelection);
|
|
|
|
return true;
|
|
}
|
|
|
|
void MainDialog::onCbEditModeToggled(bool isChecked)
|
|
{
|
|
m_numCodeModel->setEditMode(isChecked);
|
|
|
|
QHeaderView* header = m_ui->tvNumeralCode->horizontalHeader();
|
|
QHeaderView* vheader = m_ui->tvNumeralCode->verticalHeader();
|
|
|
|
if (isChecked)
|
|
{
|
|
header->setVisible(false);
|
|
vheader->setVisible(false);
|
|
m_ui->tvNumeralCode->setColumnHidden(0, false);
|
|
m_ui->tvNumeralCode->setRowHidden(0, false);
|
|
|
|
m_ui->pbSetHorizontalHeader->setEnabled(true);
|
|
m_ui->pbSetVerticalHeader->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
header->setVisible(true);
|
|
vheader->setVisible(true);
|
|
m_ui->tvNumeralCode->setColumnHidden(0, true);
|
|
m_ui->tvNumeralCode->setRowHidden(0, true);
|
|
|
|
m_ui->pbSetHorizontalHeader->setEnabled(false);
|
|
m_ui->pbSetVerticalHeader->setEnabled(false);
|
|
|
|
getNumeralCodeHeader();
|
|
}
|
|
}
|
|
|
|
void MainDialog::onPbSetHorizontalHeader()
|
|
{
|
|
QVector<char> columnSelectionValues;
|
|
columnSelectionValues << 'h' << 'o' << 'r' << 'i' << 'z' << 'o' << 'n' << 't' << 'a' << 'l' << 'i' << 'd' << 'x';
|
|
|
|
m_numCodeModel->setColumnSelectionValues(columnSelectionValues);
|
|
}
|
|
|
|
void MainDialog::onPbSetHorizontalHeaderCSV()
|
|
{
|
|
QVector<char> columnSelectionValues;
|
|
columnSelectionValues << 'h' << 'o' << 'r' << 'i' << 'z' << 'o' << 'n' << 't' << 'a' << 'l' << 'c' << 's' << 'v';
|
|
|
|
QVector<char> csvVec;
|
|
csvVec.reserve(columnSelectionValues.size() * 2);
|
|
for (int i = 0; i < columnSelectionValues.size(); ++i)
|
|
{
|
|
csvVec.append(columnSelectionValues.at(i));
|
|
csvVec.append(';');
|
|
}
|
|
|
|
csvVec.remove(columnSelectionValues.size() * 2 - 1);
|
|
|
|
DEBUG_LOG(m_logger) << "onPbSetHorizontalHeaderCSV() "
|
|
<< " csvVec.size(): " << csvVec.size();
|
|
|
|
m_numCodeModel->setColumnSelectionValuesCSV(csvVec);
|
|
}
|
|
|
|
void MainDialog::onPbSetVerticalHeader()
|
|
{
|
|
QVector<char> rowSelectionValues;
|
|
rowSelectionValues << 'v' << 'e' << 'r' << 't' << 'i' << 'c' << 'a' << 'l' << 'i' << 'n' << 'd' << 'e' << 'x';
|
|
|
|
m_numCodeModel->setRowSelectionValues(rowSelectionValues);
|
|
}
|
|
|
|
void MainDialog::onPbSetVerticalHeaderCSV()
|
|
{
|
|
QVector<char> rowSelectionValues;
|
|
rowSelectionValues << 'v' << 'e' << 'r' << 't' << 'i' << 'c' << 'a' << 'l' << 'i' << 'n' << 'c' << 's' << 'v';
|
|
|
|
QVector<char> csvVec;
|
|
csvVec.reserve(rowSelectionValues.size() * 2);
|
|
for (int i = 0; i < rowSelectionValues.size(); ++i)
|
|
{
|
|
csvVec.append(rowSelectionValues.at(i));
|
|
csvVec.append(';');
|
|
}
|
|
|
|
csvVec.remove(rowSelectionValues.size() * 2 - 1);
|
|
|
|
DEBUG_LOG(m_logger) << "onPbSetVerticalHeaderCSV() "
|
|
<< " csvVec.size(): " << csvVec.size();
|
|
|
|
m_numCodeModel->setRowSelectionValuesCSV(csvVec);
|
|
}
|
|
|
|
void MainDialog::getNumeralCodeHeader()
|
|
{
|
|
QVector<char> qVecHH = m_numCodeModel->getHorizontalHeaderCSV();
|
|
QByteArray qbaHH;
|
|
|
|
for (int i = 0; i < qVecHH.size(); ++i)
|
|
qbaHH.append(qVecHH.at(i));
|
|
|
|
QVector<char> qVecVH = m_numCodeModel->getVerticalHeaderCSV();
|
|
QByteArray qbaVH;
|
|
|
|
for (int i = 0; i < qVecVH.size(); ++i)
|
|
qbaVH.append(qVecVH.at(i));
|
|
|
|
DEBUG_LOG(m_logger) << "getNumeralCodeHeader()"
|
|
<< " HH: " << qbaHH << " size: " << qbaHH.size() << " VH: " << qbaVH
|
|
<< " size: " << qbaVH.size();
|
|
}
|