CatalogueEventsWidget.h
71 lines
| 2.1 KiB
| text/x-c
|
CLexer
r1101 | #ifndef SCIQLOP_CATALOGUEEVENTSWIDGET_H | |||
#define SCIQLOP_CATALOGUEEVENTSWIDGET_H | ||||
r1095 | ||||
r1101 | #include <Common/spimpl.h> | |||
r1138 | #include <QLoggingCategory> | |||
r1095 | #include <QWidget> | |||
r1129 | class DBCatalogue; | |||
class DBEvent; | ||||
r1150 | class DBEventProduct; | |||
r1136 | class VisualizationWidget; | |||
r1293 | class VisualizationSelectionZoneItem; | |||
r1129 | ||||
r1095 | namespace Ui { | |||
class CatalogueEventsWidget; | ||||
} | ||||
r1138 | Q_DECLARE_LOGGING_CATEGORY(LOG_CatalogueEventsWidget) | |||
r1095 | class CatalogueEventsWidget : public QWidget { | |||
Q_OBJECT | ||||
r1103 | signals: | |||
r1143 | void eventsSelected(const QVector<std::shared_ptr<DBEvent> > &event); | |||
r1293 | void eventsRemoved(const QVector<std::shared_ptr<DBEvent> > &event); | |||
r1150 | void eventProductsSelected( | |||
const QVector<QPair<std::shared_ptr<DBEvent>, std::shared_ptr<DBEventProduct> > > | ||||
&eventproducts); | ||||
void selectionCleared(); | ||||
r1293 | void selectionZoneAdded(const std::shared_ptr<DBEvent> &event, const QString &productId, | |||
VisualizationSelectionZoneItem *selectionZone); | ||||
r1103 | ||||
r1313 | void eventCataloguesModified(const QVector<std::shared_ptr<DBCatalogue> > &catalogues); | |||
r1095 | public: | |||
explicit CatalogueEventsWidget(QWidget *parent = 0); | ||||
r1101 | virtual ~CatalogueEventsWidget(); | |||
r1095 | ||||
r1136 | void setVisualizationWidget(VisualizationWidget *visualization); | |||
r1231 | void addEvent(const std::shared_ptr<DBEvent> &event); | |||
r1148 | void setEventChanges(const std::shared_ptr<DBEvent> &event, bool hasChanges); | |||
r1231 | QVector<std::shared_ptr<DBCatalogue> > displayedCatalogues() const; | |||
bool isAllEventsDisplayed() const; | ||||
bool isEventDisplayed(const std::shared_ptr<DBEvent> &event) const; | ||||
r1293 | void refreshEvent(const std::shared_ptr<DBEvent> &event); | |||
r1103 | public slots: | |||
r1143 | void populateWithCatalogues(const QVector<std::shared_ptr<DBCatalogue> > &catalogues); | |||
r1160 | void populateWithAllEvents(); | |||
r1234 | void clear(); | |||
r1231 | void refresh(); | |||
r1103 | ||||
r1314 | // QWidget interface | |||
protected: | ||||
void keyPressEvent(QKeyEvent *event); | ||||
r1095 | private: | |||
Ui::CatalogueEventsWidget *ui; | ||||
r1101 | ||||
class CatalogueEventsWidgetPrivate; | ||||
spimpl::unique_impl_ptr<CatalogueEventsWidgetPrivate> impl; | ||||
r1245 | ||||
private slots: | ||||
void emitSelection(); | ||||
r1095 | }; | |||
r1101 | #endif // SCIQLOP_CATALOGUEEVENTSWIDGET_H | |||