Signals | Public Member Functions
LaunchThreadDelegate Class Reference

#include <LaunchThreadDelegate.h>

List of all members.

Signals

void dataChanged () const

Public Member Functions

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

Constructor & Destructor Documentation

LaunchThreadDelegate::LaunchThreadDelegate ( QObject *  parent = 0) [inline]
: QItemDelegate(parent) {}

Member Function Documentation

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

References dinverGui, TRACE, and w.

{
  TRACE;
  switch (index.column()) {
  case 0: {
      InversionThread * t=dinverGui->threads().at(index.row());
      if(!t->isRunning()) {
        QLineEdit * w=new QLineEdit(parent);
        return w;
      } else return 0;
    }
  case 5: {
      QSpinBox * w=new QSpinBox(parent);
      w->setMinimum(0);
      w->setMaximum(RAND_MAX);
      return w;
    }
  case 6: {
      QSpinBox * w=new QSpinBox(parent);
      w->setSuffix( " %" );
      w->setMinimum(0);
      w->setMaximum(100);
      return w;
    }
  default: {
      QSpinBox * w=new QSpinBox(parent);
      w->setMinimum(0);
      w->setMaximum(999999);
      return w;
    }
  }
  return 0;
}
void LaunchThreadDelegate::dataChanged ( ) const [signal]

Referenced by setModelData().

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

References TRACE, and w.

{
  TRACE;
  switch (index.column()) {
  case 0: {
      QLineEdit * w=qobject_cast<QLineEdit *>(editor);
      ASSERT(w);
      w->setText(index.model() ->data(index).toString());
      w->selectAll();
      break;
    }
  default: {
      QSpinBox * w=qobject_cast<QSpinBox *>(editor);
      ASSERT(w);
      w->setValue(index.model() ->data(index).toInt());
      break;
    }
  }
}
void LaunchThreadDelegate::setModelData ( QWidget *  editor,
QAbstractItemModel *  model,
const QModelIndex &  index 
) const

References dataChanged(), TRACE, and w.

{
  TRACE;
  switch (index.column()) {
  case 0: {
      QLineEdit * w=qobject_cast<QLineEdit *>(editor);
      ASSERT(w);
      if(w->isModified() && model->data(index)!=w->text()) {
        model->setData(index, w->text());
        emit dataChanged();
      }
      break;
    }
  default: {
      QSpinBox * w=qobject_cast<QSpinBox *>(editor);
      ASSERT(w);
      if(model->data(index)!=w->value()) {
        model->setData(index, w->value());
        emit dataChanged();
      }
      break;
    }
  }
}
QSize LaunchThreadDelegate::sizeHint ( const QStyleOptionViewItem &  option,
const QModelIndex &  index 
) const

References TRACE.

{
  TRACE;
  return QItemDelegate::sizeHint(option, index);
}

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