quill/searchresultswidget.cpp

75 lines
2.3 KiB
C++
Raw Normal View History

#include "searchresultswidget.h"
#include "ui_searchresultswidget.h"
#include "functions.h"
#include <QMessageBox>
searchResultsWidget::searchResultsWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::searchResultsWidget)
{
ui->setupUi(this);
ui->listView->setStyleSheet("font-size: 10pt");
ui->backBtn->setProperty("type", "borderless");
ui->backBtn->setStyleSheet("font-size: 9pt; padding: 10px; font-weight: bold; background: lightGrey");
ui->openBtn->setProperty("type", "borderless");
ui->openBtn->setStyleSheet("font-size: 9pt; padding: 10px; font-weight: bold; background: lightGrey");
if(global::library::libraryResults == true) {
global::library::libraryResults = false;
libraryResults = true;
}
}
searchResultsWidget::~searchResultsWidget()
{
delete ui;
}
void searchResultsWidget::setListViewContents(QStringList searchResults) {
QStringListModel * model = new QStringListModel(this);
model->setStringList(searchResults);
ui->listView->setModel(model);
}
void searchResultsWidget::on_openBtn_clicked()
{
if(libraryResults == true) {
// Get currently selected row number
int selectedRow = ui->listView->currentIndex().row();
// So that row 0 becomes row 1
selectedRow = selectedRow++;
// TODO: Find book ID and pass it on to bookInfoDialog, then retrieve cover.jpg for display
global::keyboard::searchDialog = false;
global::keyboard::keyboardDialog = false;
2021-12-27 12:04:39 -08:00
bookInfoDialog * bookInfoDialogWindow = new bookInfoDialog();
bookInfoDialogWindow->setAttribute(Qt::WA_DeleteOnClose);
bookInfoDialogWindow->show();
}
else {
2021-12-27 12:04:39 -08:00
index = ui->listView->currentIndex();
itemText = index.data(Qt::DisplayRole).toString();
if(!itemText.isEmpty()) {
emit openBookFile(itemText, true);
global::keyboard::searchDialog = false;
global::keyboard::keyboardDialog = false;
searchResultsWidget::close();
}
else {
QMessageBox::critical(this, tr("Invalid argument"), tr("Please select a search result."));
}
}
}
void searchResultsWidget::on_backBtn_clicked()
{
global::forbidOpenSearchDialog = false;
searchResultsWidget::close();
}