69 lines
1.6 KiB
C++
Executable File
69 lines
1.6 KiB
C++
Executable File
#pragma once
|
|
|
|
#include "LoginWnd.h"
|
|
#include "WaitWnd.h"
|
|
#include "QueryThread.h"
|
|
|
|
#include <QWidget>
|
|
|
|
|
|
class QListWidgetItem;
|
|
class Query;
|
|
|
|
namespace Ui
|
|
{
|
|
class BrowserWnd;
|
|
}
|
|
|
|
|
|
class BrowserWnd: public QWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
BrowserWnd();
|
|
~BrowserWnd();
|
|
|
|
/** Must be called *after* the event loop was started, i.e. use QTimer::singleShot(). */
|
|
void startConnect();
|
|
|
|
private:
|
|
bool test();
|
|
void endThread();
|
|
|
|
void refreshTableList();
|
|
void selectQuery(QString queryString, Query *query, QString tableName);
|
|
void addNewQuery(const QString &tableName = QString());
|
|
|
|
LoginWnd *m_loginWnd{nullptr};
|
|
WaitWnd *m_waitWnd{nullptr};
|
|
Ui::BrowserWnd *m_ui{nullptr};
|
|
QueryWorker *m_queryWorker{nullptr};
|
|
QThread *m_queryThread{nullptr};
|
|
Query *m_waitingQueryWidget{nullptr};
|
|
int m_newQueryCounter{0};
|
|
|
|
private slots:
|
|
void slotFilterTableList(const QString &filter);
|
|
void slotFilterTableItemChanged(QListWidgetItem *item);
|
|
void slotConnectResult(const QString &);
|
|
void slotNewTableList(QStringList);
|
|
void slotHeart();
|
|
|
|
/*void slotSelectQueryResult(QString errorMsg, DataModel* dataModel);
|
|
void slotSelectQueryStatus(int percent);
|
|
void slotQueryQuery(QString); // when the query widget starts a query....*/
|
|
void slotTabCloseRequested(int);
|
|
/*void slotExecute(QString, QVariant, QModelIndex);
|
|
void slotExecuteQueryResult(bool success, QString msg, QVariant val, QModelIndex onThisPosition);*/
|
|
void slotAddNewQuery();
|
|
|
|
|
|
void slotShowWait(const QString &msg);
|
|
void slotHideWait();
|
|
|
|
signals:
|
|
void signalConnect(const LoginData &data);
|
|
void signalGetTableList();
|
|
};
|