public void TestExtModulesAcrossSerializing_part2()
        {
            var dataManager = new FileDataManager();

            Singleton.Add(dataManager);
            var     modulesManager = new PluginsManager();
            IAction testAction     = dataManager.Get <IAction>("testAction");

            Debug.WriteLine(testAction.GetValue(null));
            if (!testAction.GetType().Equals(modulesManager.GetModules().First()))
            {
                throw new Exception();
            }
        }
        public void InstallSeleniumPlugin_1_0()
        {
            //Arrange
            PluginsManager pluginsManager             = new PluginsManager(WorkSpace.Instance.SolutionRepository);
            ObservableList <OnlinePluginPackage> list = pluginsManager.GetOnlinePluginsIndex();
            OnlinePluginPackage        plugin         = (from x in list where x.Id == "SeleniumDriver" select x).SingleOrDefault();
            OnlinePluginPackageRelease release1_1     = (from x in plugin.Releases where x.Version == "1.0" select x).SingleOrDefault();

            // Act
            string folder = pluginsManager.InstallPluginPackage(plugin, release1_1);

            //Assert
            Assert.IsTrue(Directory.Exists(folder));
        }
Exemplo n.º 3
0
        private void Init()
        {
            IsNotSaved   = false;
            Profiles     = new List <Profile>();
            InputGroups  = new List <DeviceGroup>();
            OutputGroups = new List <DeviceGroup>();

            IOController         = new IOController();
            ProfilesManager      = new ProfilesManager(this, Profiles);
            DevicesManager       = new DevicesManager(this);
            DeviceGroupsManager  = new DeviceGroupsManager(this, InputGroups, OutputGroups);
            SubscriptionsManager = new SubscriptionsManager(this);
            PluginManager        = new PluginsManager(PluginPath);
        }
Exemplo n.º 4
0
        public void GetOnlinePluginReleases()
        {
            //Arrange
            PluginsManager pluginsManager = new PluginsManager();

            pluginsManager.Init(WorkSpace.Instance.SolutionRepository);
            ObservableList <OnlinePluginPackage> list = pluginsManager.GetOnlinePluginsIndex();
            OnlinePluginPackage PACT = (from x in list where x.Id == "PACT" select x).SingleOrDefault();

            // Act
            ObservableList <OnlinePluginPackageRelease> releases = PACT.Releases;

            //Assert
            Assert.IsTrue(releases.Count > 0, "list.Count > 0");
        }
Exemplo n.º 5
0
 private void btnLoadPlugin_Click(object sender, EventArgs e)
 {
     if (openFileDialog.ShowDialog() == DialogResult.Cancel)
     {
         return;
     }
     if (openFileDialog.FileName.EndsWith(".dll"))
     {
         PluginsManager.LoadPlugin(openFileDialog.FileName);
         comboBoxPlugin.DataSource = PluginsManager.GetPlugins();
     }
     else
     {
         MessageBox.Show("Plugin file should be .dll file");
     }
 }
Exemplo n.º 6
0
        public MainForm()
        {
            InitializeComponent();

            // inicializar sistema de logs

            Log.Init(Path.Combine(System.Windows.Forms.Application.UserAppDataPath,
                                  "Log " + DateTime.Now.ToString("dd-MM-yy") + ".txt"));

            plugins = new PluginsManager(this);
            usbKey  = new USBKey();

            // agregar referencias
            mainTabs1.ZeusWin           = this;
            mainLlamadosCarros1.ZeusWin = this;
            mainTree1.ZeusWin           = this;
        }
Exemplo n.º 7
0
        /// <summary>
        ///		Solicita las definiciones de proyectos
        /// </summary>
        public void RequestProjectDefinitions()
        {
            MessageRequestPlugin messageRequest = new MessageRequestPlugin();

            // Envía el mensaje
            HostMessenger.Send(new Message(SourceEditorViewModel.Instance.ModuleName,
                                           typeof(MessageRequestPlugin).ToString(), "Request",
                                           messageRequest));
            // Añade los plugins devueltos en el mensaje a la colección de plugins
            foreach (System.Collections.Generic.KeyValuePair <string, Model.Plugins.IPluginSourceEditor> objKey in messageRequest.Plugins)
            {
                if (!string.IsNullOrEmpty(objKey.Key))
                {
                    PluginsManager.Add(objKey.Key, objKey.Value);
                }
            }
        }
