Dash Core  0.12.2.1
P2P Digital Currency
GUIUtil::TableViewLastColumnResizingFixer Class Reference

#include <guiutil.h>

+ Inheritance diagram for GUIUtil::TableViewLastColumnResizingFixer:

Public Member Functions

 TableViewLastColumnResizingFixer (QTableView *table, int lastColMinimumWidth, int allColsMinimumWidth, QObject *parent)
 
void stretchColumnWidth (int column)
 

Private Slots

void on_sectionResized (int logicalIndex, int oldSize, int newSize)
 
void on_geometriesChanged ()
 

Private Member Functions

void adjustTableColumnsWidth ()
 
int getAvailableWidthForColumn (int column)
 
int getColumnsWidth ()
 
void connectViewHeadersSignals ()
 
void disconnectViewHeadersSignals ()
 
void setViewHeaderResizeMode (int logicalIndex, QHeaderView::ResizeMode resizeMode)
 
void resizeColumn (int nColumnIndex, int width)
 

Private Attributes

QTableView * tableView
 
int lastColumnMinimumWidth
 
int allColumnsMinimumWidth
 
int lastColumnIndex
 
int columnCount
 
int secondToLastColumnIndex
 

Detailed Description

Makes a QTableView last column feel as if it was being resized from its left border. Also makes sure the column widths are never larger than the table's viewport. In Qt, all columns are resizable from the right, but it's not intuitive resizing the last column from the right. Usually our second to last columns behave as if stretched, and when on strech mode, columns aren't resizable interactively or programatically.

This helper object takes care of this issue.

Definition at line 157 of file guiutil.h.

Constructor & Destructor Documentation

◆ TableViewLastColumnResizingFixer()

GUIUtil::TableViewLastColumnResizingFixer::TableViewLastColumnResizingFixer ( QTableView *  table,
int  lastColMinimumWidth,
int  allColsMinimumWidth,
QObject *  parent 
)

Initializes all internal variables and prepares the the resize modes of the last 2 columns of the table and

Definition at line 618 of file guiutil.cpp.

Member Function Documentation

◆ adjustTableColumnsWidth()

void GUIUtil::TableViewLastColumnResizingFixer::adjustTableColumnsWidth ( )
private

Definition at line 569 of file guiutil.cpp.

Referenced by on_sectionResized().

◆ connectViewHeadersSignals()

void GUIUtil::TableViewLastColumnResizingFixer::connectViewHeadersSignals ( )
private

Definition at line 514 of file guiutil.cpp.

Referenced by adjustTableColumnsWidth(), on_geometriesChanged(), and stretchColumnWidth().

◆ disconnectViewHeadersSignals()

void GUIUtil::TableViewLastColumnResizingFixer::disconnectViewHeadersSignals ( )
private

Definition at line 521 of file guiutil.cpp.

Referenced by adjustTableColumnsWidth(), on_geometriesChanged(), and stretchColumnWidth().

◆ getAvailableWidthForColumn()

int GUIUtil::TableViewLastColumnResizingFixer::getAvailableWidthForColumn ( int  column)
private

◆ getColumnsWidth()

int GUIUtil::TableViewLastColumnResizingFixer::getColumnsWidth ( )
private

◆ on_geometriesChanged

void GUIUtil::TableViewLastColumnResizingFixer::on_geometriesChanged ( )
privateslot

Definition at line 604 of file guiutil.cpp.

Referenced by connectViewHeadersSignals(), and disconnectViewHeadersSignals().

◆ on_sectionResized

void GUIUtil::TableViewLastColumnResizingFixer::on_sectionResized ( int  logicalIndex,
int  oldSize,
int  newSize 
)
privateslot

Definition at line 592 of file guiutil.cpp.

Referenced by connectViewHeadersSignals(), and disconnectViewHeadersSignals().

◆ resizeColumn()

void GUIUtil::TableViewLastColumnResizingFixer::resizeColumn ( int  nColumnIndex,
int  width 
)
private

◆ setViewHeaderResizeMode()

void GUIUtil::TableViewLastColumnResizingFixer::setViewHeaderResizeMode ( int  logicalIndex,
QHeaderView::ResizeMode  resizeMode 
)
private

Definition at line 529 of file guiutil.cpp.

Referenced by TableViewLastColumnResizingFixer().

◆ stretchColumnWidth()

void GUIUtil::TableViewLastColumnResizingFixer::stretchColumnWidth ( int  column)

Definition at line 584 of file guiutil.cpp.

Referenced by ReceiveCoinsDialog::resizeEvent(), and TransactionView::resizeEvent().

Member Data Documentation

◆ allColumnsMinimumWidth

int GUIUtil::TableViewLastColumnResizingFixer::allColumnsMinimumWidth
private

Definition at line 168 of file guiutil.h.

Referenced by TableViewLastColumnResizingFixer().

◆ columnCount

int GUIUtil::TableViewLastColumnResizingFixer::columnCount
private

Definition at line 170 of file guiutil.h.

Referenced by getColumnsWidth(), and TableViewLastColumnResizingFixer().

◆ lastColumnIndex

int GUIUtil::TableViewLastColumnResizingFixer::lastColumnIndex
private

Definition at line 169 of file guiutil.h.

Referenced by adjustTableColumnsWidth(), and TableViewLastColumnResizingFixer().

◆ lastColumnMinimumWidth

int GUIUtil::TableViewLastColumnResizingFixer::lastColumnMinimumWidth
private

Definition at line 167 of file guiutil.h.

Referenced by getAvailableWidthForColumn().

◆ secondToLastColumnIndex

int GUIUtil::TableViewLastColumnResizingFixer::secondToLastColumnIndex
private

◆ tableView


The documentation for this class was generated from the following files: