33 #define COL_EQUATION 4
62 mpMoieties->setColumnCount(5);
64 QTableWidgetItem * pItem =
new QTableWidgetItem(
"Dependent Species");
65 mpMoieties->setHorizontalHeaderItem(
COL_SPECIES, pItem);
66 pItem =
new QTableWidgetItem(
"Total Particle Number");
67 mpMoieties->setHorizontalHeaderItem(
COL_NUMBER, pItem);
68 pItem =
new QTableWidgetItem(
"Total Amount");
69 mpMoieties->setHorizontalHeaderItem(
COL_AMOUNT, pItem);
70 pItem =
new QTableWidgetItem(
"");
71 mpMoieties->setHorizontalHeaderItem(
COL_BTN, pItem);
72 pItem =
new QTableWidgetItem(
"Expression");
73 mpMoieties->setHorizontalHeaderItem(
COL_EQUATION, pItem);
76 mpMoieties->setItemDelegateForColumn(
COL_BTN, pDelegate);
81 mpStoichiometry->setLegendEnabled(
true);
84 mpLinkMatrix->setLegendEnabled(
true);
87 mpReducedStoichiometry->setLegendEnabled(
true);
123 mpMoieties->setRowCount(0);
124 mpStoichiometry->setArrayAnnotation(NULL);
125 mpLinkMatrix->setArrayAnnotation(NULL);
126 mpReducedStoichiometry->setArrayAnnotation(NULL);
145 assert(pDataModel != NULL);
148 if (pModel == NULL)
return;
153 if (!AmountUnits.isEmpty())
154 AmountUnits =
"\n(" + AmountUnits +
")";
156 mpMoieties->horizontalHeaderItem(
COL_AMOUNT)->setText(
"Total Amount" + AmountUnits);
161 mpMoieties->setRowCount(end - it);
163 QTableWidgetItem * pItem;
166 for (; it != end; ++it, i++)
168 pItem =
new QTableWidgetItem(
FROM_UTF8((*it)->getObjectName()));
171 pItem =
new QTableWidgetItem(QString::number((*it)->getNumber()));
174 (*it)->refreshAmount();
175 pItem =
new QTableWidgetItem(QString::number((*it)->getAmount()));
178 pItem =
new QTableWidgetItem(
"");
179 mpMoieties->setItem(i,
COL_BTN, pItem);
182 pItem = mpMoieties->item(i,
COL_BTN);
183 pItem->setFlags(pItem->flags() | Qt::ItemIsEditable | Qt::ItemIsEnabled);
184 mpMoieties->openPersistentEditor(pItem);
186 pItem =
new QTableWidgetItem(
FROM_UTF8((*it)->getDescription(pModel)));
190 mpTabWidget->setTabText(mpTabWidget->indexOf(mpMoieties),
"Moieties (" + QString::number(i) +
")");
192 mpMoieties->resizeColumnsToContents();
193 mpMoieties->resizeRowsToContents();
200 mpStoichiometry->setColorCoding(tcs);
201 mpStoichiometry->setColorScalingAutomatic(
true);
202 mpStoichiometry->setArrayAnnotation(pAnnotation);
208 mpLinkMatrix->setColorCoding(tcs);
209 mpLinkMatrix->setColorScalingAutomatic(
true);
210 mpLinkMatrix->setArrayAnnotation(pAnnotation);
216 mpReducedStoichiometry->setColorCoding(tcs);
217 mpReducedStoichiometry->setColorScalingAutomatic(
true);
218 mpReducedStoichiometry->setArrayAnnotation(pAnnotation);
225 C_INT32 Answer = QMessageBox::No;
228 while (Answer == QMessageBox::No)
232 "untitled.txt",
"TEXT Files (*.txt)",
"Save to");
234 if (fileName.isEmpty())
return;
239 if (Answer == QMessageBox::Cancel)
return;
255 int row = index.row();
260 if (pModel == NULL)
return;
266 const CMoiety * pMoiety = Moieties[row];
Header file of class CExpression.
const std::string & getObjectName() const
virtual size_t size() const
bool setInitialExpression(const std::string &expression)
CModelValue * createModelValue(const std::string &name, const C_FLOAT64 &value=0.0)
CQMoietiesTaskResult(QWidget *parent=0, const char *name=0)
const CCopasiVector< CMoiety > & getMoieties() const
virtual bool enterProtected()
virtual bool update(ListViews::ObjectType objectType, ListViews::Action action, const std::string &key)
virtual void setFramework(int framework)
std::string getExpression() const
C_INT32 checkSelection(const QString &file)
static const QIcon & icon(const IconID &id)
static CCopasiVector< CCopasiDataModel > * getDatamodelList()
std::string getQuantityUnitsDisplayString() const
const CResult & getResult() const
CMoietiesTask * mpMoietiesTask
virtual const CObjectInterface * getObject(const CCopasiObjectName &cn) const
static CLocaleString fromUtf8(const std::string &utf8)
static QString getSaveFileName(QWidget *parent=0, const char *name=0, const QString &startWith=QString::null, const QString &filter=QString::null, const QString &caption=QString::null, QString *pSelectedFilter=NULL, QFileDialog::Options options=0)
void slotCreateGlobalQuantity(const QModelIndex &index)