Esempio n. 1
0
        private void ButtonSpecPluginClick(object sender, EventArgs e)
        {
            ButtonSpecHeaderGroup hg = sender as ButtonSpecHeaderGroup;
            DataPlugin            ip = hg.Tag as DataPlugin;

            if (ip != null)
            {
                this.ExecutePlugin(ip);
            }
        }
Esempio n. 2
0
        private void MenuPluginClick(object sender, EventArgs e)
        {
            KryptonContextMenuItem item = sender as KryptonContextMenuItem;
            DataPlugin             ip   = item.Tag as DataPlugin;

            if (item != null)
            {
                this.ExecutePlugin(ip);
            }
        }
        public void ImportData(DataPlugin plugin)
        {
            plugin.SetCurrentGuid(this.obj.ObjectClass.Identifier);
            foreach (string attr in plugin.GetNeededAttributes())
            {
                plugin.SetData(attr, this.GetFieldValue(attr));
            }

            plugin.Execute();
            foreach (string attr in plugin.GetChangedAttributes())
            {
                this.SetFieldValue(attr, plugin.GetData(attr));
            }
        }
Esempio n. 4
0
        public static void ActivatePlugins()
        {
            if (!File.Exists("PipelineSegments.store"))
            {
                Rebuild();
                return;
            }

            foreach (AddInToken addIn in AddInStore.FindAddIns(typeof(DataPlugin), PipelineStoreLocation.ApplicationBase))
            {
                AddInProcess process = new AddInProcess();
                process.KeepAlive = false;
                DataPlugin activeAddIn = addIn.Activate <DataPlugin>(process, AddInSecurityLevel.Host);
                plugins.Add(activeAddIn);
            }
        }
Esempio n. 5
0
        private void ExecutePlugin(DataPlugin plugin)
        {
            plugin.SetCurrentGuid(this.objectData.ObjectClass.Identifier);
            foreach (string attr in plugin.GetNeededAttributes())
            {
                plugin.SetData(attr, this.objectData.ConvertToString(attr, CultureInfo.InvariantCulture));
            }

            plugin.Execute();
            foreach (string attr in plugin.GetChangedAttributes())
            {
                this.objectData[attr] = this.objectData.ConvertFromString(attr, plugin.GetData(attr), CultureInfo.InvariantCulture);
            }

            this.database.Objects.Update(this.objectData);
            this.collection.UpdateCurrentData();
        }