#ifndef SQLCODEPREVIEW_H #define SQLCODEPREVIEW_H #include "PgDatabaseCatalog.h" #include #include class SqlSyntaxHighlighter; class PgDatabaseCatalog; class SqlCodePreview : public QPlainTextEdit { Q_OBJECT public: SqlCodePreview(QWidget *parent = nullptr); /** Sets the database catalog that the syntax highlighter is to use. */ void setCatalog(std::shared_ptr catalog); SqlSyntaxHighlighter *highlighter() { return m_highlighter; } private: SqlSyntaxHighlighter *m_highlighter = nullptr; std::shared_ptr m_catalog; private slots: void catalogRefresh(const PgDatabaseCatalog *catalog, PgDatabaseCatalog::RefreshFlags flags); }; #endif // SQLCODEPREVIEW_H