diff options
| author | Tannin <Tannin@Miranda> | 2013-02-16 19:09:57 +0100 |
|---|---|---|
| committer | Tannin <Tannin@Miranda> | 2013-02-16 19:09:57 +0100 |
| commit | 5d1154c24e2475ed2b7ac248de27ab7b501a1e5e (patch) | |
| tree | 265341b9c8d057da46b56ad9fde40c9b39963ebb /src/nexusdialog.h | |
| parent | 44b96e6fb5f484e9a60fe03b99021a1c5f78488d (diff) | |
- hooks for CreateHardLink
- createprocess hook will now reroute the cwd (fixes SUM, may break other tools?)
- profile code moved to separate file
- executables can now be linked to toolbar
- category filters are now represented as a tree
- csv export of mod list
- ModInfoDialog is now "window modal" instead of "application modal"
- nexus dialog now updates the mod-id field while browsing
- right-click in nexus browser allows to open in external browser
- ini viewer is no longer modal
- bugfix: another attempt to fix processing of invalid header lines in fomod xmls (bom now handled)
- bugfix: integrated fomod installer will no longer overwrite detected mod name by the one from the xml
- bugfix: "hide file" from conflicted files list now updates that list
- bugfix: conflicted files list no longer offers to hide files in BSAs
- bugfix: pressing delete on the mod list with multiplie files selected offered to delete the wrong files
- regression: mod name guessing with the old regular expression was less likely to lead to an empty mod name. Now both are tried
Diffstat (limited to 'src/nexusdialog.h')
| -rw-r--r-- | src/nexusdialog.h | 283 |
1 files changed, 142 insertions, 141 deletions
diff --git a/src/nexusdialog.h b/src/nexusdialog.h index 041b5e7c..fbe99f3d 100644 --- a/src/nexusdialog.h +++ b/src/nexusdialog.h @@ -17,144 +17,145 @@ You should have received a copy of the GNU General Public License along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef NEXUSDIALOG_H
-#define NEXUSDIALOG_H
-
-#include "nexusview.h"
-#include "nxmaccessmanager.h"
-#include "tutorialcontrol.h"
-#include <QDialog>
-#include <QProgressBar>
-#include <QNetworkRequest>
-#include <QNetworkReply>
-#include <QTimer>
-#include <QWebView>
-#include <QQueue>
-#include <QTabWidget>
-#include <QAtomicInt>
-
-
-namespace Ui {
- class NexusDialog;
-}
-
-
-/**
- * @brief a dialog containing a webbrowser that is intended to browse the nexus network
- **/
-class NexusDialog : public QDialog
-{
- Q_OBJECT
-
-public:
-
- /**
- * @brief constructor
- *
- * @param accessManager the access manager to use for network requests
- * @param parent parent widget
- **/
- explicit NexusDialog(NXMAccessManager *accessManager, QWidget *parent = 0);
- ~NexusDialog();
-
- /**
- * @brief set the url to open. If automatic login is enabled, the url is opened after login
- *
- * @param url the url to open
- **/
- void openUrl(const QString &url);
-
- /**
- * @brief log-in to the nexus page.
- *
- * After successful login, loadNexus() is automatically called. If the user is already
- * logged in, this happens immediately
- *
- * @param username the user name to log in as
- * @param password the user password
- **/
- void login(const QString &username, const QString &password);
-
- /**
- * @brief load the page set with openUrl()
- **/
- void loadNexus();
-
-signals:
-
- /**
- * @brief emitted when the user caused a download
- *
- * @param reply the network-reply transmitting the file
- * @param modID mod id of the file requested
- * @param fileName suggested filename
- **/
- void requestDownload(QNetworkReply *reply, int modID, const QString &fileName);
-
- void loginSuccessful(bool necessary);
-
-protected:
-
- virtual void closeEvent(QCloseEvent *);
-
-private slots:
-
- void loginFailed(const QString &message);
- void loginFinished(bool necessary);
-// void loginError(QNetworkReply::NetworkError errorCode);
-// void loginTimeout();
-
- void initTab(NexusView *newView);
- void openInNewTab(const QUrl &url);
-
- void progress(int value);
-
- void titleChanged(const QString &title);
- void requestNXMDownload(const QString &url);
- void unsupportedContent(QNetworkReply *reply);
- void downloadRequested(const QNetworkRequest &request);
-
-
- void tabCloseRequested(int index);
-
-// void openByModID();
- void on_browserTabWidget_customContextMenuRequested(const QPoint &pos);
-
- void urlChanged(const QUrl &url);
-
- void on_backBtn_clicked();
-
- void on_fwdBtn_clicked();
-
- void on_modIDEdit_returnPressed();
-
- void on_searchEdit_returnPressed();
-
- void startSearch();
-
- void on_browserTabWidget_currentChanged(QWidget *arg1);
-
- void on_refreshBtn_clicked();
-
-private:
-
- QString guessFileName(const QString &url);
-
- NexusView *getCurrentView();
-
-private:
-
- Ui::NexusDialog *ui;
-
- TutorialControl m_Tutorial;
-
- QString m_Url;
-
- QTabWidget *m_Tabs;
- NexusView *m_View;
- QProgressBar *m_LoadProgress;
- NXMAccessManager *m_AccessManager;
-
-};
-
-#endif // NEXUSDIALOG_H
+#ifndef NEXUSDIALOG_H +#define NEXUSDIALOG_H + +#include "nexusview.h" +#include "nxmaccessmanager.h" +#include "tutorialcontrol.h" +#include <QDialog> +#include <QProgressBar> +#include <QNetworkRequest> +#include <QNetworkReply> +#include <QTimer> +#include <QWebView> +#include <QQueue> +#include <QTabWidget> +#include <QAtomicInt> + + +namespace Ui { + class NexusDialog; +} + + +/** + * @brief a dialog containing a webbrowser that is intended to browse the nexus network + **/ +class NexusDialog : public QDialog +{ + Q_OBJECT + +public: + + /** + * @brief constructor + * + * @param accessManager the access manager to use for network requests + * @param parent parent widget + **/ + explicit NexusDialog(NXMAccessManager *accessManager, QWidget *parent = 0); + ~NexusDialog(); + + /** + * @brief set the url to open. If automatic login is enabled, the url is opened after login + * + * @param url the url to open + **/ + void openUrl(const QString &url); + + /** + * @brief log-in to the nexus page. + * + * After successful login, loadNexus() is automatically called. If the user is already + * logged in, this happens immediately + * + * @param username the user name to log in as + * @param password the user password + **/ + void login(const QString &username, const QString &password); + + /** + * @brief load the page set with openUrl() + **/ + void loadNexus(); + +signals: + + /** + * @brief emitted when the user caused a download + * + * @param reply the network-reply transmitting the file + * @param modID mod id of the file requested + * @param fileName suggested filename + **/ + void requestDownload(QNetworkReply *reply, int modID, const QString &fileName); + + void loginSuccessful(bool necessary); + +protected: + + virtual void closeEvent(QCloseEvent *); + +private slots: + + void loginFailed(const QString &message); + void loginFinished(bool necessary); +// void loginError(QNetworkReply::NetworkError errorCode); +// void loginTimeout(); + + void initTab(NexusView *newView); + void openInNewTab(const QUrl &url); + + void progress(int value); + + void titleChanged(const QString &title); + void requestNXMDownload(const QString &url); + void unsupportedContent(QNetworkReply *reply); + void downloadRequested(const QNetworkRequest &request); + + + void tabCloseRequested(int index); + +// void openByModID(); + void on_browserTabWidget_customContextMenuRequested(const QPoint &pos); + + void urlChanged(const QUrl &url); + + void on_backBtn_clicked(); + + void on_fwdBtn_clicked(); + + void on_modIDEdit_returnPressed(); + + void on_searchEdit_returnPressed(); + + void startSearch(); + + void on_browserTabWidget_currentChanged(QWidget *arg1); + + void on_refreshBtn_clicked(); + +private: + + QString guessFileName(const QString &url); + + NexusView *getCurrentView(); + +private: + + Ui::NexusDialog *ui; + + TutorialControl m_Tutorial; + + QString m_Url; + QRegExp m_ModUrlExp; + + QTabWidget *m_Tabs; + NexusView *m_View; + QProgressBar *m_LoadProgress; + NXMAccessManager *m_AccessManager; + +}; + +#endif // NEXUSDIALOG_H |
