PowerModeler/include/mainwindow.h

81 lines
2.3 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSqlError>
#include "global.h"
#include "messageDialog.h"
class DatabaseManager;
class DatabaseBrowser;
class ConnectionDialog;
class DBStructureView;
class DBStructureModel;
class ModelInfoEditDialog;
class GroupSelectionDialog;
class AttributeSelector;
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
void showMessageDialog(MessageDialogType,const QString&,const QString&);
void hideMessageDialog();
const QString getCurConnection();
protected:
bool eventFilter(QObject*, QEvent*) override;
void resizeEvent(QResizeEvent*) override;
private:
void initialize();
Ui::MainWindow *ui;
DatabaseManager* m_dbManager;
DatabaseBrowser* m_dbBrowser;
QSqlError m_lastSqlError;
MessageDialog* m_pMessageDialog;
ConnectionDialog* m_pConnectionDialog;
DBStructureView* m_pDBStrutureView;
DBStructureModel* m_pDBStrutureModel;
ModelInfoEditDialog* m_pModelInfoDialog;
GroupSelectionDialog* m_pGroupSelectionDialog;
AttributeSelector* m_pAttributeSelector;
private slots:
void onActionTrigger_connect();
void onActionTrigger_disconnect();
void onActionTrigger_addModel();
void onActionTrigger_updateModel(int);
void onActionTrigger_removeModel();
void onActionTrigger_refresh();
void onActionTrigger_addGroup(int);
void onSIG_addConnection(const DatabaseConfig&);
void onSIG_updateConnectionInfo(const DatabaseConfig&);
void onSIG_errorFromDBManger(const QString& strConnectionName, const QString& error);
void onSIG_errorFormSQLExecutor(const QString& error);
void onSIG_connectionStatusChanged(const QString& strConnectionName, bool bConnected);
void onSIG_addModel(Model&);
void onSIG_addGroups(int, QVector<int>);
void onSIG_updateModelNodeText(int, const QString&, const QString&);
void onSIG_updateModelGroups(int, const QVector<int>&, const QVector<int>&);
//void onSIG_addAttributes();
void onSIG_openAttributeInfo(const QString&, ModelAttributeGroup&);
void onSIG_closeAttributeInfo(ModelAttributeGroup&);
void onSIG_disconnect();
void onSIG_openAttributeSelector();
};
#endif // MAINWINDOW_H