#ifndef TABLESPAGE_H #define TABLESPAGE_H #include #include #include "NamespaceFilter.h" #include "plugin_support/PluginContentWidget.h" #include "plugin_support/PluginModule.h" class CatalogFunctionsPage; class CatalogSequencesPage; class CatalogTablesPage; class PgDatabaseCatalog; class QTabWidget; class CatalogInspector : public PluginContentWidget { Q_OBJECT public: explicit CatalogInspector(IPluginContentWidgetContext *context, QWidget *parent = nullptr); ~CatalogInspector(); void setCatalog(std::shared_ptr cat); void setNamespaceFilter(NamespaceFilter filter); private: QTabWidget *m_tabWidget = nullptr; CatalogTablesPage *m_tablesPage = nullptr; CatalogFunctionsPage *m_functionsPage = nullptr; CatalogSequencesPage *m_sequencesPage = nullptr; std::shared_ptr m_catalog; void retranslateUi(bool all = true); private slots: }; class CatalogInspectorModule: public PluginModule { Q_OBJECT public: using PluginModule::PluginModule; void init(); private slots: private: void moduleAction_open(IPluginContentWidgetContext* context, const ModuleActionParameters ¶ms); }; #endif // TABLESPAGE_H