#ifndef CRUDTAB_H #define CRUDTAB_H #include "catalog/PgClass.h" #include #include "plugin_support/PluginContentWidget.h" #include "plugin_support/PluginModule.h" #include #include namespace Ui { class CrudTab; } class OpenDatabase; class CrudModel; class CrudTab : public PluginContentWidget { Q_OBJECT public: explicit CrudTab(IPluginContentWidgetContext *context, QWidget *parent = nullptr); ~CrudTab() override; void setConfig(Oid oid); public slots: void refresh(); private: Ui::CrudTab *ui; std::shared_ptr m_db; std::optional m_table; CrudModel *m_crudModel = nullptr; std::vector actions; private slots: void on_actionRemove_rows_triggered(); void headerCustomContextMenu(const QPoint &pos); }; class CrudPageModule: public PluginModule { Q_OBJECT public: using PluginModule::PluginModule; void init(); private slots: private: void moduleAction_open(IPluginContentWidgetContext* context, const ModuleActionParameters ¶ms); }; #endif // CRUDTAB_H