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().