49 if (role == Qt::DisplayRole || role == Qt::EditRole)
54 return QVariant(QString(
""));
56 return QVariant(QString(
""));
60 switch (index.column())
63 return QVariant(index.row() + 1);
82 if (role != Qt::DisplayRole)
85 if (orientation == Qt::Horizontal)
90 return QVariant(QString(
"#"));
92 return QVariant(QString(
"Family Name"));
94 return QVariant(QString(
"Given Name"));
96 return QVariant(QString(
"Email"));
98 return QVariant(QString(
"Organization"));
104 return QString(
"%1").arg(section + 1);
110 if (index.isValid() && role == Qt::EditRole)
114 if (index.data() != value)
120 switch (index.column())
136 emit dataChanged(index, index);
146 beginInsertRows(QModelIndex(), position, position + rows - 1);
148 for (
int row = 0; row < rows; ++row)
164 beginRemoveRows(QModelIndex(), position, position + rows - 1);
166 for (
int row = 0; row < rows; ++row)
184 QList <CCreator *> pCreators;
185 QModelIndexList::const_iterator i;
187 for (i = rows.begin(); i != rows.end(); ++i)
193 bool retVal =
false, askEveryItem =
true;
194 QMessageBox::StandardButton choice = QMessageBox::NoToAll;
195 QList <CCreator *>::const_iterator j;
197 for (j = pCreators.begin(); j != pCreators.end(); ++j)
208 QString givenName =
data(this->index((
int) delRow,
COL_GIVEN_NAME), Qt::DisplayRole).toString();
209 QString familyName =
data(this->index((
int) delRow,
COL_FAMILY_NAME), Qt::DisplayRole).toString();
210 QString msg =
"Do you want to delete author '";
212 if (!givenName.isNull())
214 msg.append(givenName);
217 if (!familyName.isNull())
220 msg.append(familyName);
226 QMessageBox::Yes | QMessageBox::YesToAll | QMessageBox::No | QMessageBox::NoToAll,
230 if (choice == QMessageBox::NoToAll)
232 else if (choice == QMessageBox::Yes)
234 else if (choice == QMessageBox::YesToAll)
236 askEveryItem =
false;
const CCopasiVector< CCreator > & getCreators() const
#define TOTAL_COLS_CREATORS
void notifyGUI(ListViews::ObjectType objectType, ListViews::Action action, const std::string &key="")
virtual size_t size() const
CQCreatorDM(CMIRIAMInfo *MIRIAMInfo, QObject *parent=0)
CMIRIAMInfo * mpMIRIAMInfo
bool removeRow(int position)
QVariant data(const QModelIndex &index, int role) const
CCreator * createCreator(const std::string &objectName)
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
bool insertRows(int position, int rows, const QModelIndex &index=QModelIndex())
bool removeCreator(int position)
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
virtual bool isDefaultRow(const QModelIndex &i) const
virtual int rowCount(const QModelIndex &parent=QModelIndex()) const
virtual int columnCount(const QModelIndex &parent=QModelIndex()) const
static StandardButton question(QWidget *parent, const QString &title, const QString &text, StandardButtons buttons=Ok, StandardButton defaultButton=NoButton)
bool removeRows(QModelIndexList rows, const QModelIndex &index=QModelIndex())