Brief description of class still missing. More...
#include <CurveBrowserItem.h>
Public Member Functions | |
| virtual int | columnCount (const QModelIndex &parent=QModelIndex()) const |
| CurveBrowserItem (CurveBrowserProxy *proxy, QObject *parent=0) | |
| virtual QVariant | data (const QModelIndex &index, int role) const |
| virtual Qt::ItemFlags | flags (const QModelIndex &) const |
| virtual QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const |
| virtual QModelIndex | index (int, int column, const QModelIndex &parent=QModelIndex()) const |
| virtual QModelIndex | parent (const QModelIndex &) const |
| void | reset () |
| virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const |
| virtual bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) |
| void | setEditable (bool e) |
| ~CurveBrowserItem () | |
Brief description of class still missing.
Full description of class still missing
| SciFigs::CurveBrowserItem::CurveBrowserItem | ( | CurveBrowserProxy * | proxy, |
| QObject * | parent = 0 |
||
| ) |
: QAbstractItemModel(parent) { _proxy=proxy; _editable=true; }
| SciFigs::CurveBrowserItem::~CurveBrowserItem | ( | ) | [inline] |
{}
| int SciFigs::CurveBrowserItem::columnCount | ( | const QModelIndex & | parent = QModelIndex() | ) | const [virtual] |
References SciFigs::CurveBrowserProxy::columnCount(), and TRACE.
{
TRACE;
return _proxy->columnCount()+1;
}
| QVariant SciFigs::CurveBrowserItem::data | ( | const QModelIndex & | index, |
| int | role | ||
| ) | const [virtual] |
References SciFigs::CurveBrowserProxy::columnValue(), SciFigs::CurveBrowserProxy::isValid(), and TRACE.
{
TRACE;
if(index.column()==0) {
switch (role) {
case Qt::CheckStateRole:
return _proxy->isValid(index.row()) ? Qt::Checked : Qt::Unchecked;
case Qt::TextAlignmentRole:
return (int)(Qt::AlignHCenter | Qt::AlignVCenter);
default:
return QVariant();
}
} else {
switch (role) {
case Qt::DisplayRole:
return _proxy->columnValue(index.row(), index.column()-1);
case Qt::TextAlignmentRole:
return (int)(Qt::AlignRight | Qt::AlignVCenter);
default:
return QVariant();
}
}
}
| Qt::ItemFlags SciFigs::CurveBrowserItem::flags | ( | const QModelIndex & | index | ) | const [virtual] |
References SciFigs::CurveBrowserProxy::isValid().
{
if(index.column()==0) {
if(_editable) {
return Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled;
} else {
return Qt::ItemIsSelectable | Qt::ItemIsUserCheckable;
}
} else {
if(_editable) {
if(_proxy->isValid(index.row())) {
return Qt::ItemIsSelectable | Qt::ItemIsEditable | Qt::ItemIsEnabled;
} else {
return Qt::ItemIsSelectable;
}
} else {
return Qt::ItemIsSelectable | Qt::ItemIsEnabled;
}
}
}
| QVariant SciFigs::CurveBrowserItem::headerData | ( | int | section, |
| Qt::Orientation | orientation, | ||
| int | role = Qt::DisplayRole |
||
| ) | const [virtual] |
References SciFigs::CurveBrowserProxy::columnTitle(), QGpCoreTools::tr(), and TRACE.
{
TRACE;
if(role!=Qt::DisplayRole) return QVariant();
if(orientation==Qt::Horizontal) {
if(section==0)
return tr("Valid");
else
return _proxy->columnTitle(section-1);
} else {
return section + 1;
}
}
| QModelIndex SciFigs::CurveBrowserItem::index | ( | int | row, |
| int | column, | ||
| const QModelIndex & | parent = QModelIndex() |
||
| ) | const [virtual] |
| virtual QModelIndex SciFigs::CurveBrowserItem::parent | ( | const QModelIndex & | ) | const [inline, virtual] |
{return QModelIndex();}
| void SciFigs::CurveBrowserItem::reset | ( | ) |
References TRACE.
Referenced by SciFigs::CurveProperties::curveChanged().
{
TRACE;
QAbstractItemModel::reset();
}
| int SciFigs::CurveBrowserItem::rowCount | ( | const QModelIndex & | parent = QModelIndex() | ) | const [virtual] |
References SciFigs::CurveBrowserProxy::sampleCount(), and TRACE.
{
TRACE;
if(!parent.isValid())
return _proxy->sampleCount();
return 0;
}
| bool SciFigs::CurveBrowserItem::setData | ( | const QModelIndex & | index, |
| const QVariant & | value, | ||
| int | role = Qt::EditRole |
||
| ) | [virtual] |
References SciFigs::CurveBrowserProxy::setColumnValue(), SciFigs::CurveBrowserProxy::setValid(), and TRACE.
{
TRACE;
if(index.column()==0) {
switch (role) {
case Qt::CheckStateRole:
_proxy->setValid(index.row(), value.toInt()==Qt::Checked);
emit dataChanged(createIndex(index.row(), 0), createIndex(index.row(), 5));
return true;
default:
return false;
}
} else {
switch (role) {
case Qt::EditRole:
_proxy->setColumnValue(index.row(), index.column()-1, value);
emit dataChanged(index, index);
return true;
default:
return false;
}
}
}
| void SciFigs::CurveBrowserItem::setEditable | ( | bool | e | ) | [inline] |
Referenced by SciFigs::CurveProperties::setEditable().
{_editable=e;}