Brief description of class still missing. More...
#include <ColumnTextItem.h>
Signals | |
void | typeChanged () |
Public Member Functions | |
virtual int | columnCount (const QModelIndex &parent=QModelIndex()) const |
ColumnTextItem (QObject *parent=0) | |
virtual QVariant | data (const QModelIndex &index, int role) const |
virtual Qt::ItemFlags | flags (const QModelIndex &index) const |
virtual QVariant | headerData (int section, Qt::Orientation orientation, int role) const |
virtual QModelIndex | index (int row, int column, const QModelIndex &parent=QModelIndex()) const |
virtual QModelIndex | parent (const QModelIndex &index) const |
virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const |
virtual bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) |
void | setParser (ColumnTextParser *p) |
~ColumnTextItem () |
Brief description of class still missing.
Full description of class still missing
QGpGuiTools::ColumnTextItem::ColumnTextItem | ( | QObject * | parent = 0 | ) |
int QGpGuiTools::ColumnTextItem::columnCount | ( | const QModelIndex & | parent = QModelIndex() | ) | const [virtual] |
Currently return only 1 but may evolve in the future
References QGpCoreTools::ColumnTextParser::columnCount(), and TRACE.
{ TRACE; if(parent.isValid() || !_parser) return 0; else { return _parser->columnCount(); } }
QVariant QGpGuiTools::ColumnTextItem::data | ( | const QModelIndex & | index, |
int | role | ||
) | const [virtual] |
References QGpCoreTools::ColumnTextParser::factor(), QGpCoreTools::ColumnTextParser::replaceAfter(), QGpCoreTools::ColumnTextParser::replaceRx(), QGpCoreTools::ColumnTextParser::sectionBeginRow(), QGpCoreTools::ColumnTextParser::sectionComments(), QGpCoreTools::ColumnTextParser::sectionIndexOf(), QGpCoreTools::ColumnTextParser::text(), QGpCoreTools::tr(), TRACE, and QGpCoreTools::ColumnTextParser::typeName().
{ TRACE; if( !index.isValid()) return QVariant(); switch (role) { case Qt::DisplayRole: switch(index.row()) { case 0: return _parser->typeName(index.column()); case 1: return _parser->factor(index.column()); case 2: return _parser->replaceRx(index.column()); case 3: return _parser->replaceAfter(index.column()); default: return _parser->text(index.row()-4, index.column()); } case Qt::ToolTipRole: switch(index.row()) { case 0: return tr("Associate columns to data fields"); case 1: return tr("Factors to convert values shown below to the standard units"); case 2: case 3: return tr("A 'Regular Expression' can be searched in cell contents and replaced\n" "See online documentation for more details."); default: { int row=index.row()-4; int sec=_parser->sectionIndexOf(row); if(_parser->sectionBeginRow(sec)==row) { return _parser->sectionComments(sec); } else { return QVariant(); } } } case Qt::BackgroundRole: if(index.row()>=4) { int row=index.row()-4; int sec=_parser->sectionIndexOf(row); if(_parser->sectionBeginRow(sec)==row) { return QColor(200,200,200); } else { return QVariant(); } } else { return QColor(239,239,239); } case Qt::TextAlignmentRole: if(index.row()>=2) { return QVariant(); } else { return Qt::AlignHCenter; } default: return QVariant(); } }
Qt::ItemFlags QGpGuiTools::ColumnTextItem::flags | ( | const QModelIndex & | index | ) | const [virtual] |
References QGpCoreTools::ColumnTextParser::type().
QVariant QGpGuiTools::ColumnTextItem::headerData | ( | int | section, |
Qt::Orientation | orientation, | ||
int | role | ||
) | const [virtual] |
References QGpCoreTools::ColumnTextParser::lineNumber(), QGpCoreTools::tr(), and TRACE.
{ TRACE; if(role!=Qt::DisplayRole) return QVariant(); switch(orientation) { case Qt::Horizontal: return section+1; case Qt::Vertical: switch(section) { case 0: return tr("Type"); case 1: return tr("Factor"); case 2: return tr("Find"); case 3: return tr("Replace"); default: return _parser->lineNumber(section-4); } } return QVariant(); }
QModelIndex QGpGuiTools::ColumnTextItem::index | ( | int | row, |
int | column, | ||
const QModelIndex & | parent = QModelIndex() |
||
) | const [virtual] |
QModelIndex QGpGuiTools::ColumnTextItem::parent | ( | const QModelIndex & | index | ) | const [virtual] |
int QGpGuiTools::ColumnTextItem::rowCount | ( | const QModelIndex & | parent = QModelIndex() | ) | const [virtual] |
References QGpCoreTools::ColumnTextParser::rowCount(), and TRACE.
bool QGpGuiTools::ColumnTextItem::setData | ( | const QModelIndex & | index, |
const QVariant & | value, | ||
int | role = Qt::EditRole |
||
) | [virtual] |
References QGpCoreTools::ColumnTextParser::setFactor(), QGpCoreTools::ColumnTextParser::setReplaceAfter(), QGpCoreTools::ColumnTextParser::setReplaceRx(), QGpCoreTools::ColumnTextParser::setTypeName(), QGpCoreTools::ColumnTextParser::startUpdates(), QGpCoreTools::ColumnTextParser::stopUpdates(), TRACE, and typeChanged().
{ TRACE; if( !index.isValid()) return false; if(role==Qt::EditRole) { switch(index.row()) { case 0: _parser->setTypeName(index.column(), value.toString()); emit typeChanged(); return true; case 1: _parser->stopUpdates(); _parser->setFactor(index.column(), value.toDouble()); _parser->startUpdates(); return true; case 2: _parser->stopUpdates(); _parser->setReplaceRx(index.column(), value.toString()); _parser->startUpdates(); return true; case 3: _parser->stopUpdates(); _parser->setReplaceAfter(index.column(), value.toString()); _parser->startUpdates(); return true; default: return false; } } else { return false; } }
References TRACE.
Referenced by QGpGuiTools::ColumnTextWidget::ColumnTextWidget().
{ TRACE; _parser=p; connect(p, SIGNAL(dataAvailable()), this, SLOT(updateData())); }
void QGpGuiTools::ColumnTextItem::typeChanged | ( | ) | [signal] |
Referenced by setData().