2018-01-09 20:39:43 +01:00
|
|
|
|
#ifndef CRUDTAB_H
|
2018-01-08 20:45:52 +01:00
|
|
|
|
#define CRUDTAB_H
|
|
|
|
|
|
|
2018-12-16 10:17:59 +01:00
|
|
|
|
#include "catalog/PgClass.h"
|
2018-01-08 20:45:52 +01:00
|
|
|
|
#include <QWidget>
|
2018-12-30 15:46:15 +01:00
|
|
|
|
#include "plugin_support/PluginContentWidget.h"
|
2018-01-09 20:39:43 +01:00
|
|
|
|
#include <memory>
|
2018-11-25 19:45:06 +01:00
|
|
|
|
#include <optional>
|
2018-01-08 20:45:52 +01:00
|
|
|
|
|
|
|
|
|
|
namespace Ui {
|
2018-01-09 20:39:43 +01:00
|
|
|
|
class CrudTab;
|
2018-01-08 20:45:52 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2018-01-09 20:39:43 +01:00
|
|
|
|
class OpenDatabase;
|
|
|
|
|
|
class CrudModel;
|
|
|
|
|
|
|
2018-12-29 18:59:54 +01:00
|
|
|
|
class CrudTab : public PluginContentWidget
|
2018-01-08 20:45:52 +01:00
|
|
|
|
{
|
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
2018-12-31 09:51:52 +01:00
|
|
|
|
explicit CrudTab(IPluginContentWidgetContext *context, QWidget *parent = nullptr);
|
2018-11-25 19:45:06 +01:00
|
|
|
|
~CrudTab() override;
|
2018-01-08 20:45:52 +01:00
|
|
|
|
|
2018-01-09 20:39:43 +01:00
|
|
|
|
void setConfig(std::shared_ptr<OpenDatabase> db, const PgClass &table);
|
|
|
|
|
|
|
2018-02-05 22:40:17 +01:00
|
|
|
|
void refresh();
|
2018-05-20 13:42:30 +02:00
|
|
|
|
|
|
|
|
|
|
virtual std::vector<QAction*> getToolbarActions() override;
|
2018-01-08 20:45:52 +01:00
|
|
|
|
private:
|
|
|
|
|
|
Ui::CrudTab *ui;
|
2018-01-09 20:39:43 +01:00
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<OpenDatabase> m_db;
|
2018-11-25 19:45:06 +01:00
|
|
|
|
std::optional<PgClass> m_table;
|
2018-01-09 20:39:43 +01:00
|
|
|
|
|
|
|
|
|
|
CrudModel *m_crudModel = nullptr;
|
2018-05-20 13:42:30 +02:00
|
|
|
|
std::vector<QAction*> actions;
|
2018-02-05 21:42:54 +01:00
|
|
|
|
|
|
|
|
|
|
private slots:
|
2018-04-08 09:02:22 +02:00
|
|
|
|
void on_actionRemove_rows_triggered();
|
2018-11-18 19:30:45 +01:00
|
|
|
|
void headerCustomContextMenu(const QPoint &pos);
|
2018-01-08 20:45:52 +01:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // CRUDTAB_H
|