#include "Catalogue2/browser.h" #include "ui_browser.h" #include Browser::Browser(QWidget* parent) : QWidget(parent), ui(new Ui::Browser) { ui->setupUi(this); connect(ui->repositories, &RepositoriesTreeView::repositorySelected, this, &Browser::repositorySelected); connect(ui->repositories, &RepositoriesTreeView::catalogueSelected, this, &Browser::catalogueSelected); connect(ui->events, &EventsTreeView::eventSelected, this, &Browser::eventSelected); connect(ui->events, &EventsTreeView::productSelected, this, &Browser::productSelected); } Browser::~Browser() { delete ui; } void Browser::repositorySelected(const QString& repo) { this->ui->Infos->setCurrentIndex(0); this->ui->events->setEvents(sqpApp->catalogueController().events(repo)); // TODO add a statistic API this->ui->catalogues_count->setText( QString::number(sqpApp->catalogueController().catalogues(repo).size())); this->ui->rep_events_count->setText( QString::number(sqpApp->catalogueController().events(repo).size())); } void Browser::catalogueSelected(const CatalogueController::Catalogue_ptr& catalogue) { this->ui->Infos->setCurrentIndex(1); this->ui->events->setEvents(sqpApp->catalogueController().events(catalogue)); this->ui->cat_events_count->setText( QString::number(sqpApp->catalogueController().events(catalogue).size())); } void Browser::eventSelected(const CatalogueController::Event_ptr& event) { this->ui->Infos->setCurrentIndex(2); this->ui->Event->setEvent(event); } void Browser::productSelected(const CatalogueController::Product_t& product, const CatalogueController::Event_ptr& event) { this->ui->Infos->setCurrentIndex(2); this->ui->Event->setProduct(product,event); }