Exemplo n.º 8
0
 public void Stop()
 {
     Logger.Info("Shutting down HtcSharp...");
     PluginsManager.Call_OnDisable();
     IsStopped = false;
     foreach (var engine in _engines)
     {
         try {
             Logger.Info($"Stopping Engine: '{engine.GetType().Name}'");
             engine.Stop();
         } catch (Exception ex) {
             Logger.Error($"Failed to stop Engine: '{engine.GetType().Name}'", ex);
         }
     }
     _engines.Clear();
     _availableEngines.Clear();
 }
Exemplo n.º 9
0
        public void OpenSolution(string SolutionFolder)
        {
            mPluginsManager = null;
            //TODO: remove later since below init only RS2
            SolutionRepository.Open(SolutionFolder);

            // AutoLogProxy.Init("Ginger Test");  //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

            // ValueExpression.Solutionfolder = SolutionFolder;

            //if (UserProfile != null)
            //{
            //    UserProfile.AddsolutionToRecent(SolutionFolder);
            //    string UserProfileFileName = UserProfile.CreateUserProfileFileName();
            //    UserProfile.Save(UserProfileFileName);
            //}
        }
Exemplo n.º 10
0
        static void Main(string[] args)
        {
            PluginsManager pManager = PluginsManager.Instance;

            Console.WriteLine($"Current plugins count: {pManager.PluginCount}");
            Console.WriteLine($"HasType DataLoader? Answer: {pManager.HasType(PluginType.DataLoader)}");
            Console.WriteLine($"HasPlugin DataLoader? Answer: {pManager.HasType(PluginType.DataLoader)}");
            var config = new CsvFileConfiguration(@"C:\temp\config.txt");

            Console.WriteLine($"Loading plugin TestPlugin's configuration, result is: {pManager.LoadPluginConfiguration(PluginType.DataLoader, "TestPlugin",config)}");
            Console.WriteLine($"Running plugin TestPlugin, result is: {pManager.ExecutePlugin(PluginType.DataLoader, "TestPlugin")}");
            Console.WriteLine($"Printing current available plugins");
            foreach (var plugin in pManager.GetPlugins())
            {
                Console.WriteLine($"Name: {plugin.Name}, Description: {plugin.Description}, Version: {plugin.Version}, Type: {plugin.Type}");
            }
            Console.ReadKey();
        }
Exemplo n.º 11
0
        /// <summary>
        /// Gets the project.
        /// </summary>
        /// <returns></returns>
        public Project GetProject()
        {
            Project project = Data.ProjectsController.CreateEmptyProject(txtProjectName.Text, txtProjectDirectory.Text);

            SupportedPluginComponent item = (SupportedPluginComponent)cmbDatabaseType.SelectedItem;

            project.Type       = PluginsManager.GetDataBaseType(item);
            project.Controller = new Domain.ProjectController
            {
                Guid             = item.Guid,
                Plugin           = item.Type,
                ConnectionString = txtConnectionString.Text,
                Encrypt          = chkEncrypt.Checked
            };
            project.Description = txtProjectDescription.Text;

            return(project);
        }
