Permalink
Browse files
#5617 Revert "Remove plugin interface from Arch"
- Loading branch information...
|
|
@@ -50,6 +50,7 @@ |
|
|
# include "arch/win32/ArchSystemWindows.h"
|
|
|
# include "arch/win32/ArchTaskBarWindows.h"
|
|
|
# include "arch/win32/ArchTimeWindows.h"
|
|
|
+# include "arch/win32/ArchPluginWindows.h"
|
|
|
# include "arch/win32/ArchInternetWindows.h"
|
|
|
#elif SYSAPI_UNIX
|
|
|
# include "arch/unix/ArchConsoleUnix.h"
|
|
|
@@ -65,6 +66,7 @@ |
|
|
# include "arch/unix/ArchSystemUnix.h"
|
|
|
# include "arch/unix/ArchTaskBarXWindows.h"
|
|
|
# include "arch/unix/ArchTimeUnix.h"
|
|
|
+# include "arch/unix/ArchPluginUnix.h"
|
|
|
# include "arch/unix/ArchInternetUnix.h"
|
|
|
#endif
|
|
|
|
|
|
@@ -120,10 +122,12 @@ class Arch : public ARCH_CONSOLE, |
|
|
|
|
|
static void setInstance(Arch* s) { s_instance = s; }
|
|
|
|
|
|
+ ARCH_PLUGIN& plugin() const { return (ARCH_PLUGIN&)m_plugin; }
|
|
|
ARCH_INTERNET& internet() const { return (ARCH_INTERNET&)m_internet; }
|
|
|
|
|
|
private:
|
|
|
static Arch* s_instance;
|
|
|
+ ARCH_PLUGIN m_plugin;
|
|
|
ARCH_INTERNET m_internet;
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -63,6 +63,13 @@ class IArchFile : public IInterface { |
|
|
*/
|
|
|
virtual std::string getLogDirectory() = 0;
|
|
|
|
|
|
+ //! Get plugins directory
|
|
|
+ /*!
|
|
|
+ Returns the plugin files directory. If no plugin directory is set,
|
|
|
+ this will return the plugin folder within the user's profile.
|
|
|
+ */
|
|
|
+ virtual std::string getPluginDirectory() = 0;
|
|
|
+
|
|
|
//! Get user's profile directory
|
|
|
/*!
|
|
|
Returns the user's profile directory. If no profile directory is set,
|
|
|
@@ -88,4 +95,11 @@ class IArchFile : public IInterface { |
|
|
Returns the user's profile directory.
|
|
|
*/
|
|
|
virtual void setProfileDirectory(const String& s) = 0;
|
|
|
+
|
|
|
+ //@}
|
|
|
+ //! Set the user's plugin directory
|
|
|
+ /*
|
|
|
+ Returns the user's plugin directory.
|
|
|
+ */
|
|
|
+ virtual void setPluginDirectory(const String& s) = 0;
|
|
|
};
|
|
|
@@ -34,11 +34,14 @@ class ArchFileUnix : public IArchFile { |
|
|
virtual std::string getSystemDirectory();
|
|
|
virtual std::string getInstalledDirectory();
|
|
|
virtual std::string getLogDirectory();
|
|
|
+ virtual std::string getPluginDirectory();
|
|
|
virtual std::string getProfileDirectory();
|
|
|
virtual std::string concatPath(const std::string& prefix,
|
|
|
const std::string& suffix);
|
|
|
virtual void setProfileDirectory(const String& s);
|
|
|
+ virtual void setPluginDirectory(const String& s);
|
|
|
|
|
|
private:
|
|
|
String m_profileDirectory;
|
|
|
+ String m_pluginDirectory;
|
|
|
};
|
|
|
@@ -34,11 +34,14 @@ class ArchFileWindows : public IArchFile { |
|
|
virtual std::string getSystemDirectory();
|
|
|
virtual std::string getInstalledDirectory();
|
|
|
virtual std::string getLogDirectory();
|
|
|
+ virtual std::string getPluginDirectory();
|
|
|
virtual std::string getProfileDirectory();
|
|
|
virtual std::string concatPath(const std::string& prefix,
|
|
|
const std::string& suffix);
|
|
|
virtual void setProfileDirectory(const String& s);
|
|
|
+ virtual void setPluginDirectory(const String& s);
|
|
|
|
|
|
private:
|
|
|
String m_profileDirectory;
|
|
|
+ String m_pluginDirectory;
|
|
|
};
|
0 comments on commit
79fc623