27 #include <QtCore/QObject>
28 #include <QtGui/QImage>
29 #include <QtCore/QMap>
30 #include <QtGui/QSortFilterProxyModel>
105 #ifdef COPASI_NONLIN_DYN_OSCILLATION
124 "Parameter Overview",
145 QSplitter(Qt::Horizontal, parent),
146 mpDataModelGUI(NULL),
150 mpCurrentWidget(NULL),
152 mpCMCAResultWidget(NULL),
155 mpCLNAResultWidget(NULL),
156 mpCompartmentsWidget(NULL),
157 compartmentsWidget1(NULL),
159 differentialEquations(NULL),
162 mpFunctionsWidget(NULL),
163 functionWidget1(NULL),
165 lyapResultWidget(NULL),
166 mpSpeciesWidget(NULL),
167 metabolitesWidget1(NULL),
169 mpGlobalQuantitiesWidget(NULL),
170 mpModelValueWidget(NULL),
172 mpEFMResultWidget(NULL),
173 mpMoietiesTaskResult(NULL),
174 mpMoietiesTaskWidget(NULL),
175 optimizationWidget(NULL),
176 optResultWidget(NULL),
177 paramFittingWidget(NULL),
178 mpFittingResultWidget(NULL),
179 mpParameterOverviewWidget(NULL),
180 mpParameterSetsWidget(NULL),
181 mpParameterSetWidget(NULL),
183 mpPlotSubwidget(NULL),
184 mpReactionsWidget(NULL),
185 reactionsWidget1(NULL),
188 sensResultWidget(NULL),
190 steadystateWidget(NULL),
191 mpReportsWidget(NULL),
192 tableDefinition1(NULL),
193 timeSeriesWidget(NULL),
194 trajectoryWidget(NULL),
196 tssaResultWidget(NULL),
197 crossSectionTaskWidget(NULL),
198 crossSectionTimeSeriesWidget(NULL),
199 #ifdef COPASI_NONLIN_DYN_OSCILLATION
200 oscillationTaskWidget(NULL),
203 mpUpdatesWidget(NULL),
205 mpLayoutsWidget(NULL),
206 mpMathMatrixWidget(NULL)
211 this->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred));
213 setChildrenCollapsible(
false);
222 mpTreeSortDM->setSortCaseSensitivity(Qt::CaseInsensitive);
226 mpTreeView->sortByColumn(0, Qt::AscendingOrder);
242 QList<int> Sizes = sizes();
248 connect(
mpTreeDM, SIGNAL(dataChanged(
const QModelIndex &,
const QModelIndex &)),
249 this, SLOT(
slotSort(
const QModelIndex &,
const QModelIndex &)));
280 assert(pDataModel != NULL);
582 #ifdef COPASI_NONLIN_DYN_OSCILLATION
584 if (!oscillationTaskWidget)
594 if (!mpUpdatesWidget)
600 #endif // COPASI_DEBUG
682 case static_cast<size_t>(-1):
737 return mpUpdatesWidget;
808 #ifdef COPASI_NONLIN_DYN_OSCILLATION
811 return oscillationTaskWidget;
877 bool changeWidget =
true;
884 if (!newWidget)
return;
895 QModelIndex newIndex =
mpTreeView->currentIndex();
902 if (!changeWidget)
return;
931 QModelIndex SortIndex =
mpTreeSortDM->mapFromSource(Index);
940 QModelIndex index =
mpTreeView->currentIndex();
954 if (objectType !=
MODEL &&
955 objectType !=
STATE &&
982 mpTreeView->sortByColumn(0, Qt::AscendingOrder);
1006 const std::string & key)
1008 QList <CopasiWidget *> widgets = findChildren<CopasiWidget *>();
1009 QListIterator<CopasiWidget *> it(widgets);
1012 while (it.hasNext())
1014 if ((pCopasiWidget = it.next()) != NULL)
1016 pCopasiWidget->
update(objectType, action, key);
1023 QList <CQMiriamWidget *> widgets = findChildren<CQMiriamWidget *>();
1024 QListIterator<CQMiriamWidget *> it(widgets);
1027 while (it.hasNext())
1029 pWidget = it.next();
1031 if (dynamic_cast<CQMiriamWidget* >(pWidget))
1038 QList <CopasiWidget *> widgets = findChildren<CopasiWidget *>();
1039 QListIterator<CopasiWidget *> it(widgets);
1042 while (it.hasNext())
1044 if ((pCopasiWidget = it.next()) != NULL)
CQTabWidget * modelWidget
virtual QModelIndex parent(const QModelIndex &index) const
SteadyStateWidget * getSteadyStateWidget()
CMCAResultWidget * mpCMCAResultWidget
DataModelGUI * mpDataModelGUI
CQOptimizationResult * optResultWidget
CQLNAWidget * getLNAWidget()
CQBrowserPane * mpTreeView
CQOptimizationWidget * optimizationWidget
CQReportsWidget * mpReportsWidget
CopasiWidget * getCurrentWidget()
SensitivitiesWidget * sensWidget
void switchToOtherWidget(const size_t &id, const std::string &key)
CQFittingWidget * getFittingWidget()
CLNAResultWidget * mpCLNAResultWidget
CQMathMatrixWidget * mpMathMatrixWidget
CopasiWidget * findWidgetFromIndex(const QModelIndex &index) const
CQMCAWidget * getMCAWidget()
void setDataModel(DataModelGUI *pDM)
CQLNAWidget * mpCQLNAWidget
CQMCAWidget * mpCQMCAWidget
bool updateCurrentWidget(ObjectType objectType, Action action, const std::string &key="")
void setCopasiDM(const CCopasiDataModel *pDataModel)
virtual QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const
CQLyapWidget * lyapWidget
CQBrowserPaneDM * mpTreeDM
void ConstructNodeWidgets()
CQPlotsWidget * mpPlotsWidget
CQParameterSetsWidget * mpParameterSetsWidget
CQTrajectoryWidget * trajectoryWidget
CQSensResultWidget * sensResultWidget
CQLayoutsWidget * mpLayoutsWidget
void setFramework(int framework)
CQTabWidget * eventWidget1
void notifyChildWidgets(ObjectType objectType, Action action, const std::string &key)
CQPlotSubwidget * mpPlotSubwidget
CQEFMWidget * mpEFMWidget
CQTabWidget * reactionsWidget1
CQReactionsWidget * mpReactionsWidget
CQTSSAResultWidget * tssaResultWidget
CQTabWidget * mpParameterSetWidget
CQTSSAWidget * tssaWidget
void slotFolderChanged(const QModelIndex &index)
CQEventsWidget * eventsWidget
CopasiWidget * findWidgetFromId(const size_t &id) const
CQSpeciesWidget * mpSpeciesWidget
QSortFilterProxyModel * mpTreeSortDM
CQCrossSectionTaskWidget * crossSectionTaskWidget
CQGlobalQuantitiesWidget * mpGlobalQuantitiesWidget
CQEFMResultWidget * mpEFMResultWidget
CQTabWidget * functionWidget1
static CCopasiVector< CCopasiDataModel > * getDatamodelList()
CopasiWidget * mpCurrentWidget
CQFittingWidget * paramFittingWidget
CQCompartmentsWidget * mpCompartmentsWidget
CQCrossSectionTaskWidget * getCrossSectionWidget()
CQSplashWidget * defaultWidget
void updateMIRIAMResourceContents()
size_t getIdFromIndex(const QModelIndex &index) const
CQDifferentialEquations * differentialEquations
ListViews(QWidget *parent=0, const char *name=0)
CQFittingResult * mpFittingResultWidget
CQTrajectoryWidget * getTrajectoryWidget()
void slotSort(const QModelIndex &index1, const QModelIndex &index2)
CQLyapResultWidget * lyapResultWidget
CQSteadyStateResult * stateWidget
CQTabWidget * compartmentsWidget1
CQFunctionsWidget * mpFunctionsWidget
std::string mCurrentItemKey
CQReportDefinition * tableDefinition1
CQMoietiesTaskWidget * mpMoietiesTaskWidget
void setGuiDM(const DataModelGUI *pDataModel)
CQMoietiesTaskResult * mpMoietiesTaskResult
CQParameterOverviewWidget * mpParameterOverviewWidget
QStackedWidget * mpStackedWidget
CQOptimizationWidget * getOptimizationWidget()
std::string getKeyFromIndex(const QModelIndex &index) const
static const std::string ObjectTypeName[]
CQTabWidget * mpModelValueWidget
CQTabWidget * metabolitesWidget1
ScanWidget * getScanWidget()
void signalFolderChanged(const QModelIndex &index)
SteadyStateWidget * steadystateWidget
CQTimeSeriesWidget * crossSectionTimeSeriesWidget
size_t getCurrentItemId()
bool slotNotify(ListViews::ObjectType objectType, ListViews::Action action, std::string key="")
CQTimeSeriesWidget * timeSeriesWidget