diff -r 79eeacfd15ff -r f3dbeee07821 Seafood/mainwindow.cpp --- a/Seafood/mainwindow.cpp Fri Mar 26 15:22:34 2010 -0700 +++ b/Seafood/mainwindow.cpp Wed Mar 31 16:09:36 2010 -0700 @@ -84,7 +84,7 @@ verAction = new QAction(tr("&Version"),this); menuBar()->addAction(verAction); - connect(verAction, SIGNAL(triggered()),this, SLOT(displayVersion())); + connect(verAction, SIGNAL(triggered()),this, SLOT(displayPath())); exitAction = new QAction(tr("&Exit"),this); menuBar()->addAction(exitAction); @@ -105,22 +105,40 @@ { QString selectedName; + QListWidgetItem *item=NULL; + + switch (this->index) { + case EBestList: - selectedName = this->bestList->currentItem()->text(); + item = this->bestList->currentItem(); + if (item) + { + selectedName = item->text(); + } + break; case EOkList: - selectedName = this->okList->currentItem()->text(); + item = this->okList->currentItem(); + if (item) { + selectedName = item->text(); + } break; case EWorstList: - selectedName = this->worstList->currentItem()->text(); + item = this->worstList->currentItem(); + if (item) { + selectedName = item->text(); + } break; } - this->ecoDetails->setHtml( this->fishDb->getEcoDetails(selectedName)); - - this->stackedWidget->setCurrentIndex(MainWindow::EEcoPage); + if (!item) { + QMessageBox::information(this,"warning","select an item from list." ); + } else { + this->ecoDetails->setHtml( this->fishDb->getEcoDetails(selectedName)); + this->stackedWidget->setCurrentIndex(MainWindow::EEcoPage); + } } void MainWindow::displayList() @@ -130,16 +148,7 @@ void MainWindow::displayPath() { - QString dbFile = QDesktopServices::storageLocation(QDesktopServices::DataLocation) - + '/' // Qt Universal file separator - + "seafood.db"; - QFile f(dbFile); - if (f.exists()) { - QMessageBox::information(this,"db not found ", dbFile); - } else { - QMessageBox::information(this,"found db @ ", dbFile); - } - + QMessageBox::information(this, "db Error",this->fishDb->GetDbErr()); } void MainWindow::setCurrentList(int l) @@ -156,8 +165,6 @@ this->index = EWorstList; break; } - - } void MainWindow::changeEvent(QEvent *e)