All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Signals | Public Member Functions
SciFigs::CurveBrowserDelegate Class Reference

Brief description of class still missing. More...

#include <CurveBrowserDelegate.h>

List of all members.

Signals

void dataChanged () const

Public Member Functions

QWidget * createEditor (QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
 CurveBrowserDelegate (QObject *parent=0)
void setEditorData (QWidget *editor, const QModelIndex &index) const
void setModelData (QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const

Detailed Description

Brief description of class still missing.

Full description of class still missing


Constructor & Destructor Documentation

SciFigs::CurveBrowserDelegate::CurveBrowserDelegate ( QObject *  parent = 0) [inline]

Description of constructor still missing

: QItemDelegate(parent) {}

Member Function Documentation

QWidget * SciFigs::CurveBrowserDelegate::createEditor ( QWidget *  parent,
const QStyleOptionViewItem &  option,
const QModelIndex &  index 
) const

References TRACE, and w.

{
  TRACE;
  const CurveBrowserItem * item=qobject_cast<const CurveBrowserItem *>(index.model());
  ASSERT(item);

  if(index.column()==0) {
    return QItemDelegate::createEditor(parent, option, index);
  } else {
    QLineEdit * w=new QLineEdit(parent);
    w->setAlignment(Qt::AlignRight);
    return w;
  }
}

Referenced by setModelData().

void SciFigs::CurveBrowserDelegate::setEditorData ( QWidget *  editor,
const QModelIndex &  index 
) const

References TRACE, and w.

{
  TRACE;
  const CurveBrowserItem * item=qobject_cast<const CurveBrowserItem *>(index.model());
  ASSERT(item);

  if (index.column()==0) {
    QItemDelegate::setEditorData(editor, index);
  } else {
    QLineEdit * w=qobject_cast<QLineEdit *>(editor);
    if (!w) return;
    w->setText(index.model()->data(index).toString());
    w->selectAll();
  }
}
void SciFigs::CurveBrowserDelegate::setModelData ( QWidget *  editor,
QAbstractItemModel *  model,
const QModelIndex &  index 
) const

References dataChanged(), TRACE, and w.

{
  TRACE;
  const CurveBrowserItem * item=qobject_cast<const CurveBrowserItem *>(index.model());
  ASSERT(item);

  if(index.column()==0) {
    QItemDelegate::setModelData(editor, model, index);
    emit dataChanged();
  } else {
    QLineEdit * w=qobject_cast<QLineEdit *>(editor);
    if(!w) return;
    if(w->isModified() && model->data(index)!=w->text()) {
      model->setData(index, w->text());
      emit dataChanged();
    }
  }
}

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines