Add dummy column to fill any extra horizontal space.

This commit is contained in:
Jim Evins
2016-05-12 00:22:53 -04:00
parent 81a73c8e1e
commit b599c56cd2
+16 -1
View File
@@ -107,12 +107,14 @@ void MergeView::loadHeaders( Merge* merge )
mPrimaryKey = merge->primaryKey(); mPrimaryKey = merge->primaryKey();
mKeys = merge->keyList(); mKeys = merge->keyList();
recordsTable->setColumnCount( mKeys.size() ); recordsTable->setColumnCount( mKeys.size() + 1 ); // Include extra column
// First column = primay Key
QTableWidgetItem* item = new QTableWidgetItem( mPrimaryKey ); QTableWidgetItem* item = new QTableWidgetItem( mPrimaryKey );
item->setFlags( Qt::ItemIsEnabled ); item->setFlags( Qt::ItemIsEnabled );
recordsTable->setHorizontalHeaderItem( 0, item ); recordsTable->setHorizontalHeaderItem( 0, item );
// Starting on second column, one column per key, skip primary Key
int iCol = 1; int iCol = 1;
foreach ( QString key, mKeys ) foreach ( QString key, mKeys )
{ {
@@ -126,6 +128,12 @@ void MergeView::loadHeaders( Merge* merge )
} }
} }
// Extra dummy column to fill any extra horizontal space
QTableWidgetItem* fillItem = new QTableWidgetItem();
fillItem->setFlags( Qt::NoItemFlags );
recordsTable->setHorizontalHeaderItem( iCol, fillItem );
recordsTable->horizontalHeader()->setStretchLastSection( true );
} }
@@ -140,6 +148,7 @@ void MergeView::loadTable( Merge* merge )
int iRow = 0; int iRow = 0;
foreach ( MergeRecord* record, records ) foreach ( MergeRecord* record, records )
{ {
// First column for primay field
QTableWidgetItem* item = new QTableWidgetItem(); QTableWidgetItem* item = new QTableWidgetItem();
if ( record->contains( mPrimaryKey ) ) if ( record->contains( mPrimaryKey ) )
{ {
@@ -150,6 +159,7 @@ void MergeView::loadTable( Merge* merge )
recordsTable->setItem( iRow, 0, item ); recordsTable->setItem( iRow, 0, item );
recordsTable->resizeColumnToContents( 0 ); recordsTable->resizeColumnToContents( 0 );
// Starting on second column, one column per field (even if empty), skip primary field
int iCol = 1; int iCol = 1;
foreach ( QString key, mKeys ) foreach ( QString key, mKeys )
{ {
@@ -167,6 +177,11 @@ void MergeView::loadTable( Merge* merge )
} }
} }
// Extra dummy column to fill any extra horizontal space
QTableWidgetItem* fillItem = new QTableWidgetItem();
fillItem->setFlags( Qt::NoItemFlags );
recordsTable->setItem( iRow, iCol, fillItem );
iRow++; iRow++;
} }