void HandleAddinManagerExtensionChanged(object sender, ExtensionEventArgs args) { if (args.Path == "/MonoDevelop/Ide/SideBarTabs") { UpdateTabs(); } }
void OnExtensionChanged(object s, ExtensionEventArgs args) { if (args.PathChanged("/MonoDevelop/ProjectModel/ProjectServiceExtensions")) { defaultExtensionChain = null; } }
static void OnExtensionChanged(object sender, ExtensionEventArgs args) { if (args.PathChanged(extensionPath)) { UpdateExtensionObjects(); } }
void OnExtensionChanged(object sender, ExtensionEventArgs args) { if (args.PathChanged(ToolbarExtensionPath)) { RebuildToolbar(); } }
public void Context_ExtensionChanged(object sender, ExtensionEventArgs e) { if (e.ExtensionPoint.Equals(EXTENS_POINT)) { this.onExtensionChanged(); } }
private void OnExtensionChanged(object sender, ExtensionEventArgs e) { if (ExtensionChanged != null) { ExtensionChanged(sender, e); } }
private void OnExtensionChanged(ExtensionEventArgs args) { if (this._extensionChanged != null) { this._extensionChanged(this, args); } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ContextOnExtensionChanged(object sender, ExtensionEventArgs e) { if (e.GetState() == ExtensionEventArgs.LOAD) { if (e.GetExtensionData().Name == "WpfLeftMenu.TopMenuExtension") { LeftMenu.TopGroup.Items.Clear(); foreach (XmlNode xmlNode in e.GetExtensionData().ExtensionList) { foreach (XmlNode childNode in xmlNode.ChildNodes) { if (childNode.Attributes != null && childNode.Attributes["Name"] != null) { var item = new NavBarItem { Content = childNode.Attributes["Name"].Value }; item.Click += ItemOnClick; LeftMenu.TopGroup.Items.Add(item); } } } } } else if (e.GetState() == ExtensionEventArgs.UNLOAD) { if (e.GetExtensionData().Name == "WpfLeftMenu.TopMenuExtension") { LeftMenu.TopGroup.Items.Clear(); } } }
/// <summary> /// 触发扩展变更事件 /// </summary> /// <param name="bundle">引发的模块</param> /// <param name="extensionEventArgs">扩展事件参数</param> public void FireExtensionChanged(IBundle bundle, ExtensionEventArgs extensionEventArgs) { if (this.ExtensionChanged != null) { this.ExtensionChanged(bundle, extensionEventArgs); } }
private void _extensionManager_ExtensionChanged(object sender, ExtensionEventArgs e) { if (BundleRuntime.Instance.State != BundleRuntimeState.Starting && BundleRuntime.Instance.State != BundleRuntimeState.Started) { return; } if (e.Action == CollectionChangedAction.Add) { ExtensionChangeHandler extensionChangeBuilder; if (_extensionBuilders.TryGetValue(e.ExtensionPoint, out extensionChangeBuilder)) { extensionChangeBuilder.Builder.Build(e.Extension.Data, e.Extension.Owner); } } else if (e.Action == CollectionChangedAction.Remove) { ExtensionChangeHandler extensionChangeBuilder; if (_extensionBuilders.TryGetValue(e.ExtensionPoint, out extensionChangeBuilder)) { //Rebuild controls. extensionChangeBuilder.Builder.Reset(); LoadExistingExtensions(e.ExtensionPoint, extensionChangeBuilder); } } }
/// <summary> /// 发布扩展变化事件 /// </summary> /// <param name="action"></param> /// <param name="extension"></param> internal void PublishExtensionEvent(object sender, ExtensionEventArgs e) { if (this.ExtensionChanged != null) { this.ExtensionChanged.Invoke(sender, e); } }
static void OnExtensionsChanged(object sender, ExtensionEventArgs args) { if (args.Path == ProjectService.ProjectModelExtensionsPath) { LoadExtensions(); } }
/// <summary> /// 扩展变更处理。 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnNavigationExtensionChanged(object sender, ExtensionEventArgs e) { // 当插件框架停止时,忽略扩展变化 if (BundleRuntime.Instance.State == BundleRuntimeState.Stopping) { return; } if (e.ExtensionPoint.Equals(NavigationExtensionPoint)) { if (e.Action == CollectionChangedAction.Add) // 扩展XML信息增加,即插件启动。 { AddNavigationByExtension(e.Extension); HandlePendingAppendedNodes(); } else // 扩展XML信息删除,即插件停止。 { RemoveNavigationByExtension(e.Extension); } if (NavigationChanged != null) // 发出扩展变更事件。 { NavigationChanged(this, new NavigationChangedEventArgs { Action = CollectionChangedAction.Add, Bundle = e.Extension.Owner }); } } }
/// <summary> /// 触发Extension变更事件 /// </summary> /// <param name="extensionEvent">Extension事件参数</param> public void FireExtensionEvent(ExtensionEventArgs extensionEvent) { foreach (IExtensionListener listener in extensionListenerList) { listener.ExtensionChanged(extensionEvent); } }
void OnExtensionChanged(object s, ExtensionEventArgs args) { if (args.PathChanged("MonoDevelop/DesignerSupport/PropertyProviders")) { providers = null; ReSetPad(); } }
private void FireExtensionChanged(string extensionPoint, CollectionChangedAction action, Extension extension) { ExtensionEventArgs args = new ExtensionEventArgs(extensionPoint, this, action) { Extension = extension }; this.OnExtensionChanged(args); }
private static void AddToolbarItem(ExtensionEventArgs e, ToolStrip toolStrip, XmlNode xmlNode) { if (xmlNode.Name == "ToolbarItem") { //insert to default ToolBar ToolStripItem item = Parser.Build(xmlNode, e.Extension.Owner); toolStrip.Items.Add(item); } }
/// <summary> /// 功能区扩展变化处理逻辑 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnExtensionChanged(object sender, ExtensionEventArgs e) { if (e.Point.Equals("Word.Robin")) { if (ribbonAdmin != null) { ribbonAdmin.AddExtension(e.Extension); } } }
void OnExtensionChanged(object s, ExtensionEventArgs args) { string codonpath = Path; if (args.PathChanged(codonpath)) { BuildChildren(); pad.TreeView.UpdateBuilders(builders, options); } }
void extensionManager_ExtensionChanged(object sender, ExtensionEventArgs e) { if (e.Action == CollectionChangedAction.Add) { switch (e.ExtensionPoint) { case MainMenuExtensionPoint: var newItems = Parser.Build(e.Extension.Data, e.Extension.Owner); mainForm.MenuStrip.Items.AddRange(newItems.ToArray()); break; case ToolStripExtensionPoint: ToolStrip toolStrip = FindToolStrip(); foreach (var xmlNode in e.Extension.Data) { if (xmlNode.Name == "ToolStrip") { foreach (XmlNode toolbarItem in xmlNode.ChildNodes) { AddToolbarItem(e, toolStrip, toolbarItem); } } else if (xmlNode.Name == "ToolbarItem") { AddToolbarItem(e, toolStrip, xmlNode); } } break; case NavigationExtensionPoint: foreach (var xmlNode in e.Extension.Data) { mainForm.AddNavigation(new NavigationItem { Text = XmlUtility.ReadAttribute(xmlNode, "text") }); } break; default: //Ignore other extensionpoint. break; } } else if (e.Action == CollectionChangedAction.Remove) { //TODO: remove items. } }
void OnExtensionChanged(object o, ExtensionEventArgs args) { if (args.PathChanged("/TextEditor/ToolbarButtons")) { BuildToolbar(); } else if (args.PathChanged("/TextEditor/MainMenu") || args.PathChanged("/TextEditor/Templates")) { BuildMenu(); } }
void OnExtensionChangedHandler(object s, ExtensionEventArgs args) { eventCount++; if (expectedPathsEvent.Contains(args.Path)) { expectedPathsEvent.Remove(args.Path); } else { errorTag += "t4 (" + args.Path + ") "; } }
private void OnExtensionChanged(object sender, ExtensionEventArgs args) { var addinEngine = sender as AddinEngine; if (addinEngine != null && addinEngine.CurrentAddin.Id == ExtensionId) { var addins = AddinManager.Registry.GetAddins(); var isEnabled = addins.Any(a => a.LocalId == ExtensionId && a.Enabled); if (!isEnabled) { Log.Debug("FanArt extension is being disabled, performing cleanup"); OnDisabled(); } } }
private void BundleContextExtensionChanged(object sender, ExtensionEventArgs e) { if (e.ExtensionPoint.Equals(SimpleWinFormShellExtensionPoint)) { if (e.Action == CollectionChangedAction.Add) { // 新增扩展信息,说明有插件被启动,为其创建界面菜单 var app = ApplicationContainer.AddApplicationForExtension(e.Extension); CreateMenuStripForApplication(app); } else if (e.Action == CollectionChangedAction.Remove) { // 扩展信息被删除,有插件被停止,删除对应的界面菜单 var app = ApplicationContainer.RemoveApplicationForExtension(e.Extension); RemoveMenuStripForApplication(app); } } }
void TTSEngine_Event(object sender, ExtensionEventArgs args) { switch (args.EventType) { case "IndexReached": int?index = args.GetInvoker().GetPropertyInt("Index"); if (index.HasValue) { OnIndexReached(index.Value); } break; default: Log.Debug("TTSEngine raised unhandled event " + args.EventType); break; } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ContextOnExtensionChanged(object sender, ExtensionEventArgs e) { var stateStr = string.Empty; if (e.GetState() == ExtensionEventArgs.LOAD) { stateStr = "Load"; } else if (e.GetState() == ExtensionEventArgs.UNLOAD) { stateStr = "UnLoad"; } var extensionStr = new StringBuilder(); foreach (var xmlNode in e.GetExtensionData().ExtensionList) { extensionStr.Append(xmlNode.InnerXml); } log.Info(string.Format("{0} {1} {2} Extension {3}", ((IBundle)sender).GetSymbolicName(), stateStr, e.GetExtensionPoint().Name, extensionStr)); }
void TTSEngine_Event(object sender, ExtensionEventArgs args) { switch (args.EventType) { case "IndexReached": int? index = args.GetInvoker().GetPropertyInt("Index"); if (index.HasValue) { OnIndexReached(index.Value); } break; default: Log.Debug("TTSEngine raised unhandled event " + args.EventType); break; } }
static void OnExtensionChange(object s, ExtensionEventArgs args) { Console.WriteLine("Extension changed: " + args.Path); }
/// <summary> /// 初始化扩展信息 /// </summary> private void LoadExtensions() { log.Debug("扩展点加载开始!"); try { this.extensionPoints.Clear(); this.extensionDatas.Clear(); var extensionPointNames = BundleConfigProvider.GetBundleConfigExtensionPoints(this.manifestData); this.extensionPoints = extensionPointNames.Select(name => new ExtensionPoint() { Name = name, Owner = this }).ToList(); var extensionDataDic = BundleConfigProvider.GetBundleConfigExtensionDatas(this.manifestData); this.extensionDatas = extensionDataDic.Select(item => new ExtensionData() { Name = item.Key, Owner = this, ExtensionList = item.Value }).ToList(); //扩展已安装的Bundle的扩展点信息 foreach (IBundle bundle in this.framework.GetBundles()) { var bundlePoints = bundle.GetExtensionPoints(); foreach (ExtensionPoint extensionPoint in bundlePoints) { var extensionData = extensionDatas.FirstOrDefault(item => item.Name == extensionPoint.Name); if (extensionData != null) { log.Debug(string.Format("扩展点{0}加载!", extensionPoint.Name)); var eventArgs = new ExtensionEventArgs(ExtensionEventArgs.LOAD, extensionPoint, extensionData); var fireContext = (IContextFireEvent)bundle.GetBundleContext(); fireContext.FireExtensionChanged(this, eventArgs); var frameworkFireEvent = (IFrameworkFireEvent)framework; frameworkFireEvent.FireExtensionEvent(eventArgs); } } } //从已经安装的Bundle中发现扩展数据 foreach (ExtensionPoint extensionPoint in extensionPoints) { foreach (IBundle bundle in this.framework.GetBundles()) { var bundleExtensionDatas = bundle.GetExtensionDatas(); var extensionData = bundleExtensionDatas.FirstOrDefault(item => item.Name == extensionPoint.Name); if (extensionData != null) { log.Debug(string.Format("扩展点{0}加载!", extensionPoint.Name)); var eventArgs = new ExtensionEventArgs(ExtensionEventArgs.LOAD, extensionPoint, extensionData); var fireContext = (IContextFireEvent)this.GetBundleContext(); fireContext.FireExtensionChanged(bundle, eventArgs); var frameworkFireEvent = (IFrameworkFireEvent)framework; frameworkFireEvent.FireExtensionEvent(eventArgs); } } } } catch (Exception ex) { log.Error("加载Bundle扩展点配置信息出错!", ex); throw ex; } log.Debug("扩展点加载结束!"); }
private void Context_ExtensionChanged(object sender, ExtensionEventArgs e) { HandleBootstrapLayoutExtensions(e.ExtensionPoint); }
void ExtensionListener_g(object s, ExtensionEventArgs args) { counters[0].Update(args); }
public void Update(ExtensionEventArgs args) { eventCount++; }