try {
params->loadBlastConfiguration("blastconfig.xml");
+ // first load external sources
+ params->loadSources();
+
if (!QFileInfo::exists(params->refLib)) {
params->loadReferencesFromXml();
int ret = QMessageBox::question(this,tr("Building references library"),tr("The reference block library does not exists.\n References have been read directly from the xml descriptions of blocks.\n It can be saved into a library in order to start application faster. "), QMessageBox::Ok | QMessageBox::Cancel, QMessageBox::Ok);
params->save(projectFile);
}
-void MainWindow::slotLoadProject(){
+void MainWindow::slotLoadProject(QString fileName){
- params->projectFile = QFileDialog::getOpenFileName(0, "select a project file", "save/",tr("sauvegardes (*.xml)"));
+ if (fileName == "") {
+ params->projectFile = QFileDialog::getOpenFileName(0, "select a project file", "save/",tr("sauvegardes (*.xml)"));
+ }
+ else {
+ params->projectFile = fileName;
+ }
if(! params->projectFile.isEmpty()){
GroupWidget* topGroup = dispatcher->loadProject(params->projectFile);
if (topGroup != NULL) {
addTopGroup(topGroup);
library->updateComboScene();
+ library->updateBoxConn();
params->isCurrentProject = true;
enableProjectActions(true, PROJECT_CLOSE | PROJECT_SAVE | PROJECT_SAVEAS | PROJECT_LIB, OP_RAZ);
- enableAnalysisActions(true, ANALYSIS_ANALYZE, OP_RAZ);
+ enableAnalysisActions(true, ANALYSIS_ANALYZE | ANALYSIS_GENERATE, OP_RAZ);
}
else {
QMessageBox msgBox;
if (ret == 1) {
enableProjectActions(true, PROJECT_CLOSE | PROJECT_SAVE | PROJECT_SAVEAS | PROJECT_LIB, OP_RAZ);
enableAnalysisActions(true, ANALYSIS_ANALYZE | ANALYSIS_GENERATE, OP_RAZ);
- GroupWidget* topGroup = dispatcher->createTopScene();
+ GroupWidget* topGroup = dispatcher->createTopScene(Dispatcher::Design, params->mainClock);
addTopGroup(topGroup);
library->updateComboScene();
+ library->updateBoxConn();
library->show();
params->isCurrentProject = true;
}
msg += " is not compatible with its input pattern.\nDo you want to launch automatic modification process to ensure the compatibility ?";
int ret = QMessageBox::question(this,tr("Building references library"),msg, QMessageBox::Ok | QMessageBox::Cancel, QMessageBox::Ok);
if (ret == QMessageBox::Ok) {
- dispatcher->findGraphModifications(toBlock);
+ dispatcher->findGraphModifications(Dispatcher::Design, toBlock);
}
}
}
}
void MainWindow::slotGenerateVHDL() {
+
try {
- params->getGraph()->generateVHDL(params->projectPath);
+ dispatcher->generateVHDL(Dispatcher::Design);
}
catch(Exception e) {
cerr << qPrintable(e.getMessage()) << endl;
void MainWindow::mousePressEvent(QMouseEvent *e) {
if (dispatcher->getCurrentGroup() != NULL) {
- dispatcher->setCurrentGroupWidget(dispatcher->getCurrentGroup());
+ dispatcher->setCurrentGroupWidget(Dispatcher::Design, dispatcher->getCurrentGroup());
}
QMainWindow::mousePressEvent(e);
}