From 623e2ef6ddf46e4aea4af9f1ae61c9c0af93242f Mon Sep 17 00:00:00 2001 From: dismine Date: Wed, 25 Jun 2014 13:30:22 +0300 Subject: [PATCH] Refactoring. --HG-- branch : develop --- src/app/dialogs/app/dialogincrements.cpp | 99 ++++++------------------ src/app/dialogs/app/dialogincrements.h | 2 + 2 files changed, 26 insertions(+), 75 deletions(-) diff --git a/src/app/dialogs/app/dialogincrements.cpp b/src/app/dialogs/app/dialogincrements.cpp index a4df3d8f5..1d9d1ef87 100644 --- a/src/app/dialogs/app/dialogincrements.cpp +++ b/src/app/dialogs/app/dialogincrements.cpp @@ -38,6 +38,7 @@ #include #include #include +#include //--------------------------------------------------------------------------------------------------------------------- /** @@ -296,13 +297,12 @@ void DialogIncrements::FillIncrements() } //--------------------------------------------------------------------------------------------------------------------- -/** - * @brief FillLengthLines fill data for table of lines lengths - */ -void DialogIncrements::FillLengthLines() +void DialogIncrements::FillTable(const QHash *varTable, QTableWidget *table) { - const QHash *linesTable = data->DataLengthLines(); - QHashIterator iHash(*linesTable); + SCASSERT(table != nullptr); + SCASSERT(varTable != nullptr); + + QHashIterator iHash(*varTable); QMap map; //Sorting QHash by name while (iHash.hasNext()) @@ -318,20 +318,29 @@ void DialogIncrements::FillLengthLines() i.next(); qreal length = i.value(); currentRow++; - ui->tableWidgetLines->setRowCount ( linesTable->size() ); + table->setRowCount ( varTable->size() ); - QTableWidgetItem *item = new QTableWidgetItem(QString(i.key())); + QTableWidgetItem *item = new QTableWidgetItem(i.key()); item->setTextAlignment(Qt::AlignLeft); item->setFont(QFont("Times", 12, QFont::Bold)); - ui->tableWidgetLines->setItem(currentRow, 0, item); + table->setItem(currentRow, 0, item); item = new QTableWidgetItem(QString().setNum(length)); item->setTextAlignment(Qt::AlignHCenter); - ui->tableWidgetLines->setItem(currentRow, 1, item); + table->setItem(currentRow, 1, item); } - ui->tableWidgetLines->resizeColumnsToContents(); - ui->tableWidgetLines->resizeRowsToContents(); - ui->tableWidgetLines->verticalHeader()->setDefaultSectionSize(20); + table->resizeColumnsToContents(); + table->resizeRowsToContents(); + table->verticalHeader()->setDefaultSectionSize(20); +} + +//--------------------------------------------------------------------------------------------------------------------- +/** + * @brief FillLengthLines fill data for table of lines lengths + */ +void DialogIncrements::FillLengthLines() +{ + FillTable(data->DataLengthLines(), ui->tableWidgetLines); } //--------------------------------------------------------------------------------------------------------------------- @@ -340,37 +349,7 @@ void DialogIncrements::FillLengthLines() */ void DialogIncrements::FillLengthSplines() { - const QHash *splinesTable = data->DataLengthSplines(); - QHashIterator iHash(*splinesTable); - QMap map; - //Sorting QHash by name - while (iHash.hasNext()) - { - iHash.next(); - map.insert(qApp->VarToUser(iHash.key()), iHash.value()); - } - - qint32 currentRow = -1; - QMapIterator i(map); - while (i.hasNext()) - { - i.next(); - qreal length = i.value(); - currentRow++; - ui->tableWidgetSplines->setRowCount ( splinesTable->size() ); - - QTableWidgetItem *item = new QTableWidgetItem(i.key()); - item->setTextAlignment(Qt::AlignLeft); - item->setFont(QFont("Times", 12, QFont::Bold)); - ui->tableWidgetSplines->setItem(currentRow, 0, item); - - item = new QTableWidgetItem(QString().setNum(length)); - item->setTextAlignment(Qt::AlignHCenter); - ui->tableWidgetSplines->setItem(currentRow, 1, item); - } - ui->tableWidgetSplines->resizeColumnsToContents(); - ui->tableWidgetSplines->resizeRowsToContents(); - ui->tableWidgetSplines->verticalHeader()->setDefaultSectionSize(20); + FillTable(data->DataLengthSplines(), ui->tableWidgetSplines); } //--------------------------------------------------------------------------------------------------------------------- @@ -379,37 +358,7 @@ void DialogIncrements::FillLengthSplines() */ void DialogIncrements::FillLengthArcs() { - const QHash *arcsTable = data->DataLengthArcs(); - QHashIterator iHash(*arcsTable); - QMap map; - //Sorting QHash by name - while (iHash.hasNext()) - { - iHash.next(); - map.insert(qApp->VarToUser(iHash.key()), iHash.value()); - } - - qint32 currentRow = -1; - QMapIterator i(map); - while (i.hasNext()) - { - i.next(); - qreal length = i.value(); - currentRow++; - ui->tableWidgetArcs->setRowCount ( arcsTable->size() ); - - QTableWidgetItem *item = new QTableWidgetItem(i.key()); - item->setTextAlignment(Qt::AlignLeft); - item->setFont(QFont("Times", 12, QFont::Bold)); - ui->tableWidgetArcs->setItem(currentRow, 0, item); - - item = new QTableWidgetItem(QString().setNum(length)); - item->setTextAlignment(Qt::AlignHCenter); - ui->tableWidgetArcs->setItem(currentRow, 1, item); - } - ui->tableWidgetArcs->verticalHeader()->setDefaultSectionSize(20); - ui->tableWidgetArcs->resizeColumnsToContents(); - ui->tableWidgetArcs->resizeRowsToContents(); + FillTable(data->DataLengthArcs(), ui->tableWidgetArcs); } //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/app/dialogs/app/dialogincrements.h b/src/app/dialogs/app/dialogincrements.h index 2b4d18e03..30adc87b6 100644 --- a/src/app/dialogs/app/dialogincrements.h +++ b/src/app/dialogs/app/dialogincrements.h @@ -33,6 +33,7 @@ class VPattern; class VIndividualMeasurements; +class QTableWidget; namespace Ui { @@ -93,6 +94,7 @@ private: void FillMeasurements(); void FillIncrements(); + void FillTable(const QHash *varTable, QTableWidget *table); void FillLengthLines(); void FillLengthSplines(); void FillLengthArcs();