##// END OF EJS Templates
Updates model after an event has been created through the colored zone
Updates model after an event has been created through the colored zone

File last commit:

r1262:99c1ba5e139b
r1262:99c1ba5e139b
Show More
CreateEventDialog.cpp
59 lines | 1.6 KiB | text/x-c | CppLexer
/ gui / src / Catalogue / CreateEventDialog.cpp
#include "Catalogue/CreateEventDialog.h"
#include "ui_CreateEventDialog.h"
#include <Catalogue/CatalogueController.h>
#include <SqpApplication.h>
#include <DBCatalogue.h>
struct CreateEventDialog::CreateEventDialogPrivate {
QVector<std::shared_ptr<DBCatalogue> > m_DisplayedCatalogues;
};
CreateEventDialog::CreateEventDialog(const QVector<std::shared_ptr<DBCatalogue> > &catalogues,
QWidget *parent)
: QDialog(parent),
ui(new Ui::CreateEventDialog),
impl{spimpl::make_unique_impl<CreateEventDialogPrivate>()}
{
ui->setupUi(this);
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept);
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject);
impl->m_DisplayedCatalogues = catalogues;
for (auto cat : impl->m_DisplayedCatalogues) {
ui->cbCatalogue->addItem(cat->getName());
}
}
CreateEventDialog::~CreateEventDialog()
{
delete ui;
}
void CreateEventDialog::hideCatalogueChoice()
{
ui->cbCatalogue->hide();
ui->lblCatalogue->hide();
}
QString CreateEventDialog::eventName() const
{
return ui->leEvent->text();
}
std::shared_ptr<DBCatalogue> CreateEventDialog::selectedCatalogue() const
{
auto catalogue = impl->m_DisplayedCatalogues.value(ui->cbCatalogue->currentIndex());
if (!catalogue || catalogue->getName() != catalogueName()) {
return nullptr;
}
return catalogue;
}
QString CreateEventDialog::catalogueName() const
{
return ui->cbCatalogue->currentText();
}