00001 #ifndef SIGEL_MASTERGUI_SIG_EXPERIMENTLISTVIEW_H 00002 #define SIGEL_MASTERGUI_SIG_EXPERIMENTLISTVIEW_H 00003 00004 #include <qlistview.h> 00005 #include <qwidgetstack.h> 00006 #include <qdict.h> 00007 #include <qpopupmenu.h> 00008 00009 #include "SIGEL_MasterGUI/SIG_Experiment.h" 00010 00011 namespace SIGEL_MasterGUI 00012 { 00013 00018 class SIG_ExperimentListView : public QListView 00019 { 00020 Q_OBJECT 00021 public: 00022 00031 SIG_ExperimentListView( QWidget * parent, const char * name, QWidgetStack *theWidgetStack ); 00032 00038 ~SIG_ExperimentListView(); 00039 00046 SIG_Experiment* getByExperimentName( QString name ); 00047 00056 bool experimentExists( QString name); 00057 00068 QString getAlternativeName( QString existingName ); 00069 00075 SIG_Experiment* currentlySelectedExperiment(); 00076 00083 QString currentlySelectedExperimentName(); 00084 00091 void selectItem( QString label ); 00092 00097 QPopupMenu *experimentListViewMenu; 00098 00099 public slots: 00100 00104 void slotNewExperiment(); 00105 00109 void slotRenameExperiment(); 00110 00114 void slotDeleteExperiment(); 00115 00119 void slotLoadExperiment(); 00120 00124 void slotSaveExperiment(); 00125 00129 void slotShowGPParameters(); 00130 00134 void slotShowSimulationParameters(); 00135 00139 void slotShowLanguageParameters(); 00140 00144 void slotShowRobot(); 00145 00149 void slotShowEnvironment(); 00150 00154 void slotShowIndividuals(); 00155 00167 void slotSelectionChanged( QListViewItem * theItem ); 00168 00169 void slotGPParametersImport(); 00170 00171 void slotSimulationParametersImport(); 00172 00173 void slotRobotImport(); 00174 00175 void slotLanguageParametersImport(); 00176 00177 void slotPopulationImport(); 00178 00179 void slotEnvironmentImport(); 00180 00181 void slotGPParametersExport(); 00182 00183 void slotSimulationParametersExport(); 00184 00185 void slotLanguageParametersExport(); 00186 00187 void slotPopulationExport(); 00188 00189 void slotEnvironmentExport(); 00190 00191 void slotGNUPlotExport(); 00192 00193 void slotAddIndividuals(); 00194 00195 void slotDeleteIndividuals(); 00196 00197 void slotResetIndividuals(); 00198 00199 void slotVisualizeIndividuals(); 00200 00201 void slotProgramExport(); 00202 00203 void slotIndividualExport(); 00204 00205 void slotProgramImport(); 00206 00207 void slotIndividualImport(); 00208 00209 protected slots: 00210 00220 void slotRightButtonClicked( QListViewItem *theItem, const QPoint & thePoint, int inside); 00221 00222 signals: 00223 00229 void isNotEmpty( bool isNotEmpty ); 00230 00236 void evolutionNotRunning( bool evolutionNotRunnning ); 00237 00238 protected: 00239 00246 QWidgetStack *widgetStack; 00247 00255 QDict<SIG_Experiment> experimentDict; 00256 00263 int numberOfExperiments; 00264 }; 00265 00266 } 00267 00268 #endif SIGEL_MASTERGUI_SIG_EXPERIMENTLISTVIEW_H