Exemplo n.º 12
0
 static void Initialize()
 {
     try
     {
         Paths.Initialize();
         PluginsManager.LoadPlugins(DocumentManager.PluginHost);
         PluginsManager.InitializePlugins();
         Log.Initialize();
         Themes.LoadPresets();
         LanguageManager.InitializeLanguages();
         Schemes.LoadHighlighters();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
     //LanguageManager.SaveLanguage(Path.Combine(Paths.LanguagePath, "en-us.xml"));
 }
Exemplo n.º 13
0
        private void btnGenerateScript_Click(object sender, EventArgs e)
        {
            try
            {
                if (ValidateForm())
                {
                    string tableName = (string)cmbDatabaseEntity.SelectedItem;

                    DatabaseEntity entity;
                    if (!_entities.TryGetValue(tableName, out entity))
                    {
                        entity = PluginsManager.GetEntityInfoFromPlugin(Project.Controller, tableName);
                        _entities[tableName] = entity;
                    }

                    var component = (GeneratorComponent)cmbComponent.SelectedItem;

                    var code = ActiveTemplate.Generate(entity, component);

                    if (!string.IsNullOrWhiteSpace(code))
                    {
                        txtGeneratedCode.Text = code;

                        ProjectsController.SaveCodeToProject(ActiveTemplate, component, Project, tableName, code, txtFileName.Text);

                        OnControlUpdate?.Invoke(this, new EventArgs());

                        if (chkCopyToClipboard.Checked)
                        {
                            txtGeneratedCode.SelectAll();
                            txtGeneratedCode.Copy();

                            MessageBox.Show("Copied to Clipboard", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                }

                EnableButtons();
            }
            catch (Exception ex)
            {
                MessageBoxHelper.ProcessException(ex);
            }
        }
Exemplo n.º 14
0
        public static ApplicationContext Create()
        {
            // TODO: use simple injector
            var viewFactory = new Dictionary <Type, Func <IView> >();
            var formManager = new FormManager(viewFactory);

            var logger                      = new DefaultLogger();
            var gamePluginManager           = new PluginsManager <IGamePlugin>(logger);
            var clusterFactoryPluginManager = new PluginsManager <IClusterFactoryPlugin>(logger);
            var userNotifier                = new UserNotifier(formManager);
            var configurationRepository     = new ConfigurationRepository();
            var deviceManager               = new DeviceManager(clusterFactoryPluginManager, configurationRepository, userNotifier);
            var gameManager                 = new GameManager(gamePluginManager, configurationRepository);
            var applicationManager          = new ApplicationManager(gameManager, deviceManager);

            viewFactory.Add(typeof(IConfigurationView), () => new ConfigurationForm(new ConfigurationPresenter(gamePluginManager, clusterFactoryPluginManager, configurationRepository)));

            return(new TrayApplicationContext(formManager, applicationManager));
        }
Exemplo n.º 15
0
        private void xInstallButonn_Click(object sender, RoutedEventArgs e)
        {
            xProcessingImage.Visibility = Visibility.Visible;
            OnlinePluginPackageRelease release = (OnlinePluginPackageRelease)xVersionComboBox.SelectedItem;

            Task.Factory.StartNew(() =>
            {
                PluginsManager p = new PluginsManager(WorkSpace.Instance.SolutionRepository);
                OnlinePluginPackage onlinePluginPackage = (OnlinePluginPackage)xPluginsGrid.CurrentItem;
                p.InstallPluginPackage(onlinePluginPackage, release);
                onlinePluginPackage.Status = "Installed";
            }).ContinueWith((a) =>
            {
                Dispatcher.Invoke(() =>
                {
                    xProcessingImage.Visibility = Visibility.Collapsed;
                });
            });
        }
Exemplo n.º 16
0
        private void UpdateFileName()
        {
            if (ActiveTemplate != null && cmbDatabaseEntity.SelectedItem != null)
            {
                string entityItem = (string)cmbDatabaseEntity.SelectedItem;

                DatabaseEntity entity;
                if (!_entities.TryGetValue(entityItem, out entity))
                {
                    entity = PluginsManager.GetEntityInfoFromPlugin(Project.Controller, entityItem);
                    _entities[entityItem] = entity;
                }

                txtFileName.Text = ActiveTemplate.GenerateFileName(entity, (GeneratorComponent)cmbComponent.SelectedItem);
            }
            else
            {
                txtFileName.Text = string.Empty;
            }
        }
Exemplo n.º 17
0
 public void Initialize()
 {
     Singleton.Add(new PluginsDataManager());
     Singleton.Add(UsersRepository = new UsersRepository());
     UsersRepository.Initialize();
     Singleton.Add(ScenariosRepository = new ScenariosRepository());
     Singleton.Add(PluginsManager      = new PluginsManager());
     ScenariosRepository.Initialize();
     Singleton.Add(VisualSettingsRepository = new VisualSettingsRepository());
     Singleton.Add(new StatisticsManager());
     Singleton.Add(Server = new LazuriteServer());
     if (DataManager.Has(SettingsKey))
     {
         SetSettings(DataManager.Get <CoreSettings>(SettingsKey));
     }
     else
     {
         SetSettings(new CoreSettings());
     }
 }
Exemplo n.º 18
0
        private void Init()
        {
            IsNotSaved = false;
            Profiles   = new List <Profile>();

            try
            {
                IOController = new IOController();
            }
            catch (DirectoryNotFoundException e)
            {
                Logger.Error("IOWrapper provider directory not found", e);
            }

            ProfilesManager      = new ProfilesManager(this, Profiles);
            DevicesManager       = new DevicesManager(this);
            SubscriptionsManager = new SubscriptionsManager(this);
            PluginManager        = new PluginsManager(PluginPath);
            BindingManager       = new BindingManager(this);
        }
Exemplo n.º 19
0
        public NodesTree(VirtualControl host)
        {
            Style           = FindResource("NodesTree") as Style;
            _host           = host;
            _pluginsManager = new PluginsManager(host);
            Task.Factory.StartNew(() =>
            {
                Dispatcher.BeginInvoke(DispatcherPriority.Send, new Action(() =>
                {
                    var loadedNewNodes = _pluginsManager.LoadPlugins();
                    if (!loadedNewNodes)
                    {
                        return;
                    }
                    ClearAll();
                    BuildCategories();
                    BuildNodes();
                    RefreshBackUp();
                    Loaded += (o, e) =>
                    {
                        _tv = (TreeView)Template.FindName("Tv", this);
                        _tv.SelectedItemChanged += _tv_SelectedItemChanged;
                        _tb              = (TextBox)Template.FindName("SearchTextBox", this);
                        _tb.TextChanged += (s, ev) =>
                                           Filter(_tb.Text);
                        if (_tv.ItemsSource == null)
                        {
                            _tv.ItemsSource = Roots;
                        }
                        _tb.PreviewKeyDown   += OnPreviewKeyDown;
                        _tv.MouseDoubleClick += _tv_MouseDoubleClick;
                        ExpandAll();
                        _tb.Focus();
                    };
                }));
            });


            MouseLeave += (o, e) => Remove();
            Panel.SetZIndex(this, ZIndexes.NodesTreeIndex);
        }
Exemplo n.º 20
0
        public static void Main(string[] args)
        {
            var names = SerialPort.GetPortNames();

            var logger                = new DefaultLogger();
            var gamePluginsManager    = new PluginsManager <IGamePlugin>(logger);
            var clusterPluginsManager = new PluginsManager <ICluster>(logger);

            var gamePlugins    = gamePluginsManager.ReloadPlugins("Plugins");
            var clusterPlugins = clusterPluginsManager.ReloadPlugins("Plugins");
            var gamePlugin     = gamePlugins[1];

            cluster = clusterPlugins[0];
            //gamePlugin.GameStateChanged += PluginGameStateChanged;
            //gamePlugin.GameDataChanged += PluginGameDataChanged;

            // var connected = cluster.Connect(new ClusterConfiguration { PortName = "COM3" });

            Console.ReadKey();
            cluster.Dispose();
            //gamePlugin.Dispose();
        }
Exemplo n.º 21
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            try
            {
                pluginsManager = new PluginsManager();
                pluginsManager.LoadPlugins();

                ManageSettings();
                LoadUniversityPlugins();
                LoadGroupPlugins();
                LoadUniversityActionPlugins();
                LoadGroupActionPlugins();

                UI ui;
                ui.University = tvUniversity;
                taskManager   = new TaskManager(ui, pluginsManager);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
Exemplo n.º 22
0
        public async Task LoadSettingsTest()
        {
            var assmBuilder = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(Guid.NewGuid().ToString()),
                                                                    AssemblyBuilderAccess.RunAndCollect);

            var moduleBuilder = assmBuilder.DefineDynamicModule(Guid.NewGuid().ToString());

            var typeBuilder = moduleBuilder.DefineType("Plugin1", TypeAttributes.Public);

            typeBuilder.AddInterfaceImplementation(typeof(IPlugin <MockSettings1>));
            typeBuilder.SetParent(typeof(PluginMock <MockSettings1>));
            typeBuilder.CreateType();

            var assm = moduleBuilder.Assembly;

            var assmBuffer = new Lokad.ILPack.AssemblyGenerator().GenerateAssemblyBytes(assm);

            var conf = new MetadataSerializer().Deserialize <Configuration>("^plg1:\r\n  prop-two: 0.1\r\n  prp3:\r\n    - A\r\n    - B");

            conf.Plugins = new List <string>(new string[] { "plg1" });

            var mgr = new PluginsManager(conf, new Mock <IDocifyApplication>().Object);

            await mgr.LoadPlugins(new PluginInfoMock[]
            {
                new PluginInfoMock("plg1", new FileMock(Location.FromPath("mockplugins.dll"), assmBuffer))
            }.ToAsyncEnumerable());

            var res = mgr.GetType().GetField("m_Plugins", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(mgr) as IEnumerable <IPluginBase>;
            var plg = res.OfType <PluginMock <MockSettings1> >().FirstOrDefault();

            Assert.IsNotNull(plg);
            Assert.IsNotNull(plg.Settings);
            Assert.IsNotNull(plg.App);
            Assert.AreEqual("A", plg.Settings.Prp1);
            Assert.AreEqual(0.1, plg.Settings.PropTwo);
            Assert.That(new string[] { "A", "B" }.SequenceEqual(plg.Settings.Prp3));
        }
Exemplo n.º 23
0
        public void NoPluginFoundTest()
        {
            var assmBuilder1 = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(Guid.NewGuid().ToString()),
                                                                     AssemblyBuilderAccess.RunAndCollect);
            var moduleBuilder1 = assmBuilder1.DefineDynamicModule(Guid.NewGuid().ToString());

            var typeBuilder1 = moduleBuilder1.DefineType("Plugin1", TypeAttributes.Public);
            var p1           = typeBuilder1.CreateType();

            var assm1 = moduleBuilder1.Assembly;

            var assmBuffer1 = new Lokad.ILPack.AssemblyGenerator().GenerateAssemblyBytes(assm1);

            var mgr = new PluginsManager(new Configuration()
            {
                Plugins = new List <string>()
            }, new Mock <IDocifyApplication>().Object);

            Assert.ThrowsAsync <MissingPluginImplementationException>(() => mgr.LoadPlugins(new PluginInfoMock[]
            {
                new PluginInfoMock("plg1", new FileMock(Location.FromPath("Plugin1Mock.dll"), assmBuffer1))
            }.ToAsyncEnumerable()));
        }
Exemplo n.º 24
0
        public void CloseSolution()
        {
            //Do cleanup
            if (SolutionRepository != null)
            {
                PlugInsManager.CloseAllRunningPluginProcesses();
                CloseAllRunningAgents();
                CloseAllEnvironments();
                SolutionRepository.StopAllRepositoryFolderWatchers();
                if (!RunningInExecutionMode)
                {
                    AppSolutionAutoSave.SolutionAutoSaveEnd();
                }
            }

            //Reset values
            mPluginsManager    = new PluginsManager();
            SolutionRepository = null;
            SourceControl      = null;
            Solution           = null;

            EventHandler.SolutionClosed();
        }
Exemplo n.º 25
0
        private void FormMain_Load(object sender, EventArgs e)
        {
            _logger.Trace("FormMain.FormMain_Load()");

            try
            {
                LoadLocalVariables();
                UpdateWindowTitle();

                if (!PluginsManager.CheckIfPluginsAreLoaded())
                {
                    menuMain.Enabled = false;
                    toolStripStatusLabelMain.Text = "Checking plugins";
                    statusStripMain.Refresh();
                    workerCheckPlugins.RunWorkerAsync();
                }
            }
            catch (Exception ex)
            {
                _logger.Error(ex, ex.Message);
                MessageBoxHelper.ProcessException(ex);
            }
        }
Exemplo n.º 26
0
        public MainForm()
        {
            InitializeComponent();

            comboBoxPlugin.DataSource    = PluginsManager.GetPlugins();
            comboBoxPlugin.DisplayMember = "Name";

            Assembly SerializationAsm = Assembly.LoadFrom("Serialization_lib.dll");
            List <ControlInfoAttribute> Attributes = new List <ControlInfoAttribute>();

            foreach (Type t in SerializationAsm.GetTypes())
            {
                object[] attrs = t.GetCustomAttributes(typeof(ControlInfoAttribute), false);
                if (attrs.Length > 0)
                {
                    Attributes.Add((ControlInfoAttribute)attrs[0]);
                }
            }

            comboBoxType.DataSource    = Attributes;
            comboBoxType.DisplayMember = "Text";
            comboBoxType.ValueMember   = "type";

            Assembly    CRUDAsm = Assembly.LoadFrom("CRUD_lib.dll");
            List <Type> Types   = new List <Type>();

            foreach (Type t in CRUDAsm.GetTypes())
            {
                if (!t.IsAbstract && !t.IsSubclassOf(typeof(Attribute)) && !t.IsEnum)
                {
                    Types.Add(t);
                }
            }
            comboBox.DataSource    = Types;
            comboBox.DisplayMember = "Name";
            comboBox.SelectedItem  = comboBox.Items[0];
        }
Exemplo n.º 27
0
        private void cmbTemplate_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                if (cmbTemplate.SelectedItem != null)
                {
                    var item = (SupportedPluginComponent)cmbTemplate.SelectedItem;

                    ActiveTemplate = (IGeneratorTemplate)item.Item;

                    if (!ActiveTemplate.IsLoaded)
                    {
                        ActiveTemplate.Load(Project.Name);
                    }

                    cmbComponent.DataSource    = PluginsManager.GetComponents(item);
                    cmbComponent.DisplayMember = "Name";
                    cmbComponent.ValueMember   = "Id";

                    lnkTemplateOptions.Visible = PluginsManager.CheckIfPluginHaveOptions(item);

                    PluginsManager.UpdateProjectSettingsForPlugin(item, Project);
                }
                else
                {
                    ActiveTemplate             = null;
                    cmbComponent.DataSource    = null;
                    lnkTemplateOptions.Visible = false;
                }

                EnableButtons();
            }
            catch (Exception ex)
            {
                MessageBoxHelper.ProcessException(ex);
            }
        }
Exemplo n.º 28
0
        public void InstalledPluginPackageFromOnline()
        {
            //Arrange

            // TODO: create a simple plugin for unit test which will download faster.

            string PluginId      = "PACT";
            string PluginVersion = "1.6";
            string path          = TestResources.GetTestTempFolder(@"Solutions\PluginsManagerSR1");

            if (Directory.Exists(path))
            {
                Directory.Delete(path, true);
            }

            SolutionRepository solutionRepository = new SolutionRepository();

            solutionRepository.AddItemInfo <PluginPackage>("*.Ginger.PluginPackage.xml", @"~\Plugins", true, "Plugins", PropertyNameForFileName: nameof(PluginPackage.PluginId));
            solutionRepository.CreateRepository(path);
            solutionRepository.Open(path);

            PluginsManager pluginsManager = new PluginsManager(solutionRepository);
            ObservableList <PluginPackage> pluginPackages = solutionRepository.GetAllRepositoryItems <PluginPackage>();

            // Act
            var p = pluginsManager.GetOnlinePluginsIndex();
            OnlinePluginPackage onlinePluginPackage = (from x in p where x.Id == PluginId select x).SingleOrDefault();

            //OnlinePluginPackageRelease onlinePluginPackageRelease
            pluginsManager.InstallPluginPackage(onlinePluginPackage, onlinePluginPackage.Releases[0]);
            //string folder = Path.Combine(Common.GetTestResourcesFolder(), @"PluginPackages\SeleniumPluginPackage.1.0.0");


            //Assert
            Assert.AreEqual(1, pluginPackages.Count);
            Assert.AreEqual("PACT", pluginPackages[0].PluginId);
        }
Exemplo n.º 29
0
        // ===================================================================================
        // INTERNAL METHODS ------------------------------------------------------------------

        // CALLED BY DOTween when spawning/creating a new Tweener.
        // Returns TRUE if the setup is successful
        internal static bool Setup <T1, T2, TPlugOptions>(
            TweenerCore <T1, T2, TPlugOptions> t, DOGetter <T1> getter, DOSetter <T1> setter, T2 endValue, float duration, ABSTweenPlugin <T1, T2, TPlugOptions> plugin = null
            )
            where TPlugOptions : struct
        {
            if (plugin != null)
            {
                t.tweenPlugin = plugin;
            }
            else
            {
                if (t.tweenPlugin == null)
                {
                    t.tweenPlugin = PluginsManager.GetDefaultPlugin <T1, T2, TPlugOptions>();
                }
                if (t.tweenPlugin == null)
                {
                    // No suitable plugin found. Kill
                    Debugger.LogError("No suitable plugin found for this type");
                    return(false);
                }
            }

            t.getter   = getter;
            t.setter   = setter;
            t.endValue = endValue;
            t.duration = duration;
            // Defaults
            t.autoKill                 = DOTween.defaultAutoKill;
            t.isRecyclable             = DOTween.defaultRecyclable;
            t.easeType                 = DOTween.defaultEaseType; // Set to INTERNAL_Zero in case of 0 duration, but in DoStartup
            t.easeOvershootOrAmplitude = DOTween.defaultEaseOvershootOrAmplitude;
            t.easePeriod               = DOTween.defaultEasePeriod;
            t.loopType                 = DOTween.defaultLoopType;
            t.isPlaying                = DOTween.defaultAutoPlay == AutoPlay.All || DOTween.defaultAutoPlay == AutoPlay.AutoPlayTweeners;
            return(true);
        }
Exemplo n.º 30
0
        private void btnOpen_Click(object sender, EventArgs e)
        {
            if (openFileDialog.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }

            string FileName = openFileDialog.FileName;

            if (!FileName.EndsWith(".dat"))
            {
                var  plugins       = PluginsManager.GetPlugins();
                bool IsPluginExist = false;
                foreach (var plugin in plugins)
                {
                    if (FileName.EndsWith(plugin.Extension))
                    {
                        IsPluginExist = true;
                        FileName      = plugin.Decompress(new FileInfo(FileName));
                        break;
                    }
                }
                if (!IsPluginExist)
                {
                    MessageBox.Show("No plugin for this type of file");
                    return;
                }
            }

            ISerializer serializer = (ISerializer)Activator.CreateInstance((Type)comboBoxType.SelectedValue);

            using (FileStream fs = new FileStream(FileName, FileMode.OpenOrCreate))
            {
                SetUserCreatedObjs(serializer.Deserialize(fs));
            }
        }
Exemplo n.º 31
0
        /// <summary>
        /// Called before the main form is created.
        /// </summary>
        /// <returns><c>true</c> if the application should continue loading; otherwise, <c>false</c>.</returns>
        protected override bool OnBeforeCreateMainForm()
        {
            // We plug the mef composition here.
            var pluginsManager = new PluginsManager(
                Properties.Settings.Default.PluginsDirectories.Cast<string>());
            Globals.PluginsManager = pluginsManager;
            pluginsManager.Compose();

            return base.OnBeforeCreateMainForm();
        }