Пример #1
0
        public static bool LoadPlugin(string PluginPath)
        {
            bool     isSuccess;
            Assembly pluginAssembly;

            try
            {
                string path = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, PluginPath));
                pluginAssembly = Assembly.LoadFile(path);
                Plugin         = (AbstractPluginEntry)pluginAssembly.CreateInstance("LuaSTGEditorSharp.PluginEntry");
            }
            catch { return(false); }
            if (pluginAssembly == null)
            {
                if (Plugin == null)
                {
                    Plugin = new DefaultNullPlugin.DefaultPluginEntry();
                }
                Plugin.NodeTypeCache.Initialize(Assembly.GetExecutingAssembly());
                isSuccess = false;
            }
            else
            {
                Plugin.NodeTypeCache.Initialize(AppDomain.CurrentDomain.GetAssemblies());
                isSuccess = true;
            }
            EditorData.InputWindowSelector.Register(Plugin.GetInputWindowSelectorRegister());
            EditorData.InputWindowSelector.AfterRegister();
            return(isSuccess);
        }
        public static bool LoadPlugin(string PluginPath)
        {
            bool     isSuccess;
            Assembly pluginAssembly = null;

            try
            {
                string path = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, PluginPath));
                pluginAssembly = Assembly.LoadFile(path);
                Plugin         = (AbstractPluginEntry)pluginAssembly.CreateInstance("LuaSTGEditorSharp.PluginEntry");
            }
            catch { }
            if (Plugin == null)
            {
                Plugin = DefaultPlugin;
                Plugin.NodeTypeCache.Initialize(Assembly.GetExecutingAssembly());
                isSuccess = false;
            }
            else
            {
                Plugin.NodeTypeCache.Initialize(AppDomain.CurrentDomain.GetAssemblies());
                isSuccess = true;
            }
            return(isSuccess);
        }
Пример #3
0
        public static bool LoadPlugin(string PluginPath)
        {
            Assembly pluginAssembly = null;

            try
            {
                string path = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, PluginPath));
                pluginAssembly = Assembly.LoadFile(path);
                Plugin         = (AbstractPluginEntry)pluginAssembly.CreateInstance("LuaSTGEditorSharp.PluginEntry");
            }
            catch { }
            if (pluginAssembly == null)
            {
                if (Plugin == null)
                {
                    Plugin = new DefaultNullPlugin.DefaultPluginEntry();
                }
                Plugin.NodeTypeCache.Initialize(Assembly.GetExecutingAssembly());
                return(false);
            }
            else
            {
                Plugin.NodeTypeCache.Initialize(Assembly.GetExecutingAssembly(), pluginAssembly);
                return(true);
            }
        }