pgLab/pglab/FunctionsPage.h
eelke c0a11f9b3b Functions page now shows sql for selected function.
The actual SQL needs some further checking.
2018-12-16 20:40:04 +01:00

41 lines
1,003 B
C++

#ifndef FUNCTIONSPAGE_H
#define FUNCTIONSPAGE_H
#include <QSplitter>
#include <memory>
#include <optional>
class QTableView;
class PgDatabaseCatalog;
class ProcTableModel;
class CustomFilterSortModel;
class QTabWidget;
class SqlCodePreview;
class PgProc;
class FunctionsPage : public QSplitter {
Q_OBJECT
public:
explicit FunctionsPage(QWidget *parent = nullptr);
void setCatalog(std::shared_ptr<const PgDatabaseCatalog> cat);
signals:
public slots:
void functionTable_currentRowChanged(const QModelIndex &current, const QModelIndex &previous);
private:
QTableView *m_functionTable = nullptr;
QTabWidget *m_detailTabs = nullptr;
SqlCodePreview *m_definitionView = nullptr;
ProcTableModel *m_model = nullptr;
CustomFilterSortModel *m_sortFilterProxy = nullptr;
std::shared_ptr<const PgDatabaseCatalog> m_catalog;
void retranslateUi();
void selectedProcChanged(const std::optional<PgProc> &proc);
void updateSqlTab(const std::optional<PgProc> &proc);
};
#endif // FUNCTIONSPAGE_H