From 78f628e0af2f2df562c40ac1424b432b6a969055 Mon Sep 17 00:00:00 2001 From: Tannin Date: Fri, 28 Nov 2014 11:06:28 +0100 Subject: cleanup und bugfixes after refactoring --- src/organizercore.h | 91 +++++++++++++++++++++++++++-------------------------- 1 file changed, 47 insertions(+), 44 deletions(-) (limited to 'src/organizercore.h') diff --git a/src/organizercore.h b/src/organizercore.h index b362a002..17b1d2dc 100644 --- a/src/organizercore.h +++ b/src/organizercore.h @@ -81,7 +81,7 @@ public: void setExecutablesDialog(const ExecutablesList &executablesList) { m_ExecutablesList = executablesList; } Profile *currentProfile() { return m_CurrentProfile; } - void setCurrentProfile(Profile *profile); + void setCurrentProfile(const QString &profileName); void setExecutablesList(const ExecutablesList &executablesList); @@ -95,7 +95,6 @@ public: bool isArchivesInit() const { return m_ArchivesInit; } bool saveCurrentLists(); - void savePluginList(); void prepareStart(); @@ -105,50 +104,45 @@ public: void refreshDirectoryStructure(); void updateModInDirectoryStructure(unsigned int index, ModInfo::Ptr modInfo); - void requestDownload(const QUrl &url, QNetworkReply *reply); - - void doAfterLogin(std::function &function) { m_PostLoginTasks.append(function); } + void doAfterLogin(std::function function) { m_PostLoginTasks.append(function); } void spawnBinary(const QFileInfo &binary, const QString &arguments = "", const QDir ¤tDirectory = QDir(), bool closeAfterStart = true, const QString &steamAppID = ""); + HANDLE spawnBinaryDirect(const QFileInfo &binary, const QString &arguments, const QString &profileName, const QDir ¤tDirectory, const QString &steamAppID); - void modStatusChanged(unsigned int index); - - void loginSuccessful(bool necessary); void loginSuccessfulUpdate(bool necessary); - void loginFailed(const QString &message); void loginFailedUpdate(const QString &message); public: - virtual MOBase::IGameInfo &gameInfo() const; - virtual MOBase::IModRepositoryBridge *createNexusBridge() const; - virtual QString profileName() const; - virtual QString profilePath() const; - virtual QString downloadsPath() const; - virtual MOBase::VersionInfo appVersion() const; - virtual MOBase::IModInterface *getMod(const QString &name); - virtual MOBase::IModInterface *createMod(MOBase::GuessedValue &name); - virtual bool removeMod(MOBase::IModInterface *mod); - virtual void modDataChanged(MOBase::IModInterface *mod); - virtual QVariant pluginSetting(const QString &pluginName, const QString &key) const; - virtual void setPluginSetting(const QString &pluginName, const QString &key, const QVariant &value); - virtual QVariant persistent(const QString &pluginName, const QString &key, const QVariant &def) const; - virtual void setPersistent(const QString &pluginName, const QString &key, const QVariant &value, bool sync); - virtual QString pluginDataPath() const; - virtual MOBase::IModInterface *installMod(const QString &fileName); - virtual QString resolvePath(const QString &fileName) const; - virtual QStringList listDirectories(const QString &directoryName) const; - virtual QStringList findFiles(const QString &path, const std::function &filter) const; - virtual QStringList getFileOrigins(const QString &fileName) const; - virtual QList findFileInfos(const QString &path, const std::function &filter) const; - virtual DownloadManager *downloadManager(); - virtual PluginList *pluginList(); - virtual ModList *modList(); - virtual HANDLE startApplication(const QString &executable, const QStringList &args, const QString &cwd, const QString &profile); - virtual bool waitForApplication(HANDLE handle, LPDWORD exitCode) const; - virtual bool onModInstalled(const std::function &func); - virtual bool onAboutToRun(const std::function &func); - virtual bool onFinishedRun(const std::function &func); - virtual void refreshModList(bool saveChanges = true); + MOBase::IGameInfo &gameInfo() const; + MOBase::IModRepositoryBridge *createNexusBridge() const; + QString profileName() const; + QString profilePath() const; + QString downloadsPath() const; + MOBase::VersionInfo appVersion() const; + MOBase::IModInterface *getMod(const QString &name); + MOBase::IModInterface *createMod(MOBase::GuessedValue &name); + bool removeMod(MOBase::IModInterface *mod); + void modDataChanged(MOBase::IModInterface *mod); + QVariant pluginSetting(const QString &pluginName, const QString &key) const; + void setPluginSetting(const QString &pluginName, const QString &key, const QVariant &value); + QVariant persistent(const QString &pluginName, const QString &key, const QVariant &def) const; + void setPersistent(const QString &pluginName, const QString &key, const QVariant &value, bool sync); + QString pluginDataPath() const; + MOBase::IModInterface *installMod(const QString &fileName); + QString resolvePath(const QString &fileName) const; + QStringList listDirectories(const QString &directoryName) const; + QStringList findFiles(const QString &path, const std::function &filter) const; + QStringList getFileOrigins(const QString &fileName) const; + QList findFileInfos(const QString &path, const std::function &filter) const; + DownloadManager *downloadManager(); + PluginList *pluginList(); + ModList *modList(); + HANDLE startApplication(const QString &executable, const QStringList &args, const QString &cwd, const QString &profile); + bool waitForProcessOrJob(HANDLE processHandle, LPDWORD exitCode = nullptr); + bool onModInstalled(const std::function &func); + bool onAboutToRun(const std::function &func); + bool onFinishedRun(const std::function &func); + void refreshModList(bool saveChanges = true); public: // IPluginDiagnose interface @@ -163,15 +157,25 @@ public slots: void profileRefresh(); void externalMessage(const QString &message); + void savePluginList(); + void refreshLists(); + void installDownload(int downloadIndex); + + void modStatusChanged(unsigned int index); + void requestDownload(const QUrl &url, QNetworkReply *reply); + void downloadRequestedNXM(const QString &url); + + bool nexusLogin(); + signals: /** * @brief emitted after a mod has been installed * @node this is currently only used for tutorials */ - void modInstalled(); + void modInstalled(const QString &modName); private: @@ -179,17 +183,16 @@ private: bool queryLogin(QString &username, QString &password); - bool nexusLogin(); - - HANDLE spawnBinaryDirect(const QFileInfo &binary, const QString &arguments, const QString &profileName, const QDir ¤tDirectory, const QString &steamAppID); void updateModActiveState(int index, bool active); private slots: void directory_refreshed(); - void downloadRequestedNXM(const QString &url); void downloadRequested(QNetworkReply *reply, int modID, const QString &fileName); void removeOrigin(const QString &name); + void downloadSpeed(const QString &serverName, int bytesPerSecond); + void loginSuccessful(bool necessary); + void loginFailed(const QString &message); private: -- cgit v1.3.1