/// <summary>Load utility add-ins</summary> public void LoadUtilityAddins() { Mono.Addins.ExtensionNodeList nodes = Mono.Addins.AddinManager.GetExtensionNodes(ExtensionPath.Utility); foreach (Mono.Addins.ExtensionNode node in nodes) { Mono.Addins.TypeExtensionNode typeNode = node as Mono.Addins.TypeExtensionNode; try { UtilityAddin utility = typeNode.CreateInstance() as UtilityAddin; LoadUtilityAddin(utility, typeNode.Id, typeNode.TypeName); } catch (Exception ex) { Log.Error("Couldn't create UtilityAddin: " + ex.Message); } } }
public List <IPreferencePageExtension> GetPreferenceAddins() { List <IPreferencePageExtension> pages = new List <IPreferencePageExtension>(); Mono.Addins.ExtensionNodeList nodes = Mono.Addins.AddinManager.GetExtensionNodes(ExtensionPath.PreferencePage); foreach (Mono.Addins.ExtensionNode node in nodes) { Mono.Addins.TypeExtensionNode typeNode = node as Mono.Addins.TypeExtensionNode; try { IPreferencePageExtension page = typeNode.CreateInstance() as IPreferencePageExtension; page.InitializePage(); page.Id = node.Id; pages.Add(page); } catch (Exception ex) { Log.Error("Couldn't create PreferencePage: " + ex.Message); } } return(pages); }
private void LoadEngine(TypeExtensionNode node) { LoadEngine ((PlayerEngine) node.CreateInstance (typeof (PlayerEngine))); }