Files
pgadmin4/runtime/BrowserWindow.h
T

127 lines
3.0 KiB
C++
Raw Normal View History

//////////////////////////////////////////////////////////////////////////
//
// pgAdmin 4 - PostgreSQL Tools
//
2016-01-18 14:33:28 +00:00
// Copyright (C) 2013 - 2016, The pgAdmin Development Team
// This software is released under the PostgreSQL Licence
//
// BrowserWindow.h - Declaration of the main window class
//
//////////////////////////////////////////////////////////////////////////
#ifndef BROWSERWINDOW_H
#define BROWSERWINDOW_H
#include "pgAdmin4.h"
2016-01-18 14:33:28 +00:00
#include "TabWindow.h"
#include "WebViewWindow.h"
#if QT_VERSION >= 0x050000
#include <QtWidgets>
#if QT_VERSION >= 0x050500
#include <QtWebEngineWidgets>
#else
#include <QtWebKitWidgets>
#endif
#else
#include <QMainWindow>
#if QT_VERSION >= 0x050500
#include <QtWebEngineView>
#else
#include <QWebView>
#endif
#endif
QT_BEGIN_NAMESPACE
class QAction;
class QMenu;
QT_END_NAMESPACE
class BrowserWindow : public QMainWindow
{
Q_OBJECT
public:
BrowserWindow(QString url);
2013-10-04 10:08:18 -04:00
protected:
void closeEvent(QCloseEvent *event);
2013-06-22 00:49:40 +01:00
protected slots:
void finishLoading(bool);
2016-01-18 14:33:28 +00:00
void urlLinkClicked(const QUrl &);
void closetabs();
void tabTitleChanged(const QString &);
2013-06-22 00:49:40 +01:00
private slots:
void openUrl();
void preferences();
void about();
void zoomIn();
void zoomOut();
#if QT_VERSION >= 0x050500
void downloadRequested(QWebEngineDownloadItem *download);
#endif
2016-01-18 14:33:28 +00:00
public slots:
void tabIndexChanged(int index);
void goBackPage();
void goForwardPage();
void download(const QNetworkRequest &request);
void unsupportedContent(QNetworkReply * reply);
void downloadFinished();
void downloadFileProgress(qint64 , qint64 );
void progressCanceled();
void current_dir_path(const QString &dir);
#if QT_VERSION >= 0x050500
void createNewTabWindow(QWebEnginePage * &);
void downloadEngineFileProgress(qint64 , qint64 );
void downloadEngineFinished();
#endif
2016-01-18 14:33:28 +00:00
private:
QString m_appServerUrl;
2016-01-18 14:33:28 +00:00
WebViewWindow *m_mainWebView;
QShortcut *openUrlShortcut;
QShortcut *preferencesShortcut;
QShortcut *exitShortcut;
QShortcut *aboutShortcut;
QShortcut *zoomInShortcut;
QShortcut *zoomOutShortcut;
2016-01-18 14:33:28 +00:00
QGridLayout *m_tabGridLayout;
QGridLayout *m_mainGridLayout;
TabWindow *m_tabWidget;
QWidget *m_pgAdminMainTab;
QWidget *m_addNewTab;
QGridLayout *m_addNewGridLayout;
WebViewWindow *m_addNewWebView;
QHBoxLayout *m_horizontalLayout;
QWidget *m_widget;
QToolButton *m_toolBtnBack;
QToolButton *m_toolBtnForward;
bool m_initialLoad;
int m_loadAttempt;
QString m_downloadFilename;
int m_downloadStarted;
int m_downloadCancelled;
QFile *m_file;
QProgressDialog *m_progressDialog;
QString m_defaultFilename;
QString m_last_open_folder_path;
QString m_dir;
QNetworkReply *m_reply;
#if QT_VERSION >= 0x050500
QWebEngineDownloadItem *m_download;
#endif
2013-06-22 00:49:40 +01:00
void createActions();
2013-06-22 00:49:40 +01:00
void pause(int seconds = 1);
2016-01-18 14:33:28 +00:00
int findURLTab(const QUrl &name);
};
#endif // BROWSERWINDOW_H